home *** CD-ROM | disk | FTP | other *** search
- package java.awt;
-
- import java.awt.peer.ScrollbarPeer;
-
- public class Scrollbar extends Component {
- public static final int HORIZONTAL = 0;
- public static final int VERTICAL = 1;
- int value;
- int maximum;
- int minimum;
- int sVisible;
- int orientation;
- int lineIncrement;
- int pageIncrement;
-
- public Scrollbar() {
- this(1);
- }
-
- public Scrollbar(int orientation) {
- this.lineIncrement = 1;
- this.pageIncrement = 10;
- switch (orientation) {
- case 0:
- case 1:
- this.orientation = orientation;
- return;
- default:
- throw new IllegalArgumentException("illegal scrollbar orientation");
- }
- }
-
- public Scrollbar(int orientation, int value, int visible, int minimum, int maximum) {
- this(orientation);
- this.setValues(value, visible, minimum, maximum);
- }
-
- public synchronized void addNotify() {
- super.peer = ((Component)this).getToolkit().createScrollbar(this);
- super.addNotify();
- }
-
- public int getOrientation() {
- return this.orientation;
- }
-
- public int getValue() {
- return this.value;
- }
-
- public void setValue(int value) {
- if (value < this.minimum) {
- value = this.minimum;
- }
-
- if (value > this.maximum) {
- value = this.maximum;
- }
-
- if (value != this.value) {
- this.value = value;
- ScrollbarPeer peer = (ScrollbarPeer)super.peer;
- if (peer != null) {
- peer.setValue(value);
- }
- }
-
- }
-
- public int getMinimum() {
- return this.minimum;
- }
-
- public int getMaximum() {
- return this.maximum;
- }
-
- public int getVisible() {
- return this.sVisible;
- }
-
- public void setLineIncrement(int l) {
- this.lineIncrement = l;
- if (super.peer != null) {
- ((ScrollbarPeer)super.peer).setLineIncrement(l);
- }
-
- }
-
- public int getLineIncrement() {
- return this.lineIncrement;
- }
-
- public void setPageIncrement(int l) {
- this.pageIncrement = l;
- if (super.peer != null) {
- ((ScrollbarPeer)super.peer).setPageIncrement(l);
- }
-
- }
-
- public int getPageIncrement() {
- return this.pageIncrement;
- }
-
- public void setValues(int value, int visible, int minimum, int maximum) {
- if (maximum < minimum) {
- maximum = minimum;
- }
-
- if (value < minimum) {
- value = minimum;
- }
-
- if (value > maximum) {
- value = maximum;
- }
-
- this.value = value;
- this.sVisible = visible;
- this.minimum = minimum;
- this.maximum = maximum;
- ScrollbarPeer peer = (ScrollbarPeer)super.peer;
- if (peer != null) {
- peer.setValues(value, this.sVisible, minimum, maximum);
- }
-
- }
-
- protected String paramString() {
- return super.paramString() + ",val=" + this.value + ",vis=" + super.visible + ",min=" + this.minimum + ",max=" + this.maximum + (this.orientation == 1 ? ",vert" : ",horz");
- }
- }
-