home *** CD-ROM | disk | FTP | other *** search
- import java.applet.Applet;
- import java.awt.BorderLayout;
- import java.awt.Container;
- import java.awt.Dimension;
- import java.awt.Event;
- import java.awt.Graphics;
- import java.awt.Image;
- import java.awt.Scrollbar;
- import java.awt.Toolkit;
-
- public class ImageScroller extends Applet {
- Scrollbar vert;
- Scrollbar horz;
- ScrollableCanvas canvas;
- boolean inAnApplet = true;
- String imageFile = "../images/people.gif";
- Dimension imageSize = new Dimension(600, 320);
- Dimension preferredImageSize = new Dimension(300, 100);
-
- public void init() {
- Image var1;
- if (this.inAnApplet) {
- var1 = ((Applet)this).getImage(((Applet)this).getCodeBase(), this.imageFile);
- } else {
- var1 = Toolkit.getDefaultToolkit().getImage(this.imageFile);
- }
-
- this.canvas = new ScrollableCanvas(var1, this.preferredImageSize);
- this.horz = new Scrollbar(0);
- this.vert = new Scrollbar(1);
- ((Container)this).setLayout(new BorderLayout());
- ((Container)this).add("Center", this.canvas);
- ((Container)this).add("East", this.vert);
- ((Container)this).add("South", this.horz);
- ((Container)this).validate();
- this.resizeHorz();
- this.resizeVert();
- }
-
- public boolean handleEvent(Event var1) {
- switch (var1.id) {
- case 601:
- case 602:
- case 603:
- case 604:
- case 605:
- if (var1.target == this.vert) {
- this.canvas.ty = (Integer)var1.arg;
- this.canvas.repaint();
- }
-
- if (var1.target == this.horz) {
- this.canvas.tx = (Integer)var1.arg;
- this.canvas.repaint();
- }
- default:
- return super.handleEvent(var1);
- }
- }
-
- void resizeHorz() {
- int var1 = this.canvas.size().width;
- if (var1 <= 0) {
- System.out.println("Canvas has no width; can't resize scrollbar");
- } else {
- if (this.canvas.tx + var1 > this.imageSize.width) {
- int var2 = this.imageSize.width - var1;
- if (var2 < 0) {
- var2 = 0;
- }
-
- this.canvas.tx = var2;
- }
-
- this.horz.setValues(this.canvas.tx, (int)((double)var1 * 0.9), 0, this.imageSize.width - var1);
- this.horz.setPageIncrement((int)((double)var1 * 0.9));
- }
- }
-
- void resizeVert() {
- int var1 = this.canvas.size().height;
- if (var1 <= 0) {
- System.out.println("Canvas has no height; can't resize scrollbar");
- } else {
- if (this.canvas.ty + var1 > this.imageSize.height) {
- int var2 = this.imageSize.height - var1;
- if (var2 < 0) {
- var2 = 0;
- }
-
- this.canvas.ty = var2;
- }
-
- this.vert.setValues(this.canvas.ty, (int)((double)var1 * 0.9), 0, this.imageSize.height - var1);
- this.vert.setPageIncrement((int)((double)var1 * 0.9));
- }
- }
-
- public void paint(Graphics var1) {
- this.resizeHorz();
- this.resizeVert();
- }
- }
-