void (Graphics g) { UISettings.setupAntialiasing(g); Shape clip = null; int width = getWidth(); int height = getHeight(); if (isOpaque()) { // paint background for expanded row g.setColor(getBackground()); g.fillRect(0, 0, width, height); } if (myDurationWidth > 0) { width -= myDurationWidth + myDurationLeftInset + myDurationRightInset; if (width > 0 && height > 0) { g.setColor(myDurationColor); g.setFont(RelativeFont.SMALL.derive(getFont())); g.drawString(myDurationText, width + myDurationLeftInset, getTextBaseLine(g.getFontMetrics(), height)); clip = g.getClip(); g.clipRect(0, 0, width, height); } } super.paintComponent(g); // restore clip area if needed if (clip != null) g.setClip(clip); }