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.Font;
- import java.awt.FontMetrics;
- import java.awt.Graphics;
- import java.awt.Image;
- import java.awt.Panel;
-
- class ACRlev extends Panel {
- int curLevel = 1;
- int maxLevel = 1;
- 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;
- Font font;
- // $FF: renamed from: fm java.awt.FontMetrics
- FontMetrics field_2;
- Font recFont;
- FontMetrics recfm;
- // $FF: renamed from: mx int
- int field_3;
- // $FF: renamed from: my int
- int field_4;
- private int last_down;
- private int cur_down;
- int[] b_x;
- int[] b_y;
- int[] b_w;
- int[] b_h;
- int[] b_s;
- String[] b_msg;
- private int type;
- private boolean showTotal;
-
- public boolean mouseMove(Event var1, int var2, int var3) {
- return true;
- }
-
- public boolean mouseExit(Event var1, int var2, int var3) {
- if (this.cur_down > -1) {
- this.drawButton(this.b_x[this.cur_down], this.b_y[this.cur_down], this.b_w[this.cur_down], this.b_h[this.cur_down], 1, this.b_msg[this.cur_down], this.b_s[this.cur_down]);
- this.last_down = this.cur_down;
- this.cur_down = -1;
- this.paintIt();
- }
-
- return true;
- }
-
- public ACRlev(boolean var1) {
- this.bgColor = ACutilb.windowColor;
- this.first_run = true;
- this.font = new Font("Helvetica", 0, 10);
- this.recFont = new Font("Helvetica", 1, 11);
- this.last_down = -1;
- this.cur_down = -1;
- this.b_x = new int[2];
- this.b_y = new int[2];
- this.b_w = new int[2];
- this.b_h = new int[2];
- this.b_s = new int[2];
- this.b_msg = new String[2];
- this.type = 0;
- this.showTotal = false;
- this.showTotal = var1;
- ((Component)this).setBackground(ACutilb.windowColor);
- this.field_2 = ((Component)this).getFontMetrics(this.font);
- this.the_e = new Event(this, 900, this);
- }
-
- 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) {
- this.last_down = -1;
- if (this.cur_down > -1) {
- this.takeAction(this.cur_down);
- this.drawButton(this.b_x[this.cur_down], this.b_y[this.cur_down], this.b_w[this.cur_down], this.b_h[this.cur_down], 1, this.b_msg[this.cur_down], this.b_s[this.cur_down]);
- this.cur_down = -1;
- this.paintIt();
- }
-
- return true;
- }
-
- public void setRecInfo(int var1, int var2) {
- this.curLevel = var1;
- this.maxLevel = var2;
- this.updateNums();
- this.paintIt();
- }
-
- private synchronized void paintIt() {
- if (this.paint_called) {
- Graphics var1 = ((Component)this).getGraphics();
- if (this.first_run) {
- ((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.setFont(this.font);
- this.field_2 = ((Component)this).getFontMetrics(this.font);
- this.g_ts.setColor(this.bgColor);
- this.g_ts.fillRect(0, 0, this.field_0.width, this.field_0.height);
- this.first_run = false;
- this.DrawButtons();
- } else {
- var1.drawImage(this.field_1, 0, 0, this);
- }
- }
- }
-
- 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 = 952;
- this.the_e.arg = (new Integer(var1)).toString();
- super.postEvent(this.the_e);
- return true;
- }
-
- public void DrawButtons() {
- int var1 = 0;
-
- do {
- this.b_y[var1] = 2;
- this.b_h[var1] = 14;
- this.b_w[var1] = 16;
- this.b_s[var1] = 0;
- ++var1;
- } while(var1 < 2);
-
- this.b_x[0] = this.field_0.width - 35;
- this.b_s[0] = 1;
- this.b_x[1] = this.field_0.width - 18;
- this.b_s[1] = 2;
- var1 = 0;
-
- do {
- this.drawButton(this.b_x[var1], this.b_y[var1], this.b_w[var1], this.b_h[var1], 1, this.b_msg[var1], this.b_s[var1]);
- ++var1;
- } while(var1 < 2);
-
- this.updateNums();
- this.paintIt();
- }
-
- private void drawButton(int var1, int var2, int var3, int var4, int var5, String var6, int var7) {
- this.g_ts.setColor(ACutilb.windowColor);
- if (var5 == 1) {
- this.g_ts.fillRect(var1 + 2, var2 + 2, var3 - 2, var4 - 2);
- } else {
- this.g_ts.fillRect(var1 + 1, var2 + 1, var3 - 1, var4 - 1);
- }
-
- if (var5 == 1) {
- this.g_ts.setColor(ACutilb.windowColor);
- this.g_ts.drawRect(var1 + 1, var2 + 1, var3 - 1, var4 - 1);
- this.g_ts.setColor(Color.gray);
- this.g_ts.drawLine(var1 + 1, var2 + var4 - 1, var1 + var3 - 1, var2 + var4 - 1);
- this.g_ts.drawLine(var1 + var3 - 1, var2 + 1, var1 + var3 - 1, var2 + var4 - 1);
- this.g_ts.setColor(Color.white);
- this.g_ts.drawRect(var1, var2, var3, var4);
- this.g_ts.setColor(Color.black);
- this.g_ts.drawLine(var1, var2 + var4, var1 + var3, var2 + var4);
- this.g_ts.drawLine(var1 + var3, var2, var1 + var3, var2 + var4);
- if (var6 != null) {
- this.g_ts.drawString(var6, var1 + (var3 - this.field_2.stringWidth(var6)) / 2, var2 + this.field_2.getHeight() - this.field_2.getLeading() - 2);
- return;
- }
-
- int var8 = var1 + var4 / 2 - 2;
- int var9 = var2 + var4 / 2 - 1;
- if (var7 == 1) {
- int var10 = 6;
-
- do {
- this.g_ts.drawLine(var8, var9, var8 + var10, var9);
- ++var9;
- ++var8;
- var10 -= 2;
- } while(var10 >= 0);
- }
-
- if (var7 == 2) {
- var9 += 2;
- int var15 = 6;
-
- do {
- this.g_ts.drawLine(var8, var9, var8 + var15, var9);
- --var9;
- ++var8;
- var15 -= 2;
- } while(var15 >= 0);
-
- return;
- }
- } else {
- this.g_ts.setColor(Color.gray);
- this.g_ts.drawRect(var1, var2, var3, var4);
- this.g_ts.setColor(Color.black);
- if (var6 != null) {
- this.g_ts.drawString(var6, var1 + 1 + (var3 - this.field_2.stringWidth(var6)) / 2, var2 + this.field_2.getHeight() - this.field_2.getLeading() - 2 + 1);
- return;
- }
-
- int var11 = var1 + var4 / 2 - 2 + 1;
- int var13 = var2 + var4 / 2 - 1 + 1;
- if (var7 == 1) {
- int var16 = 6;
-
- do {
- this.g_ts.drawLine(var11, var13, var11 + var16, var13);
- ++var13;
- ++var11;
- var16 -= 2;
- } while(var16 >= 0);
- }
-
- if (var7 == 2) {
- var13 += 2;
- int var17 = 6;
-
- do {
- this.g_ts.drawLine(var11, var13, var11 + var17, var13);
- --var13;
- ++var11;
- var17 -= 2;
- } while(var17 >= 0);
- }
- }
-
- }
-
- public void reDrawButtons() {
- this.first_run = true;
- this.paintIt();
- }
-
- public boolean mouseDown(Event var1, int var2, int var3) {
- int var4 = 0;
-
- do {
- if (var2 > this.b_x[var4] && var2 < this.b_x[var4] + this.b_w[var4] && var3 > this.b_y[var4] && var3 < this.b_y[var4] + this.b_h[var4]) {
- ((Component)this).requestFocus();
- this.cur_down = var4;
- this.drawButton(this.b_x[var4], this.b_y[var4], this.b_w[var4], this.b_h[var4], 0, this.b_msg[var4], this.b_s[var4]);
- this.paintIt();
- }
-
- ++var4;
- } while(var4 < 2);
-
- return true;
- }
-
- public boolean mouseDrag(Event var1, int var2, int var3) {
- if (this.cur_down > -1) {
- if (var2 < this.b_x[this.cur_down] || var2 > this.b_x[this.cur_down] + this.b_w[this.cur_down] || var3 < this.b_y[this.cur_down] || var3 > this.b_y[this.cur_down] + this.b_h[this.cur_down]) {
- this.drawButton(this.b_x[this.cur_down], this.b_y[this.cur_down], this.b_w[this.cur_down], this.b_h[this.cur_down], 1, this.b_msg[this.cur_down], this.b_s[this.cur_down]);
- this.last_down = this.cur_down;
- this.cur_down = -1;
- this.paintIt();
- }
- } else {
- int var4 = 0;
-
- do {
- if (var2 > this.b_x[var4] && var2 < this.b_x[var4] + this.b_w[var4] && var3 > this.b_y[var4] && var3 < this.b_y[var4] + this.b_h[var4] && this.last_down == var4) {
- this.cur_down = var4;
- this.drawButton(this.b_x[var4], this.b_y[var4], this.b_w[var4], this.b_h[var4], 0, this.b_msg[var4], this.b_s[var4]);
- this.paintIt();
- }
-
- ++var4;
- } while(var4 < 2);
- }
-
- return true;
- }
-
- public void setRecInfoOnly(int var1, int var2) {
- this.curLevel = var1;
- this.maxLevel = var2;
- }
-
- public void updateNums() {
- this.g_ts.setFont(this.recFont);
- this.recfm = this.g_ts.getFontMetrics(this.recFont);
- String var1 = "";
- if (this.showTotal) {
- var1 = "Level: " + (new Integer(this.curLevel)).toString() + " of " + (new Integer(this.maxLevel)).toString();
- } else {
- var1 = "Level: " + (new Integer(this.curLevel)).toString();
- }
-
- int var2 = this.recfm.stringWidth(var1);
- this.g_ts.setColor(ACutilb.windowColor);
- this.g_ts.fillRect(this.field_0.width - 45 - var2 - 20, 0, var2 + 20, this.field_0.height);
- this.g_ts.setColor(Color.black);
- this.g_ts.drawString(var1, this.field_0.width - 45 - var2, 14);
- this.g_ts.setFont(this.font);
- this.recfm = this.g_ts.getFontMetrics(this.font);
- }
-
- 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);
- }
- }
- }
-