home *** CD-ROM | disk | FTP | other *** search
- import java.applet.Applet;
- import java.awt.Color;
- import java.awt.Component;
- import java.awt.Dimension;
- import java.awt.Event;
- import java.awt.Graphics;
- import java.awt.Image;
- import java.awt.MediaTracker;
- import java.net.MalformedURLException;
- import java.net.URL;
-
- public class tsilbg extends OCAviewerExtend implements Runnable {
- int g_old_menu;
- boolean g_ismousedown;
- Thread m_SlidingM = null;
- String last_s;
- boolean rep = false;
- URL goURL;
- // $FF: renamed from: d java.awt.Dimension
- Dimension field_0;
- Image off;
- Graphics g_off;
- int break_down;
- int break_stand;
- int break_hl;
- int break_switch;
- int draw_spec_hl = -1;
- int draw_spec_st = -1;
- int m_stay = -1;
- boolean tag;
- boolean first_run = true;
- boolean rendering_images = false;
- boolean mouse_in = false;
- private String[] m_cur_image_desturl;
- private String m_loadwhere = "_self";
- private String[] m_cur_image_loadwhere;
- private Color m_page_bgcolor;
- private boolean m_honimage_only;
- private boolean m_showsburls;
- private String m_onsbtext;
- private String m_offsbtext;
- private int m_bgx;
- private int m_bgy;
- boolean bg_loaded;
- private String m_bgimagefile;
- private String[] m_normfile;
- private String[] m_downfile;
- private String[] m_hl_file;
- private int[] m_pic_xcord;
- private int[] m_pic_ycord;
- int last_drawn;
- int num_images;
- int[] pic_width;
- int[] pic_height;
- Image bg_image;
- Image[] norm_pic;
- Image[] hl_pic;
- Image[] down_pic;
- boolean[] norm_stat;
- boolean[] hl_stat;
- boolean[] down_stat;
-
- public void stop() {
- if (this.m_SlidingM != null) {
- this.m_SlidingM.stop();
- this.m_SlidingM = null;
- }
-
- }
-
- public boolean mouseEnter(Event var1, int var2, int var3) {
- this.mouse_in = true;
- if (this.rendering_images) {
- this.setShowStatus("Loading Images...");
- } else {
- this.setShowStatus(this.m_onsbtext);
- }
-
- return true;
- }
-
- public void setShowStatus(String var1) {
- if (this.last_s != var1) {
- this.last_s = var1;
- ((OCAviewerExtend)this).showStatus(var1);
- }
-
- }
-
- public boolean mouseExit(Event var1, int var2, int var3) {
- this.mouse_in = false;
- if (this.last_drawn != -1) {
- if (!this.g_ismousedown) {
- this.last_drawn = -1;
- }
-
- this.paintIt();
- }
-
- if (this.rendering_images) {
- this.setShowStatus("Loading Images...");
- } else {
- this.setShowStatus(this.m_offsbtext);
- }
-
- return true;
- }
-
- public void paint(Graphics var1) {
- this.paintIt();
- }
-
- public Image trackReturn(String var1) {
- if (var1 == null) {
- return null;
- } else {
- ocgifix var2 = new ocgifix();
- Object var3 = null;
- MediaTracker var4 = new MediaTracker(this);
- if (!var1.equals("-1")) {
- Image var6 = ((Applet)this).getImage(((OCAviewerExtend)this).getDocumentBase(), var1);
- if (var6 != null) {
- var4.addImage(var6, 0);
-
- try {
- var4.waitForID(0);
- } catch (InterruptedException var5) {
- return null;
- }
-
- if (var4.isErrorID(0)) {
- System.out.println("Error Loading Image File:" + var1);
- return null;
- } else {
- var6 = var2.gifix(var6, var1);
- return var6;
- }
- } else {
- return null;
- }
- } else {
- return null;
- }
- }
- }
-
- public tsilbg() {
- this.m_page_bgcolor = Color.black;
- this.m_honimage_only = false;
- this.m_showsburls = true;
- this.m_onsbtext = "OpenCube - Switch Buttons (www.opencube.com)";
- this.m_offsbtext = "Java by OpenCube (www.opencube.com)";
- this.bg_loaded = false;
- this.last_drawn = -1;
- this.num_images = 0;
- }
-
- public boolean mouseUp(Event var1, int var2, int var3) {
- this.g_ismousedown = false;
- this.m_stay = -1;
- if (!this.mouse_in) {
- this.last_drawn = -1;
- this.paintIt();
- }
-
- if (var3 >= this.m_pic_ycord[this.last_drawn] && var3 <= this.m_pic_ycord[this.last_drawn] + this.pic_height[this.last_drawn] && var2 >= this.m_pic_xcord[this.last_drawn] && var2 <= this.m_pic_xcord[this.last_drawn] + this.pic_width[this.last_drawn]) {
- if (!this.m_cur_image_desturl[this.last_drawn].equals("-1")) {
- try {
- this.goURL = new URL(((OCAviewerExtend)this).getDocumentBase(), this.m_cur_image_desturl[this.last_drawn]);
- ((Applet)this).getAppletContext().showDocument(this.goURL, this.m_cur_image_loadwhere[this.last_drawn]);
- } catch (MalformedURLException var4) {
- return true;
- }
- }
-
- return true;
- } else {
- return true;
- }
- }
-
- public synchronized void paintIt() {
- this.DrawBG();
- if (this.tag) {
- if (this.bg_image != null) {
- this.g_off.drawImage(this.bg_image, this.m_bgx, this.m_bgy, this);
- }
-
- for(int var1 = 0; var1 < this.num_images; ++var1) {
- if (this.m_stay != var1 && this.last_drawn != var1 && this.norm_pic[var1] != null) {
- this.g_off.drawImage(this.norm_pic[var1], this.m_pic_xcord[var1], this.m_pic_ycord[var1], this);
- }
- }
-
- if (this.last_drawn > -1 && this.last_drawn != this.m_stay) {
- if (this.hl_stat[this.last_drawn]) {
- this.g_off.drawImage(this.hl_pic[this.last_drawn], this.m_pic_xcord[this.last_drawn], this.m_pic_ycord[this.last_drawn], this);
- } else {
- this.draw_spec_hl = this.last_drawn;
- if (this.norm_stat[this.last_drawn]) {
- this.g_off.drawImage(this.norm_pic[this.last_drawn], this.m_pic_xcord[this.last_drawn], this.m_pic_ycord[this.last_drawn], this);
- }
- }
- }
-
- if (this.m_stay > -1) {
- if (this.down_stat[this.m_stay]) {
- this.g_off.drawImage(this.down_pic[this.m_stay], this.m_pic_xcord[this.m_stay], this.m_pic_ycord[this.m_stay], this);
- } else {
- this.draw_spec_st = this.m_stay;
- if (this.norm_stat[this.m_stay]) {
- this.g_off.drawImage(this.norm_pic[this.m_stay], this.m_pic_xcord[this.m_stay], this.m_pic_ycord[this.m_stay], this);
- }
- }
- }
-
- ((Component)this).getGraphics().drawImage(this.off, 0, 0, this);
- }
- }
-
- public void SetLinkSB(int var1) {
- if (this.m_showsburls) {
- if (!this.m_cur_image_desturl[var1].equals("-1")) {
- this.setShowStatus(this.m_cur_image_desturl[var1]);
- return;
- }
-
- if (this.rendering_images) {
- this.setShowStatus("Loading Images...");
- return;
- }
-
- this.setShowStatus(this.m_onsbtext);
- }
-
- }
-
- public void FirstRun(Graphics var1) {
- this.setShowStatus("Loading Menu Images...");
-
- for(int var2 = this.break_stand; var2 < this.num_images; this.break_stand = var2++) {
- if ((this.norm_pic[var2] = this.trackReturn(this.m_normfile[var2])) != null) {
- this.norm_stat[var2] = true;
- this.pic_width[var2] = this.norm_pic[var2].getWidth(this);
- this.pic_height[var2] = this.norm_pic[var2].getHeight(this);
- this.paintIt();
- }
- }
-
- for(int var3 = this.break_hl; var3 < this.num_images; this.break_hl = var3++) {
- if ((this.hl_pic[var3] = this.trackReturn(this.m_hl_file[var3])) != null) {
- this.hl_stat[var3] = true;
- this.paintIt();
- } else {
- this.hl_pic[var3] = this.norm_pic[var3];
- }
- }
-
- for(int var4 = this.break_down; var4 < this.num_images; this.break_down = var4++) {
- if ((this.down_pic[var4] = this.trackReturn(this.m_downfile[var4])) != null) {
- this.down_stat[var4] = true;
- this.paintIt();
- } else {
- this.down_pic[var4] = this.hl_pic[var4];
- }
- }
-
- if (!this.bg_loaded && (this.bg_image = this.trackReturn(this.m_bgimagefile)) != null) {
- this.bg_loaded = true;
- this.paintIt();
- }
-
- if (this.mouse_in) {
- ((OCAviewerExtend)this).showStatus(this.m_onsbtext);
- } else {
- ((OCAviewerExtend)this).showStatus(this.m_offsbtext);
- }
-
- this.rendering_images = false;
- }
-
- public void DrawBG() {
- this.g_off.setColor(this.m_page_bgcolor);
- this.g_off.fillRect(0, 0, this.field_0.width, this.field_0.height);
- }
-
- public void start() {
- if (this.tag) {
- if (this.m_SlidingM == null) {
- this.m_SlidingM = new Thread(this);
- this.m_SlidingM.start();
- }
-
- }
- }
-
- public boolean mouseDown(Event var1, int var2, int var3) {
- this.g_ismousedown = true;
- if (this.last_drawn != -1 && !this.m_cur_image_desturl[this.last_drawn].equals("-1") && this.m_stay != this.last_drawn) {
- this.m_stay = this.last_drawn;
- this.paintIt();
- }
-
- return true;
- }
-
- public void run() {
- while(true) {
- if (this.first_run) {
- ((Component)this).setBackground(this.m_page_bgcolor);
- this.paintIt();
- this.FirstRun(((Component)this).getGraphics());
- this.first_run = false;
- }
-
- try {
- Thread.sleep(250L);
- } catch (InterruptedException var1) {
- }
- }
- }
-
- public void init() {
- String var1 = "3-State Image Buttons, Copyright (c) 1999, OpenCube Inc.";
- this.field_0 = ((Component)this).size();
- String var2 = "";
- int var3 = 0;
- boolean var4 = false;
- this.off = ((Component)this).createImage(this.field_0.width, this.field_0.height);
- this.g_off = this.off.getGraphics();
- var2 = ((OCAviewerExtend)this).getParameter("Notice");
- if (var2 == null) {
- this.m_onsbtext = "Missing 'Notice' Tag";
- this.tag = false;
- } else if (!var2.equalsIgnoreCase(var1)) {
- this.tag = false;
- this.m_onsbtext = "Invalid Copyright 'Notice' Tag";
- } else {
- this.tag = true;
- var2 = ((OCAviewerExtend)this).getParameter("showsblinks");
- if (var2 != null) {
- this.m_showsburls = Boolean.valueOf(var2);
- }
-
- var2 = ((OCAviewerExtend)this).getParameter("loadwhere");
- if (var2 != null) {
- this.m_loadwhere = var2;
- }
-
- var2 = ((OCAviewerExtend)this).getParameter("bgimagefile");
- if (var2 != null) {
- this.m_bgimagefile = var2;
- } else {
- this.m_bgimagefile = "-1";
- }
-
- var2 = ((OCAviewerExtend)this).getParameter("bgxy");
- if (var2 != null) {
- int[] var5 = occcord.getIntValues(var2, ",", 2);
- if (var5 != null) {
- this.m_bgx = var5[0];
- this.m_bgy = var5[1];
- }
- }
-
- var2 = ((OCAviewerExtend)this).getParameter("bgcolor");
- if (var2 != null) {
- this.m_page_bgcolor = occcolor.ConvertColor(var2);
- }
-
- while(((OCAviewerExtend)this).getParameter("imagefile" + var3) != null) {
- ++var3;
- ++this.num_images;
- }
-
- this.m_stay = -1;
- this.m_hl_file = new String[this.num_images];
- this.m_normfile = new String[this.num_images];
- this.m_downfile = new String[this.num_images];
- this.m_pic_xcord = new int[this.num_images];
- this.m_pic_ycord = new int[this.num_images];
- this.m_cur_image_desturl = new String[this.num_images];
- this.m_cur_image_loadwhere = new String[this.num_images];
- this.pic_width = new int[this.num_images];
- this.pic_height = new int[this.num_images];
- this.norm_pic = new Image[this.num_images];
- this.hl_pic = new Image[this.num_images];
- this.down_pic = new Image[this.num_images];
- this.norm_stat = new boolean[this.num_images];
- this.hl_stat = new boolean[this.num_images];
- this.down_stat = new boolean[this.num_images];
-
- for(int var18 = 0; var18 < this.num_images; ++var18) {
- var4 = false;
- var2 = ((OCAviewerExtend)this).getParameter("imagefile" + var18);
- if (var2 != null) {
- this.m_normfile[var18] = new String(var2);
- } else {
- this.m_normfile[var18] = "-1";
- }
-
- var2 = ((OCAviewerExtend)this).getParameter("clickfile" + var18);
- if (var2 != null) {
- this.m_downfile[var18] = new String(var2);
- } else {
- this.m_downfile[var18] = "-1";
- }
-
- var2 = ((OCAviewerExtend)this).getParameter("switchfile" + var18);
- if (var2 != null) {
- this.m_hl_file[var18] = new String(var2);
- } else {
- this.m_hl_file[var18] = "-1";
- }
-
- var2 = ((OCAviewerExtend)this).getParameter("imagexy" + var18);
- if (var2 != null) {
- int[] var20 = occcord.getIntValues(var2, ",", 2);
- if (var20 != null) {
- this.m_pic_xcord[var18] = var20[0];
- this.m_pic_ycord[var18] = var20[1];
- }
- } else {
- this.m_pic_xcord[var18] = 0;
- this.m_pic_ycord[var18] = 0;
- }
-
- var2 = ((OCAviewerExtend)this).getParameter("desturl" + var18);
- if (var2 != null) {
- this.m_cur_image_desturl[var18] = var2;
- } else {
- this.m_cur_image_desturl[var18] = "-1";
- }
-
- var2 = ((OCAviewerExtend)this).getParameter("loadwhere" + var18);
- if (var2 != null) {
- this.m_cur_image_loadwhere[var18] = var2;
- } else {
- this.m_cur_image_loadwhere[var18] = this.m_loadwhere;
- }
- }
-
- }
- }
-
- public boolean mouseDrag(Event var1, int var2, int var3) {
- if (this.last_drawn == -1) {
- return true;
- } else {
- this.g_old_menu = this.last_drawn;
- if (var3 >= this.m_pic_ycord[this.last_drawn] && var3 <= this.m_pic_ycord[this.last_drawn] + this.pic_height[this.last_drawn] && var2 >= this.m_pic_xcord[this.last_drawn] && var2 <= this.m_pic_xcord[this.last_drawn] + this.pic_width[this.last_drawn]) {
- if (this.g_ismousedown) {
- this.m_stay = this.g_old_menu;
- }
-
- this.paintIt();
- this.SetLinkSB(this.last_drawn);
- } else if (this.m_stay != -1) {
- this.m_stay = -1;
- this.paintIt();
- }
-
- return true;
- }
- }
-
- public boolean mouseMove(Event var1, int var2, int var3) {
- for(int var4 = 0; var4 < this.num_images; ++var4) {
- if (var3 > this.m_pic_ycord[var4] && var3 < this.m_pic_ycord[var4] + this.pic_height[var4] && var2 > this.m_pic_xcord[var4] && var2 < this.m_pic_xcord[var4] + this.pic_width[var4]) {
- if (var4 != this.last_drawn) {
- this.last_drawn = var4;
- this.paintIt();
- this.SetLinkSB(this.last_drawn);
- return true;
- }
-
- return true;
- }
- }
-
- if (this.last_drawn != -1) {
- this.last_drawn = -1;
- this.setShowStatus(this.m_onsbtext);
- this.paintIt();
- }
-
- return true;
- }
- }
-