home *** CD-ROM | disk | FTP | other *** search
- 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.Panel;
- import java.util.Vector;
-
- class OCbbar extends Panel {
- private Event the_e = null;
- Color bgColor;
- // $FF: renamed from: d java.awt.Dimension
- Dimension field_0;
- boolean first_run;
- boolean paint_called;
- // $FF: renamed from: ts java.awt.Image
- Image field_1;
- Graphics g_ts;
- // $FF: renamed from: mx int
- int field_2;
- // $FF: renamed from: my int
- int field_3;
- int last_down;
- int last_hl;
- private int[] b_x;
- private int[] b_y;
- private int bwidth;
- private int bheight;
- int lmargin;
- private int type;
- // $FF: renamed from: ia java.awt.Image[]
- private Image[] field_4;
- // $FF: renamed from: iu java.awt.Image[]
- private Image[] field_5;
- private String[] ifiles;
- private String[] unifiles;
- private String[] menuMap;
- private boolean[] isButton;
- private boolean[] takeFocus;
- private boolean[] active;
- private Vector dividers;
-
- public boolean mouseMove(Event var1, int var2, int var3) {
- this.checkMouseMove(var2, var3);
- return true;
- }
-
- private boolean mdown(int var1, int var2) {
- for(int var3 = 0; var3 < this.field_4.length; ++var3) {
- if (this.isButton[var3] && var1 > this.b_x[var3] && var1 < this.b_x[var3] + this.bwidth && var2 > this.b_y[var3] && var2 < this.b_y[var3] + this.bheight && this.active[var3]) {
- if (this.takeFocus[var3]) {
- ((Component)this).requestFocus();
- }
-
- this.last_down = var3;
- this.drawButton(var3, 0);
- this.paintIt();
- }
- }
-
- return true;
- }
-
- public boolean mouseExit(Event var1, int var2, int var3) {
- if (this.last_hl > -1) {
- this.drawButton(this.last_hl, 2);
- this.paintIt();
- this.last_hl = -1;
- }
-
- return true;
- }
-
- public OCbbar() {
- this.bgColor = ACutilb.windowColor;
- this.first_run = true;
- this.last_down = -1;
- this.last_hl = -1;
- this.lmargin = 2;
- this.type = 0;
- this.dividers = new Vector();
- ((Component)this).setBackground(ACutilb.windowColor);
- this.the_e = new Event(this, 900, this);
- this.resize(50, 50);
- }
-
- public void paint(Graphics var1) {
- this.paint_called = true;
- this.paintIt();
- }
-
- public void setbgColor(Color var1) {
- this.bgColor = var1;
- ((Component)this).setBackground(this.bgColor);
- this.paintIt();
- }
-
- public boolean mouseUp(Event var1, int var2, int var3) {
- for(int var4 = 0; var4 < this.field_4.length; ++var4) {
- if (this.isButton[var4] && var2 > this.b_x[var4] && var2 < this.b_x[var4] + this.bwidth && var3 > this.b_y[var4] && var3 < this.b_y[var4] + this.bheight && this.last_down == var4) {
- this.last_down = -1;
- this.drawButton(var4, 1);
- this.paintIt();
- this.takeAction(var4);
- return true;
- }
- }
-
- if (this.last_down > -1) {
- this.drawButton(this.last_down, 0);
- this.checkMouseMove(var2, var3);
- this.paintIt();
- this.last_down = -1;
- return true;
- } else {
- return true;
- }
- }
-
- private synchronized void paintIt() {
- try {
- if (this.paint_called) {
- Graphics var1 = ((Component)this).getGraphics();
- if (!this.first_run) {
- var1.drawImage(this.field_1, 0, 0, this);
- } else {
- ((Component)this).setBackground(this.bgColor);
- this.field_1 = ((Component)this).createImage(this.field_0.width, this.field_0.height);
- this.g_ts = this.field_1.getGraphics();
- this.g_ts.setColor(this.bgColor);
- this.g_ts.fillRect(0, 0, this.field_0.width, this.field_0.height);
- this.g_ts.setColor(Color.gray);
- this.g_ts.drawLine(0, 0, this.field_0.width, 0);
- this.g_ts.setColor(Color.white);
- this.g_ts.drawLine(0, 1, this.field_0.width, 1);
- this.g_ts.setColor(Color.gray);
- this.g_ts.drawLine(0, this.bheight + 5, this.field_0.width, this.bheight + 5);
- this.g_ts.setColor(Color.white);
- this.g_ts.drawLine(0, this.bheight + 6, this.field_0.width, this.bheight + 6);
- int var2 = 0;
-
- for(int var3 = 0; var3 < this.dividers.size(); ++var3) {
- var2 = Integer.parseInt((String)this.dividers.elementAt(var3));
- this.g_ts.setColor(Color.gray);
- this.g_ts.drawLine(var2, 3, var2, this.bheight + 3);
- this.g_ts.setColor(Color.white);
- this.g_ts.drawLine(var2 + 1, 3, var2 + 1, this.bheight + 3);
- }
-
- this.first_run = false;
- this.DrawButtons();
- }
- }
- } catch (Exception var4) {
- }
- }
-
- public void resize(Dimension var1) {
- if (var1.width * var1.height > 0) {
- this.reDrawButtons();
- super.resize(var1);
- }
- }
-
- public void resize(int var1, int var2) {
- if (var1 * var2 > 0) {
- this.field_0 = new Dimension(var1, var2);
- this.reDrawButtons();
- super.resize(var1, var2);
- }
- }
-
- private boolean takeAction(int var1) {
- this.the_e.id = 1001;
- this.the_e.arg = this.menuMap[var1];
- super.postEvent(this.the_e);
- return true;
- }
-
- public void setButtons(String[] var1, String[] var2, String[] var3, boolean[] var4, boolean[] var5, int var6, int var7) {
- this.bwidth = var6;
- this.bheight = var7;
- this.ifiles = var1;
- this.menuMap = var3;
- this.takeFocus = var4;
- this.active = var5;
- this.unifiles = var2;
- this.field_4 = new Image[this.ifiles.length];
- this.field_5 = new Image[this.ifiles.length];
- this.b_x = new int[this.ifiles.length];
- this.b_y = new int[this.ifiles.length];
- this.isButton = new boolean[this.ifiles.length];
- int var8 = 2;
-
- for(int var9 = 0; var9 < this.field_4.length; ++var9) {
- if (this.ifiles[var9].equals("-")) {
- this.b_x[var9] = var8 + 2;
- var8 += 9;
- this.dividers.addElement((new Integer(this.b_x[var9])).toString());
- this.isButton[var9] = false;
- } else {
- this.b_x[var9] = var8;
- var8 = var8 + this.bwidth + 4;
- this.isButton[var9] = true;
- }
-
- this.b_y[var9] = 3;
- }
-
- this.loadImages();
- }
-
- private void loadImages() {
- ACutil var1 = new ACutil();
-
- for(int var2 = 0; var2 < this.field_4.length; ++var2) {
- if (this.isButton[var2]) {
- this.field_4[var2] = var1.getImage(this.ifiles[var2]);
- this.field_5[var2] = var1.getImage(this.unifiles[var2]);
- if (this.field_5[var2] == null) {
- this.field_5[var2] = this.field_4[var2];
- }
- } else {
- this.field_4[var2] = null;
- }
- }
-
- }
-
- private void drawButton(int var1, int var2) {
- if (!this.first_run) {
- int var3 = this.b_x[var1];
- int var4 = this.b_y[var1];
- int var5 = this.bwidth;
- int var6 = this.bheight;
- this.g_ts.setColor(ACutilb.windowColor);
- this.g_ts.fillRect(var3 - 1, var4 - 1, var5 + 2, var6 + 2);
- if (var2 == 2) {
- if (this.field_4[var1] != null) {
- if (this.active[var1]) {
- this.g_ts.drawImage(this.field_4[var1], var3 + 1, var4 + 1, this);
- return;
- }
-
- this.g_ts.drawImage(this.field_5[var1], var3 + 1, var4 + 1, this);
- }
-
- } else {
- if (var2 == 1) {
- this.g_ts.setColor(Color.gray);
- this.g_ts.drawRect(var3, var4, var5, var6);
- this.g_ts.setColor(Color.white);
- this.g_ts.drawLine(var3, var4, var3 + var5, var4);
- this.g_ts.drawLine(var3, var4, var3, var4 + var6);
- if (this.field_4[var1] != null) {
- this.g_ts.drawImage(this.field_4[var1], var3 + 1, var4 + 1, this);
- return;
- }
- } else {
- this.g_ts.setColor(Color.gray);
- this.g_ts.drawRect(var3, var4, var5, var6);
- this.g_ts.setColor(Color.white);
- this.g_ts.drawLine(var3, var4 + var6, var3 + var5, var4 + var6);
- this.g_ts.drawLine(var3 + var5, var4, var3 + var5, var4 + var6);
- if (this.field_4[var1] != null) {
- this.g_ts.drawImage(this.field_4[var1], var3 + 2, var4 + 2, this);
- }
- }
-
- }
- }
- }
-
- public void DrawButtons() {
- if (this.field_4 != null) {
- for(int var1 = 0; var1 < this.field_4.length; ++var1) {
- if (this.isButton[var1]) {
- this.drawButton(var1, 2);
- }
- }
- }
-
- this.paintIt();
- }
-
- public Dimension preferredSize() {
- return new Dimension(this.field_0.width, 29);
- }
-
- public void setActiveButtons(boolean[] var1) {
- this.active = var1;
- this.DrawButtons();
- }
-
- public void reDrawButtons() {
- this.first_run = true;
- this.paintIt();
- }
-
- public boolean handleEvent(Event var1) {
- if (var1.id == 501) {
- this.mdown(var1.x, var1.y);
- }
-
- return super.handleEvent(var1);
- }
-
- public boolean mouseDrag(Event var1, int var2, int var3) {
- return true;
- }
-
- private void checkMouseMove(int var1, int var2) {
- for(int var3 = 0; var3 < this.field_4.length; ++var3) {
- if (this.isButton[var3] && var1 > this.b_x[var3] && var1 < this.b_x[var3] + this.bwidth && var2 > this.b_y[var3] && var2 < this.b_y[var3] + this.bheight) {
- if (this.last_hl != var3) {
- if (this.last_hl > -1) {
- this.drawButton(this.last_hl, 2);
- }
-
- if (this.active[var3]) {
- this.last_hl = var3;
- this.drawButton(var3, 1);
- }
-
- this.paintIt();
- }
-
- return;
- }
- }
-
- if (this.last_hl > -1) {
- this.drawButton(this.last_hl, 2);
- this.paintIt();
- this.last_hl = -1;
- }
-
- }
-
- public void reshape(int var1, int var2, int var3, int var4) {
- if (var3 * var4 > 0) {
- this.field_0 = new Dimension(var3, var4);
- this.reDrawButtons();
- super.reshape(var1, var2, var3, var4);
- }
- }
- }
-