home *** CD-ROM | disk | FTP | other *** search
- import java.awt.Color;
- import java.awt.Font;
- import java.awt.FontMetrics;
- import java.awt.Graphics;
- import java.util.StringTokenizer;
-
- class TickerArea extends ImageMapArea {
- String tickertext;
- Color tickercolor;
- Font tickerfont;
- int speed;
- int tickerx;
- int tickery;
- int tickerlen;
- long lasttick;
-
- public void handleArg(String var1) {
- StringTokenizer var2 = new StringTokenizer(var1, ",");
- this.tickertext = var2.nextToken();
- this.tickercolor = Color.black;
- this.speed = 100;
- String var3 = "TimesRoman";
- if (var2.hasMoreTokens()) {
- var3 = var2.nextToken();
- if (var2.hasMoreTokens()) {
- String var4 = var2.nextToken();
- if (var4.startsWith("#")) {
- var4 = var4.substring(1);
- }
-
- try {
- int var5 = Integer.parseInt(var4, 16);
- this.tickercolor = new Color(var5 >> 16 & 255, var5 >> 8 & 255, var5 & 255);
- } catch (Exception var8) {
- this.tickercolor = Color.black;
- }
-
- if (var2.hasMoreTokens()) {
- var4 = var2.nextToken();
-
- try {
- this.speed = Integer.parseInt(var4);
- } catch (Exception var7) {
- this.speed = 100;
- }
- }
- }
- }
-
- int var6 = super.H;
-
- FontMetrics var10;
- int var11;
- do {
- var11 = var6;
- this.tickerfont = new Font(var3, 0, var6);
- var10 = super.parent.getFontMetrics(this.tickerfont);
- var6 = var6 * 9 / 10;
- } while(var10.getHeight() > super.H && var11 > 0);
-
- this.tickerlen = var10.stringWidth(this.tickertext);
- this.tickery = var10.getAscent();
- }
-
- public void getMedia() {
- this.tickerx = 0;
- ((ImageMapArea)this).repaint();
- this.lasttick = System.currentTimeMillis();
- }
-
- public boolean animate() {
- long var1 = System.currentTimeMillis();
- this.tickerx = (int)((long)this.tickerx - (long)this.speed * (var1 - this.lasttick) / 1000L);
- if (this.tickerx > super.W || this.tickerx + this.tickerlen < 0) {
- this.tickerx = super.W;
- }
-
- ((ImageMapArea)this).repaint();
- this.lasttick = var1;
- return true;
- }
-
- public void highlight(Graphics var1) {
- var1.setColor(this.tickercolor);
- var1.setFont(this.tickerfont);
- var1.drawString(this.tickertext, super.X + this.tickerx, super.Y + this.tickery);
- }
- }
-