protected void damageLineRange(int line0,int line1,Shape a,Component host){
  if (line1 < line0 || a == null) {
    return;
  }
  Rectangle abounds=a.getBounds();
  int rx=abounds.x;
  int ry=abounds.y + line0 * metrics.getHeight();
  int rw=abounds.width;
  int rh=(line1 - line0 + 1) * metrics.getHeight();
  host.repaint(rx,ry,rw,rh);
}

protected void damageLineRange ( int line0 , int line1 , Shape a , Component host ) { if ( line1 < line0 || a == null ) { return ; } Rectangle abounds = a . getBounds ( ) ; int rx = abounds . x ; int ry = abounds . y + line0 * metrics . getHeight ( ) ; int rw = abounds . width ; int rh = ( line1 - line0 + 1 ) * metrics . getHeight ( ) ; host . repaint ( rx , ry , rw , rh ) ; }
mark an ( inclusive ) line range as in need of repaint .
