public static void drawString(JComponent c,Graphics g,String text,int x,int y){
  if (drawStringMethod != null) {
    try {
      drawStringMethod.invoke(null,c,g,text,Integer.valueOf(x),Integer.valueOf(y));
      return;
    }
 catch (    IllegalArgumentException e) {
    }
catch (    IllegalAccessException e) {
    }
catch (    InvocationTargetException e) {
    }
  }
  Graphics2D g2=(Graphics2D)g;
  Map<?,?> oldRenderingHints=installDesktopHints(g2);
  BasicGraphicsUtils.drawStringUnderlineCharAt(g,text,-1,x,y);
  if (oldRenderingHints != null) {
    g2.addRenderingHints(oldRenderingHints);
  }
}

public static void drawString ( JComponent c , Graphics g , String text , int x , int y ) { if ( drawStringMethod != null ) { try { drawStringMethod . invoke ( null , c , g , text , Integer . valueOf ( x ) , Integer . valueOf ( y ) ) ; return ; } catch ( IllegalArgumentException e ) { } catch ( IllegalAccessException e ) { } catch ( InvocationTargetException e ) { } } Graphics2D g2 = ( Graphics2D ) g ; Map < ? , ? > oldRenderingHints = installDesktopHints ( g2 ) ; BasicGraphicsUtils . drawStringUnderlineCharAt ( g , text , - 1 , x , y ) ; if ( oldRenderingHints != null ) { g2 . addRenderingHints ( oldRenderingHints ) ; } }
draws the string at the specified location underlining the specified character .
