void (Point pointTarget, Rectangle shapeBounds) { if (myImage != null) return; myImage = UIUtil.createImage(component, getWidth(), getHeight(), BufferedImage.TYPE_INT_ARGB); useSafely(myImage.getGraphics(), imageGraphics -> { myBalloon.myPosition.paintComponent(myBalloon, shapeBounds, imageGraphics, pointTarget); paintChildrenImpl(imageGraphics); }); }