public void drawG() {
    Graphics g = getGraphics();    // bypasses double buffering ?
    if (null != g) {
      draw( (Graphics2D) g);
      g.dispose();
    }
  }
public void drawG ( ) { Graphics g = getGraphics ( ) ; if ( null != g ) { draw ( ( Graphics2D ) g ) ; g . dispose ( ) ; } }
draw and drawG are like "paintImmediately()"