void scrollHorizontal(int x){
  if (log.isLoggable(PlatformLogger.Level.FINE)) {
    log.fine("Scrolling horizontally by " + y);
  }
  int w=getListWidth();
  w-=((2 * SPACE) + (2 * MARGIN));
  int h=height - (SCROLLBAR_AREA + (2 * MARGIN));
  hsb.setValue(hsb.getValue() + x);
  int options=PAINT_ITEMS | PAINT_HSCROLL;
  Rectangle source=null;
  Point distance=null;
  if (x < 0) {
    source=new Rectangle(MARGIN + SPACE,MARGIN,w + x,h);
    distance=new Point(-x,0);
    options|=COPY_AREA;
  }
 else   if (x > 0) {
    source=new Rectangle(MARGIN + SPACE + x,MARGIN,w - x,h);
    distance=new Point(-x,0);
    options|=COPY_AREA;
  }
  repaint(vsb.getValue(),lastItemDisplayed(),options,source,distance);
}

void scrollHorizontal ( int x ) { if ( log . isLoggable ( PlatformLogger . Level . FINE ) ) { log . fine ( "Scrolling horizontally by " + y ) ; } int w = getListWidth ( ) ; w -= ( ( 2 * SPACE ) + ( 2 * MARGIN ) ) ; int h = height - ( SCROLLBAR_AREA + ( 2 * MARGIN ) ) ; hsb . setValue ( hsb . getValue ( ) + x ) ; int options = PAINT_ITEMS | PAINT_HSCROLL ; Rectangle source = null ; Point distance = null ; if ( x < 0 ) { source = new Rectangle ( MARGIN + SPACE , MARGIN , w + x , h ) ; distance = new Point ( - x , 0 ) ; options |= COPY_AREA ; } else if ( x > 0 ) { source = new Rectangle ( MARGIN + SPACE + x , MARGIN , w - x , h ) ; distance = new Point ( - x , 0 ) ; options |= COPY_AREA ; } repaint ( vsb . getValue ( ) , lastItemDisplayed ( ) , options , source , distance ) ; }
scrollhorizontal x is the number of pixels to scroll
