home *** CD-ROM | disk | FTP | other *** search
- import java.applet.Applet;
- import java.awt.Color;
- import java.awt.Component;
- import java.awt.Event;
- import java.awt.FontMetrics;
- import java.awt.Graphics;
- import java.awt.Image;
- import java.util.Vector;
-
- public class scroller extends Applet implements Runnable {
- private Thread engineThread;
- private Graphics offGraphics;
- private Image offImage;
- private boolean userPause;
- private boolean readyToPaint;
- private String lbl;
- private myFont font;
- private int speed;
- private int oldx = -5000;
- // $FF: renamed from: x2 int
- private int field_0;
- // $FF: renamed from: y int
- private int field_1;
- private int restart;
- private int number = -1;
- private int sleepTime;
- private int fred = 255;
- private int fblue;
- private int fgreen;
- private int bred;
- private int bblue;
- private int bgreen;
- private int downstart;
- private int downy = -10000;
- private int extrax = 10000;
- private Vector lines = new Vector();
- private int elemN;
- private int n_lines = -1;
- private boolean debug;
- private boolean firstTime = true;
- private String attr = new String();
- private boolean matched;
- private boolean unreg = true;
-
- public void stop() {
- if (this.engineThread != null && this.engineThread.isAlive()) {
- this.engineThread.stop();
- }
-
- this.engineThread = null;
- }
-
- private synchronized int stringUpdate(int var1) {
- this.dbg("oldx: " + var1 + " " + (0 - this.restart));
- if (var1 <= 0 - this.restart) {
- this.restart = 0;
- }
-
- return var1;
- }
-
- private synchronized void prePaint(Graphics var1) {
- var1.setColor(new Color(this.bred, this.bgreen, this.bblue));
- var1.fillRect(0, 0, ((Component)this).size().width, ((Component)this).size().height);
- var1.setFont(this.font);
- FontMetrics var2 = var1.getFontMetrics();
- int var3 = var2.stringWidth((String)this.lines.elementAt(this.elemN));
- this.restart = this.restart <= 0 - var3 ? var3 : this.restart;
- this.field_1 = ((Component)this).size().height / 2 + var2.getHeight() / 2;
- var1.setColor(new Color(this.fred, this.fgreen, this.fblue));
- if (this.number >= 0) {
- var1.drawString((String)this.lines.elementAt(this.number), this.field_0, this.field_1);
- this.field_0 -= this.speed;
- this.field_0 = this.stringUpdate(this.field_0);
- }
-
- var1.drawString((String)this.lines.elementAt(this.elemN), this.oldx, this.field_1);
- this.oldx -= this.speed;
- if (this.oldx + var3 < ((Component)this).size().width / 2) {
- this.field_0 = this.oldx;
- this.oldx = ((Component)this).size().width;
- this.number = this.elemN++;
- if (this.elemN > this.n_lines) {
- this.elemN = 0;
- }
-
- this.dbg("Element: " + this.elemN);
- }
-
- }
-
- public void paint(Graphics var1) {
- if (this.engineThread != null) {
- if (this.offGraphics != null) {
- this.prePaint(this.offGraphics);
- var1.drawImage(this.offImage, 0, 0, this);
- } else {
- this.prePaint(var1);
- }
- }
-
- }
-
- private void dbg(String var1) {
- if (this.debug) {
- System.out.println(var1);
- }
-
- }
-
- public void update(Graphics var1) {
- if (this.readyToPaint) {
- this.paint(var1);
- }
-
- }
-
- public void start() {
- if (this.engineThread == null) {
- this.engineThread = new Thread(this);
- }
-
- this.engineThread.start();
- }
-
- public String getAppletInfo() {
- return "Swami - scroller.class v1.0 Copyright Sausage SoftWare 1996";
- }
-
- public void run() {
- Thread.currentThread().setPriority(1);
- this.readyToPaint = true;
-
- while(true) {
- if (this.unreg) {
- ((Applet)this).getAppletContext().showStatus("Unregistered version. Copyright (c) Sausage Software 1996");
- }
-
- ((Component)this).repaint();
-
- try {
- Thread.sleep((long)this.sleepTime);
- } catch (Exception var1) {
- }
- }
- }
-
- public void init() {
- String var1 = ((Applet)this).getParameter("font");
- Object var2 = null;
- String var18 = myFont.getFontName(var1);
- this.dbg(var18);
- int var3 = 12;
- int var4 = 0;
- var1 = ((Applet)this).getParameter("fontsize");
- if (var1 != null) {
- var3 = Integer.parseInt(var1);
- }
-
- var1 = ((Applet)this).getParameter("style");
- var4 = myFont.getFontStyle(var1);
- this.font = new myFont(var18, var4, var3);
- int var5 = 1;
-
- while(true) {
- var1 = ((Applet)this).getParameter("line" + var5);
- if (var1 == null) {
- if (var5 == 1) {
- this.lines.addElement("No text specified");
- ++this.n_lines;
- }
-
- String var6 = ((Applet)this).getParameter("reguser");
- if (var6 == null) {
- ver.NotRegistered();
- }
-
- if (var6.toLowerCase().equals("unregistered")) {
- this.unreg = true;
- } else {
- this.unreg = false;
- }
-
- String var7 = ((Applet)this).getParameter("serialid");
- if (var7 == null) {
- ver.NotRegistered();
- }
-
- ver var8 = new ver(var6, var7);
- this.matched = var8.verifyUser(this.attr);
- if (!this.matched) {
- ver.NotRegistered();
- }
-
- var1 = ((Applet)this).getParameter("horizontal");
- this.speed = var1 == null ? 5 : Integer.valueOf(var1);
- var1 = ((Applet)this).getParameter("speed");
- if (var1 != null) {
- this.sleepTime = Integer.parseInt(var1);
- }
-
- var1 = ((Applet)this).getParameter("color");
- if (var1 != null) {
- createColor var9 = new createColor(var1, ",");
- var9.getColor();
- this.fred = var9.getRed();
- this.fgreen = var9.getGreen();
- this.fblue = var9.getBlue();
- }
-
- var1 = ((Applet)this).getParameter("background");
- if (var1 != null) {
- createColor var20 = new createColor(var1, ",");
- var20.getColor();
- this.bred = var20.getRed();
- this.bgreen = var20.getGreen();
- this.bblue = var20.getBlue();
- }
-
- try {
- this.offImage = ((Component)this).createImage(((Component)this).size().width, ((Component)this).size().height);
- this.offGraphics = this.offImage.getGraphics();
- } catch (Exception var10) {
- this.offGraphics = null;
- }
-
- this.oldx = ((Component)this).size().width;
- return;
- }
-
- this.lines.addElement(var1);
- ++var5;
- ++this.n_lines;
- this.attr = this.attr.concat(var1);
- }
- }
-
- public boolean handleEvent(Event var1) {
- if (var1.id == 501) {
- if (this.userPause) {
- this.engineThread.resume();
- } else {
- this.engineThread.suspend();
- }
-
- this.userPause = !this.userPause;
- } else if (var1.id == 201) {
- this.stop();
- System.exit(0);
- }
-
- return true;
- }
- }
-