setMinimumSize( new Dimension( getMinimumSize().width, barExtent ));
setPreferredSize( new Dimension( getPreferredSize().width, barExtent ));
img1 = new BufferedImage( 1, barExtent, BufferedImage.TYPE_INT_ARGB );
img1.setRGB( 0, 0, 1, barExtent, pntBarGradientPixels, 0, 1 );
pntBackground = new TexturePaint( img1, new Rectangle( 0, 0, 1, barExtent ));
img2 = new BufferedImage( 1, markExtent, BufferedImage.TYPE_INT_ARGB );
img2.setRGB( 0, 0, 1, markExtent, pntMarkGradientPixels, 0, 1 );
pntMarkFlag = new TexturePaint( img2, new Rectangle( 0, 0, 1, markExtent ));
img3 = new BufferedImage( 1, markExtent, BufferedImage.TYPE_INT_ARGB );
img3.setRGB( 0, 0, 1, markExtent, pntMarkDragPixels, 0, 1 );
pntMarkFlagDrag = new TexturePaint( img3, new Rectangle( 0, 0, 1, markExtent ));
setOpaque( true );
// not necessary; it also kills the VK_TAB response of DocumentFrame!
// setFocusable( true );