diff options
Diffstat (limited to 'java/gjt/ComponentScroller.java')
-rw-r--r-- | java/gjt/ComponentScroller.java | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/java/gjt/ComponentScroller.java b/java/gjt/ComponentScroller.java new file mode 100644 index 00000000000..3aef71c4ea2 --- /dev/null +++ b/java/gjt/ComponentScroller.java @@ -0,0 +1,42 @@ +package gjt; + +import java.awt.*; + +/** + * Scrolls any component. Component to be scrolled may be a + * container, so ultimately many components may be scrolled + * at once.<p> + * + * Component to be scrolled may be specified at construction + * time, or may be set after construction via + * void setComponent(Component).<p> + * + * @version 1.0, Apr 1 1996 + * @author David Geary + * @see BulletinLayout + * @see Scroller + * @see ScrollerLayout + * @see ImageScroller + * @see gjt.test.ComponentScrollerTest + */ +public class ComponentScroller extends Scroller { + private Component scrollMe; + + public ComponentScroller() { + } + public ComponentScroller(Component component) { + setComponent(component); + } + public void setComponent(Component component) { + scrollMe = component; + viewport.setLayout(new BulletinLayout()); + viewport.add (scrollMe); + viewport.move (0,0); + } + public void scrollTo(int x, int y) { + scrollMe.move(-x,-y); + } + public Dimension getScrollAreaSize() { + return scrollMe.preferredSize(); + } +} |