154 |
decrButton.removeMouseListener(buttonListener); |
decrButton.removeMouseListener(buttonListener); |
155 |
incrButton = createIncreaseButton(scrollbar.getOrientation()); |
incrButton = createIncreaseButton(scrollbar.getOrientation()); |
156 |
decrButton = createDecreaseButton(scrollbar.getOrientation()); |
decrButton = createDecreaseButton(scrollbar.getOrientation()); |
157 |
incrButton.addMouseListener(buttonListener); |
incrButton.addMouseListener(buttonListener); |
158 |
decrButton.addMouseListener(buttonListener); |
decrButton.addMouseListener(buttonListener); |
159 |
calculatePreferredSize(); |
calculatePreferredSize(); |
160 |
layoutContainer(scrollbar); |
layoutContainer(scrollbar); |
161 |
} |
} |
162 |
layoutContainer(scrollbar); |
layoutContainer(scrollbar); |
163 |
scrollbar.repaint(); |
scrollbar.repaint(); |
231 |
// Only need to check it if it's block scrolling |
// Only need to check it if it's block scrolling |
232 |
// We only block scroll if the click occurs |
// We only block scroll if the click occurs |
233 |
// in the track. |
// in the track. |
234 |
if (! trackListener.shouldScroll(direction)) |
if (! trackListener.shouldScroll(direction)) |
235 |
{ |
{ |
236 |
trackHighlight = NO_HIGHLIGHT; |
trackHighlight = NO_HIGHLIGHT; |
237 |
scrollbar.repaint(); |
scrollbar.repaint(); |
273 |
currentMouseY = e.getY(); |
currentMouseY = e.getY(); |
274 |
if (scrollbar.getValueIsAdjusting()) |
if (scrollbar.getValueIsAdjusting()) |
275 |
{ |
{ |
276 |
int value; |
int value; |
277 |
if (scrollbar.getOrientation() == SwingConstants.HORIZONTAL) |
if (scrollbar.getOrientation() == SwingConstants.HORIZONTAL) |
278 |
value = valueForXPosition(currentMouseX) - offset; |
value = valueForXPosition(currentMouseX) - offset; |
279 |
else |
else |
280 |
value = valueForYPosition(currentMouseY) - offset; |
value = valueForYPosition(currentMouseY) - offset; |
281 |
|
|
282 |
scrollbar.setValue(value); |
scrollbar.setValue(value); |
283 |
} |
} |
284 |
} |
} |
285 |
|
|
356 |
scrollTimer.stop(); |
scrollTimer.stop(); |
357 |
|
|
358 |
if (scrollbar.getValueIsAdjusting()) |
if (scrollbar.getValueIsAdjusting()) |
359 |
scrollbar.setValueIsAdjusting(false); |
scrollbar.setValueIsAdjusting(false); |
360 |
scrollbar.repaint(); |
scrollbar.repaint(); |
361 |
} |
} |
362 |
|
|
372 |
{ |
{ |
373 |
int value; |
int value; |
374 |
if (scrollbar.getOrientation() == HORIZONTAL) |
if (scrollbar.getOrientation() == HORIZONTAL) |
375 |
value = valueForXPosition(currentMouseX); |
value = valueForXPosition(currentMouseX); |
376 |
else |
else |
377 |
value = valueForYPosition(currentMouseY); |
value = valueForYPosition(currentMouseY); |
378 |
|
|
379 |
if (direction == POSITIVE_SCROLL) |
if (direction == POSITIVE_SCROLL) |
380 |
return (value > scrollbar.getValue()); |
return (value > scrollbar.getValue()); |
381 |
else |
else |
382 |
return (value < scrollbar.getValue()); |
return (value < scrollbar.getValue()); |
383 |
} |
} |
384 |
} |
} |
385 |
|
|
518 |
: SwingConstants.SOUTH); |
: SwingConstants.SOUTH); |
519 |
else |
else |
520 |
{ |
{ |
521 |
if (orientation == SwingConstants.HORIZONTAL) |
if (orientation == SwingConstants.HORIZONTAL) |
522 |
((BasicArrowButton) incrButton).setDirection(SwingConstants.EAST); |
((BasicArrowButton) incrButton).setDirection(SwingConstants.EAST); |
523 |
else |
else |
524 |
((BasicArrowButton) incrButton).setDirection(SwingConstants.SOUTH); |
((BasicArrowButton) incrButton).setDirection(SwingConstants.SOUTH); |
525 |
} |
} |
526 |
return incrButton; |
return incrButton; |
527 |
} |
} |
542 |
: SwingConstants.NORTH); |
: SwingConstants.NORTH); |
543 |
else |
else |
544 |
{ |
{ |
545 |
if (orientation == SwingConstants.HORIZONTAL) |
if (orientation == SwingConstants.HORIZONTAL) |
546 |
((BasicArrowButton) decrButton).setDirection(SwingConstants.WEST); |
((BasicArrowButton) decrButton).setDirection(SwingConstants.WEST); |
547 |
else |
else |
548 |
((BasicArrowButton) decrButton).setDirection(SwingConstants.NORTH); |
((BasicArrowButton) decrButton).setDirection(SwingConstants.NORTH); |
549 |
} |
} |
550 |
return decrButton; |
return decrButton; |
551 |
} |
} |
725 |
// System.err.println(this + ".getThumbBounds()"); |
// System.err.println(this + ".getThumbBounds()"); |
726 |
if (max == min) |
if (max == min) |
727 |
{ |
{ |
728 |
thumbRect.x = trackRect.x; |
thumbRect.x = trackRect.x; |
729 |
thumbRect.y = trackRect.y; |
thumbRect.y = trackRect.y; |
730 |
if (scrollbar.getOrientation() == HORIZONTAL) |
if (scrollbar.getOrientation() == HORIZONTAL) |
731 |
{ |
{ |
732 |
thumbRect.width = getMinimumThumbSize().width; |
thumbRect.width = getMinimumThumbSize().width; |
733 |
thumbRect.height = trackRect.height; |
thumbRect.height = trackRect.height; |
734 |
} |
} |
735 |
else |
else |
736 |
{ |
{ |
737 |
thumbRect.width = trackRect.width; |
thumbRect.width = trackRect.width; |
738 |
thumbRect.height = getMinimumThumbSize().height; |
thumbRect.height = getMinimumThumbSize().height; |
739 |
} |
} |
740 |
return thumbRect; |
return thumbRect; |
741 |
} |
} |
742 |
|
|
743 |
if (scrollbar.getOrientation() == HORIZONTAL) |
if (scrollbar.getOrientation() == HORIZONTAL) |
752 |
else |
else |
753 |
{ |
{ |
754 |
thumbRect.x = trackRect.x; |
thumbRect.x = trackRect.x; |
755 |
thumbRect.y = trackRect.y + value * trackRect.height / (max - min); |
thumbRect.y = trackRect.y + value * trackRect.height / (max - min); |
756 |
|
|
757 |
thumbRect.width = trackRect.width; |
thumbRect.width = trackRect.width; |
758 |
thumbRect.height = extent * trackRect.height / (max - min); |
thumbRect.height = extent * trackRect.height / (max - min); |
874 |
configureScrollBarColors(); |
configureScrollBarColors(); |
875 |
|
|
876 |
calculatePreferredSize(); |
calculatePreferredSize(); |
877 |
layoutContainer(scrollbar); |
layoutContainer(scrollbar); |
878 |
} |
} |
879 |
} |
} |
880 |
|
|