void (final Graphics g) { if (myClipY != -1) { //noinspection GraphicsSetClipInspection g.setClip(0, 0, getWidth(), myClipY); } super.paintComponent(g); final Graphics2D g2d = (Graphics2D)g; Point pointTarget = SwingUtilities.convertPoint(myLayeredPane, myBalloon.myTargetPoint, this); Rectangle shapeBounds = myContent.getBounds(); if (!DrawUtil.isSimplifiedUI()) { int shadowSize = myBalloon.getShadowBorderSize(); if (shadowSize > 0 && myShadow == null && myShadowBorderProvider == null) { initComponentImage(pointTarget, shapeBounds); myShadow = ShadowBorderPainter.createShadow(myImage, 0, 0, false, shadowSize / 2); } if (myImage == null && myAlpha != -1) { initComponentImage(pointTarget, shapeBounds); } if (myImage != null && myAlpha != -1) { g2d.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, myAlpha)); } if (myShadowBorderProvider != null) { myShadowBorderProvider.paintShadow(this, g); } } if (myImage != null && myAlpha != -1) { paintShadow(g); StartupUiUtil.drawImage(g2d, myImage, 0, 0, null); } else { paintShadow(g); myBalloon.myPosition.paintComponent(myBalloon, shapeBounds, (Graphics2D)g, pointTarget); } }