sclass SurfaceShowingAutoZoomedImage > JVolatileImageSurface { gettable BufferedImage image; *() { this(null); } *(BufferedImage image) { volatileMode(false); // seems it's not even faster setImage(image); } void setImage(BufferedImage image) { this.image = image; setRenderable(new FitImageInComponentRenderable(image) .backgroundColor(null)); repaint(); } void noImage() { setImage(null); } }