RangeSlider extension


I have been using VisAD for visualization apps and
I really like it.  For one situation I wanted
a RangeSlider that would only allow endpoints
from a range of tickmarked values, such as 1.
to 100. in steps of 3.0.

The most obvious way to do this involved a
small change to a private method in the current
source for RangeSlider.  In the main class I
  private float gripToValue(int pos, int width) {
    return (((maxLimit - minLimit) * ((float) (pos -
      (float) (width - (GRIP_WIDTH * 2))) + minLimit;

  private float gripToValue(int pos, int width) {
    return  adjustValue( (((maxLimit - minLimit) *
((float) (pos - GRIP_WIDTH))) /
      (float) (width - (GRIP_WIDTH * 2))) + minLimit
  public float adjustValue(float val) { return val ; }

And this allowed me to do what I need in a subclass.
But this means that I need to include the original 
RangeSlider source, and to maintain it if it changes
in future versions of VisAD.

Is there a better way to create the RangeSlider I
want that would not involve future code maintaince?
Or would it be possible to have this sort of change
incorporated into the standard distribution?


Do you Yahoo!?
Yahoo! SiteBuilder - Free, easy-to-use web site design software