home *** CD-ROM | disk | FTP | other *** search
- import java.awt.CardLayout;
- import java.awt.Color;
- import java.awt.Component;
- import java.awt.Container;
- 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.LayoutManager;
- import java.awt.Panel;
- import java.awt.Rectangle;
- import java.awt.image.ImageObserver;
-
- class JDPTabSelectTopPanel extends Panel {
- Image offscreen;
- Rectangle offscreensize;
- // $FF: renamed from: gr java.awt.Graphics
- Graphics field_0;
- Graphics grI;
- JDPUser user;
- JDPTabSelectPanel target;
- JDPMenuStruct menu;
- String orientation;
- JDPTabSelectSidePanel topPanel;
- int[] menuindex;
- String currentmenu;
- String[] menustack;
- int[] menustacklastoption;
- int currentlevel;
- int prevcurrentlevel;
- int currentsel;
- int totaltabs;
- int firsttab;
- int[] firsttabstack;
- int tabsdisplayed;
- Rectangle[] tabs;
- Rectangle[] nexttabs;
- boolean[] panelLoaded;
- Rectangle Bounds;
- boolean north = true;
- // $FF: renamed from: fm java.awt.FontMetrics
- protected FontMetrics field_1;
- int[] widths;
- int[] boldWidths;
- boolean loadPanel;
- boolean selectionMade;
- int tabheight = 23;
- Font plainFont;
- Font boldFont;
- int plainHeight;
- int boldHeight;
- Font lastFont;
- int prevTitleHeight;
- Image iconImages;
-
- void processSelection(int var1) {
- if (!this.target.ismenu) {
- this.currentsel = var1;
- this.selectionMade = true;
- this.update(((Component)this).getGraphics());
- } else if (this.menuindex != null) {
- if (this.currentlevel > 0 && var1 - this.firsttab == 0) {
- this.currentlevel += -1;
- this.firsttab = this.firsttabstack[this.currentlevel];
- this.currentsel = this.menustacklastoption[this.currentlevel];
- } else {
- if (this.currentlevel > 0) {
- this.currentsel = var1 - 1;
- } else {
- this.currentsel = var1;
- }
-
- if (this.menu.menutype[this.menuindex[this.currentsel]].compareTo("M") == 0) {
- if (this.menu.menuobject[this.menuindex[this.currentsel]].length() > 0) {
- this.firsttabstack[this.currentlevel] = this.firsttab;
- ++this.currentlevel;
- this.firsttab = 0;
- this.menustack[this.currentlevel] = this.menu.menuobject[this.menuindex[this.currentsel]];
- this.currentsel = 0;
- }
- } else {
- this.loadPanel = true;
- this.menustacklastoption[this.currentlevel] = this.currentsel;
- if (this.firsttab > var1) {
- this.firsttab = var1 - 1;
- if (this.firsttab < 0) {
- this.firsttab = 0;
- }
- }
- }
- }
-
- this.selectionMade = true;
- this.loadMenuTitles();
- this.update(((Component)this).getGraphics());
- }
- }
-
- void loadMenuTitles() {
- this.totaltabs = 0;
- this.menuindex = new int[200];
- if (this.target.ismenu) {
- for(int var1 = 0; var1 < this.menu.menuname.length; ++var1) {
- if (this.menu.menuname[var1] == null || this.menustack[this.currentlevel] == null) {
- return;
- }
-
- if (this.menu.menuname[var1].compareTo(this.menustack[this.currentlevel]) == 0) {
- this.menuindex[this.totaltabs++] = var1;
- }
- }
-
- this.target.titles = new String[this.totaltabs];
-
- for(int var3 = 0; var3 < this.totaltabs; ++var3) {
- int var2 = this.menuindex[var3];
- if (this.target.titles.length > var3 && this.menu.menudesc.length > var2) {
- this.target.titles[var3] = this.menu.menudesc[var2];
- }
- }
- }
-
- }
-
- void loadPrevTab() {
- if (this.currentsel > 0) {
- this.currentsel += -1;
- if (this.currentlevel > 0) {
- this.processSelection(this.currentsel + 1);
- return;
- }
-
- this.processSelection(this.currentsel);
- }
-
- }
-
- public JDPTabSelectTopPanel(JDPUser var1, JDPTabSelectPanel var2, JDPMenuStruct var3, String var4, JDPTabSelectSidePanel var5) {
- this.user = var1;
- this.target = var2;
- this.menu = var3;
- this.orientation = var4;
- this.topPanel = var5;
- this.menustack = new String[40];
- this.menustacklastoption = new int[40];
- this.menustack[0] = var3.initmenu;
- this.firsttabstack = new int[40];
- ((Container)this).setLayout((LayoutManager)null);
- Rectangle var6 = ((Component)this).bounds();
- this.plainFont = ((Component)this).getFont();
- if (this.plainFont == null) {
- this.plainFont = var1.plainFont;
- }
-
- this.plainFont = new Font(this.plainFont.getName(), 0, this.plainFont.getSize());
- this.boldFont = new Font(this.plainFont.getName(), 1, this.plainFont.getSize());
- if (var4.compareTo("North") == 0) {
- this.north = true;
- if (var2.ismenu) {
- ((Component)this).reshape(0, 0, var6.width, 25);
- } else {
- ((Component)this).reshape(0, 0, var6.width, 25);
- }
- } else {
- this.north = false;
- ((Component)this).reshape(0, 0, 23, var6.height);
- }
- }
-
- public void paint(Graphics var1) {
- this.update(var1);
- }
-
- boolean isSelected(int var1) {
- return this.currentsel == var1;
- }
-
- String getSelectedItem() {
- return this.menu.menudesc[this.menuindex[this.currentsel]];
- }
-
- void drawIcon(int var1, int var2, int var3, String var4) {
- if (this.iconImages == null) {
- this.iconImages = ((Component)this).createImage(20, 19);
- }
-
- byte var5 = 0;
- if (!((Component)this).isEnabled()) {
- var5 = 1;
- }
-
- this.grI = this.iconImages.getGraphics();
- this.grI.setColor(this.user.u._cvtcolor(var4));
- this.grI.fillRect(0, 0, this.Bounds.width, this.Bounds.height);
- this.grI.drawImage(this.target.iconImage, -var1 * 20, -20 * var5, (ImageObserver)null);
- this.field_0.drawImage(this.iconImages, var2 - 7, var3 - 12, (ImageObserver)null);
- }
-
- void select(int var1) {
- if (var1 < this.totaltabs || var1 < this.target.titles.length) {
- this.currentsel = var1;
- if (this.currentlevel > 0) {
- this.processSelection(this.currentsel + 1);
- return;
- }
-
- this.processSelection(this.currentsel);
- }
-
- }
-
- public Dimension minimumSize() {
- Dimension var1 = new Dimension(100, 6);
- if (this.orientation.compareTo("North") == 0) {
- int var2 = 100;
- int var3 = 14;
- if (this.widths != null) {
- for(int var4 = 0; var4 < this.menu.menudesc.length; ++var4) {
- if (this.menu.menudesc[var4] != null) {
- int var5 = this.StringWidth(this.menu.menudesc[var4]);
- if (var5 > var2) {
- var2 = var5;
- }
- }
- }
-
- var2 += 60;
- }
-
- if (this.field_1 != null) {
- var3 = this.field_1.getHeight();
- }
-
- if (this.target.ismenu) {
- var1 = new Dimension(var2, var3 + 12);
- } else {
- var1 = new Dimension(var2, var3 + 11);
- }
- }
-
- return var1;
- }
-
- public void update(Graphics var1) {
- Rectangle var2 = ((Component)this).bounds();
- if (this.offscreen == null || var2.width != this.offscreensize.width || var2.height != this.offscreensize.height) {
- if (var2.width <= 0) {
- return;
- }
-
- this.offscreen = ((Component)this).createImage(var2.width, var2.height);
- this.offscreensize = var2;
- this.field_0 = this.offscreen.getGraphics();
- this.field_0.setFont(((Component)this).getFont());
- }
-
- if (this.target.imageLoader != null && this.target.imageLoader.getImageReady()) {
- this.target.iconImage = this.target.imageLoader.thisImage;
- this.target.imageLoader = null;
- }
-
- Color var3 = ((Component)this).getBackground();
- Color var4 = JDPUtils.brighter(var3);
- Color var5 = JDPUtils.darker(var3);
- Color var6 = JDPUtils.darker(var5);
- this.field_0.setColor(var3);
- this.field_0.fillRect(0, 0, var2.width, var2.height);
- this.field_0.setColor(Color.black);
- this.plainFont = ((Component)this).getFont();
- if (this.plainFont == null) {
- this.plainFont = this.user.plainFont;
- }
-
- this.plainFont = new Font(this.plainFont.getName(), 0, this.plainFont.getSize());
- this.boldFont = new Font(this.plainFont.getName(), 1, this.plainFont.getSize());
- this.field_0.setFont(this.plainFont);
- this.StringWidth("");
- if (this.field_1 != null) {
- int var7 = this.field_1.getHeight();
- if (var7 != this.prevTitleHeight && this.prevTitleHeight != 0 || var7 + 12 != ((Component)this).bounds().height) {
- this.prevTitleHeight = var7;
- if (this.target != null && this.target.countComponents() > 0) {
- try {
- this.target.layout();
- } catch (Exception var20) {
- return;
- }
-
- this.target.paintAll(this.target.getGraphics());
- }
- }
-
- this.prevTitleHeight = var7;
- }
-
- int var21 = 13;
- int var8 = this.firsttab;
- this.totaltabs = 0;
- this.menuindex = new int[200];
- String var9 = "";
- this.Bounds = ((Component)this).bounds();
- this.tabheight = this.Bounds.height - 2;
-
- for(int var10 = 0; var10 < this.menu.menuname.length; ++var10) {
- if (this.menu.menuname[var10] == null || this.menustack[this.currentlevel] == null) {
- return;
- }
-
- if (this.menu.menuname[var10].compareTo(this.menustack[this.currentlevel]) == 0) {
- this.menuindex[this.totaltabs++] = var10;
- }
-
- if (this.target.ismenu) {
- if (this.menu.menuobject[var10].compareTo(this.menustack[this.currentlevel]) == 0 && this.menu.menutype[var10].compareTo("M") == 0) {
- var9 = this.menu.menudesc[var10];
- }
- } else {
- var9 = this.target.menuTitle;
- }
- }
-
- this.nexttabs = new Rectangle[2];
- this.tabs = new Rectangle[30];
- int var22 = 0;
- int var11 = 0;
- if (!this.north) {
- var21 = 3;
- this.topPanel.clearEdge();
- }
-
- if (this.firsttab > 0) {
- var22 = var21 - 9;
- var11 = var21 + 15;
- var21 = var21 + 15 + 11;
- if (this.currentlevel > 0) {
- --var21;
- }
-
- if (this.north && var11 < this.Bounds.width) {
- this.field_0.setColor(var4);
- this.field_0.drawLine(var22 + 2, 5, var11 - 1, 5);
- this.field_0.drawLine(var22 + 1, 6, var22 + 1, this.tabheight - 2);
- this.field_0.setColor(var6);
- this.field_0.drawLine(var11, 6, var11, this.tabheight - 2);
- this.field_0.setColor(Color.black);
- this.field_0.drawLine(var11 + 1, 8, var11 + 1, this.tabheight - 2);
- this.nexttabs[0] = new Rectangle();
- this.nexttabs[0].reshape(var22, 4, var11 - var22, this.tabheight - 4);
- int var12 = var11 - 12;
- int[] var13 = new int[]{var12 + 4, var12, var12 + 4, var12 + 4};
- int[] var14 = new int[]{9, 13, 17, 9};
- this.field_0.fillPolygon(var13, var14, 3);
- }
- }
-
- if (this.currentlevel > 0) {
- this.field_0.setFont(this.plainFont);
- int var27 = var21 + this.StringWidth("back");
- if (this.north) {
- this.field_0.drawString("back", var21, 4 + this.boldHeight);
- }
-
- this.field_0.setColor(Color.black);
- if (this.north) {
- int[] var32 = new int[]{var27 + 4, var27, var27 + 8, var27 + 4};
- int[] var37 = new int[]{11, 16, 16, 11};
- this.field_0.fillPolygon(var32, var37, 3);
- } else {
- int[] var33 = new int[]{11, 7, 15, 11};
- int[] var38 = new int[]{18, 24, 24, 18};
- this.field_0.fillPolygon(var33, var38, 3);
- }
-
- this.field_0.setColor(var4);
- if (this.totaltabs == 0) {
- if (this.north) {
- this.field_0.drawLine(4, this.tabheight - 1, this.Bounds.width - 5, this.tabheight - 1);
- } else {
- this.field_0.drawLine(this.Bounds.width - 1, 4, this.Bounds.width - 1, this.tabheight - 5);
- }
- }
-
- var22 = var21 - 9;
- var11 = var27 + 14;
- if (this.north) {
- this.field_0.drawLine(var22 + 2, 5, var11 - 1, 5);
- this.field_0.drawLine(var22 + 1, 6, var22 + 1, this.tabheight - 2);
- this.field_0.setColor(var6);
- this.field_0.drawLine(var11, 6, var11, this.tabheight - 2);
- this.field_0.setColor(Color.black);
- this.field_0.drawLine(var11 + 1, 8, var11 + 1, this.tabheight - 2);
- this.tabs[var8] = new Rectangle();
- this.tabs[var8++].reshape(var22, 4, var11 - var22, this.tabheight - 4);
- } else {
- this.topPanel.setEdge();
- this.field_0.drawLine(3, var22 + 2, 3, var11 - 1);
- this.field_0.drawLine(6, var22 + 1, this.Bounds.width - 4, var22 + 1);
- this.field_0.setColor(var6);
- this.field_0.drawLine(6, var11, this.Bounds.width - 5, var11);
- this.field_0.setColor(Color.black);
- this.field_0.drawLine(8, var11 + 1, this.Bounds.width - 5, var11 + 1);
- this.tabs[var8] = new Rectangle();
- this.tabs[var8++].reshape(4, var22, this.Bounds.width - 8, var11 - var22);
- }
-
- var21 = var11 + 11;
- }
-
- if (this.currentsel < this.firsttab) {
- this.currentsel = this.firsttab;
- }
-
- this.tabsdisplayed = 0;
-
- for(int var28 = this.firsttab; var28 < this.totaltabs; ++var28) {
- int var34 = this.menuindex[var28];
- this.field_0.setFont(this.plainFont);
- byte var39 = 0;
- var22 = var21 - 9;
- var11 = var21 + this.StringWidth(this.menu.menudesc[var34]) + 6;
- if (this.target.iconNumbers != null && this.target.iconNumbers.length > var34 && this.target.iconNumbers[var34] >= 0) {
- var11 += 19;
- }
-
- if (var28 == this.currentsel) {
- this.field_0.setFont(this.boldFont);
- var39 = 2;
- if (var28 > this.firsttab) {
- ++var22;
- }
-
- var11 = var21 + this.StringWidth(this.menu.menudesc[var34]) + 6;
- if (this.target.iconNumbers != null && this.target.iconNumbers.length > var34 && this.target.iconNumbers[var34] >= 0) {
- var11 += 19;
- }
-
- this.field_0.setColor(var4);
- if (this.north) {
- if (this.menu.menutype[var34].compareTo("M") == 0) {
- var11 += 9;
- }
-
- byte var15 = 29;
- if (var28 == this.totaltabs - 1) {
- var15 = 5;
- }
-
- if (var11 < this.Bounds.width - var15) {
- ++this.tabsdisplayed;
- this.field_0.drawLine(3, this.tabheight - 1, var22 - 1, this.tabheight - 1);
- this.field_0.drawLine(3, this.tabheight - 1, 3, this.Bounds.height);
- this.field_0.drawLine(var11, this.tabheight - 1, this.Bounds.width - 6, this.tabheight - 1);
- this.field_0.drawLine(var22, 3, var11 - 1, 3);
- this.field_0.drawLine(var22 - 1, 4, var22 - 1, this.tabheight - 1);
- this.field_0.setColor(var6);
- this.field_0.drawLine(var11, 4, var11, this.tabheight - 1);
- if (!this.target.ismenu) {
- this.field_0.drawLine(this.Bounds.width - 4, this.tabheight - 1, this.Bounds.width - 4, this.Bounds.height);
- this.field_0.setColor(var5);
- this.field_0.drawLine(this.Bounds.width - 5, this.tabheight, this.Bounds.width - 5, this.Bounds.height);
- }
-
- this.field_0.setColor(Color.black);
- this.field_0.drawLine(var11 + 1, 6, var11 + 1, this.tabheight - 2);
- if (this.menu.menutabcolor[var34].equals("LightGray")) {
- this.field_0.setColor(var3);
- } else {
- this.field_0.setColor(this.user.u._cvtcolor(this.menu.menutabcolor[var34]));
- }
-
- this.field_0.fillRect(var22, 4, var11 - var22, this.tabheight - 4);
- } else {
- this.field_0.drawLine(3, this.tabheight - 1, this.Bounds.width - 5, this.tabheight - 1);
- this.field_0.setColor(var6);
- this.field_0.drawLine(var11, this.tabheight - 1, var11, this.Bounds.height);
- }
- } else if (var11 < this.Bounds.height) {
- ++this.tabsdisplayed;
- if (var22 > 15) {
- this.field_0.drawLine(this.Bounds.width - 5, 0, this.Bounds.width - 5, var22 - 1);
- }
-
- this.field_0.drawLine(this.Bounds.width - 5, var11, this.Bounds.width - 5, this.Bounds.height);
- this.field_0.drawLine(3, var22, 3, var11 - 1);
- this.field_0.drawLine(4, var22 - 1, this.Bounds.width - 5, var22 - 1);
- this.field_0.setColor(var6);
- this.field_0.drawLine(4, var11, this.Bounds.width - 5, var11);
- this.field_0.setColor(Color.black);
- this.field_0.drawLine(6, var11 + 1, this.Bounds.width - 6, var11 + 1);
- } else {
- this.field_0.drawLine(this.Bounds.width - 5, 4, this.Bounds.width - 5, this.Bounds.height - 5);
- }
-
- this.field_0.setFont(this.boldFont);
- } else if (this.north) {
- if (this.menu.menutype[var34].compareTo("M") == 0) {
- var11 += 9;
- }
-
- byte var41 = 29;
- if (var28 == this.totaltabs - 1) {
- var41 = 5;
- }
-
- if (var11 < this.Bounds.width - var41) {
- ++this.tabsdisplayed;
- this.field_0.setColor(var4);
- this.field_0.drawLine(var22 + 2, 5, var11 - 1, 5);
- this.field_0.drawLine(var22 + 1, 6, var22 + 1, this.tabheight - 2);
- this.field_0.setColor(var6);
- this.field_0.drawLine(var11, 6, var11, this.tabheight - 2);
- this.field_0.setColor(Color.black);
- this.field_0.drawLine(var11 + 1, 8, var11 + 1, this.tabheight - 2);
- if (this.menu.menutabcolor[var34].equals("LightGray")) {
- this.field_0.setColor(var3);
- } else {
- this.field_0.setColor(this.user.u._cvtcolor(this.menu.menutabcolor[var34]));
- }
-
- this.field_0.fillRect(var22 + 2, 6, var11 - var22 - 2, this.tabheight - 7);
- } else {
- this.field_0.setColor(var6);
- this.field_0.drawLine(var11 + 20, this.tabheight - 1, var11 + 20, this.Bounds.height);
- }
- } else if (var11 < this.Bounds.height) {
- ++this.tabsdisplayed;
- if (var28 == 0) {
- this.topPanel.setEdge();
- }
-
- this.field_0.setColor(var4);
- this.field_0.drawLine(3, var22 + 2, 3, var11 - 1);
- this.field_0.drawLine(4, var22 + 1, this.Bounds.width - 6, var22 + 1);
- this.field_0.setColor(var6);
- this.field_0.drawLine(4, var11, this.Bounds.width - 6, var11);
- this.field_0.setColor(Color.black);
- this.field_0.drawLine(6, var11 + 1, this.Bounds.width - 6, var11 + 1);
- }
-
- if (this.north) {
- byte var43 = 29;
- if (var28 == this.totaltabs - 1) {
- var43 = 5;
- }
-
- if (var11 < this.Bounds.width - var43) {
- this.tabs[var8] = new Rectangle();
- this.tabs[var8++].reshape(var22, 4, var11 - var22, this.tabheight - 4);
- this.field_0.setColor(this.user.u._cvtcolor(this.menu.menutextcolor[var34]));
- int var16 = this.boldHeight;
- if (var28 != this.currentsel) {
- var16 = this.plainHeight + 1;
- }
-
- if (this.target.iconNumbers != null && this.target.iconNumbers.length > var34 && this.target.iconNumbers[var34] >= 0) {
- this.drawIcon(this.target.iconNumbers[var34], var21 - var39 + 1, 3 + var16, this.menu.menutabcolor[var34]);
- if (var28 != this.currentsel) {
- this.field_0.setColor(var4);
- this.field_0.drawLine(var21 - var39 - 6, this.tabheight - 1, var21 - var39 + 13, this.tabheight - 1);
- this.field_0.setColor(var3);
- this.field_0.drawLine(var21 - var39 - 6, this.tabheight + 1, var21 - var39 + 13, this.tabheight + 1);
- }
-
- this.field_0.setColor(var3);
- this.field_0.drawLine(var21 - var39 - 6, this.tabheight, var21 - var39 + 13, this.tabheight);
- var21 += 18;
- }
-
- this.field_0.setColor(this.user.u._cvtcolor(this.menu.menutextcolor[var34]));
- this.field_0.drawString(this.menu.menudesc[var34], var21 - var39, 3 + var16);
- if (this.menu.menutype[var34].compareTo("M") == 0) {
- int var17 = var11 - 12;
- int[] var18 = new int[]{var17, var17 + 8, var17 + 4, var17};
- int[] var19 = new int[]{11, 11, 15, 11};
- this.field_0.fillPolygon(var18, var19, 3);
- }
- } else {
- if (var28 < this.totaltabs) {
- if (var28 <= this.currentsel) {
- this.firsttab = var28;
- ((Component)this).repaint();
- }
-
- var22 = var21 - 9;
- var11 = var21 + 13;
- this.field_0.setColor(var4);
- this.field_0.drawLine(var22 + 2, 5, var11 - 1, 5);
- this.field_0.drawLine(var22 + 1, 6, var22 + 1, this.tabheight - 2);
- this.field_0.setColor(var6);
- this.field_0.drawLine(var11, 6, var11, this.tabheight - 2);
- this.field_0.setColor(Color.black);
- this.field_0.drawLine(var11 + 1, 8, var11 + 1, this.tabheight - 2);
- this.nexttabs[1] = new Rectangle();
- this.nexttabs[1].reshape(var22, 4, var11 - var22, this.tabheight - 4);
- int var44 = var11 - 12;
- int[] var45 = new int[]{var44, var44 + 4, var44, var44};
- int[] var46 = new int[]{9, 13, 17, 9};
- this.field_0.fillPolygon(var45, var46, 3);
- }
-
- var28 = this.totaltabs;
- }
- } else if (var11 < this.Bounds.height) {
- this.tabs[var8] = new Rectangle();
- this.tabs[var8++].reshape(4, var22, this.Bounds.width - 8, var11 - var22);
- this.field_0.setColor(this.user.u._cvtcolor(this.menu.menutextcolor[var34]));
-
- for(int var42 = 0; var42 < this.menu.menudesc[var34].length(); ++var42) {
- this.field_0.drawString(this.menu.menudesc[var34].substring(var42, var42 + 1), 8, 7 + var21 - var39 + var42 * 8);
- }
- }
-
- this.field_0.setColor(Color.black);
- var21 = var11 + 10;
- }
-
- if (this.north) {
- this.field_0.setFont(this.boldFont);
- int var29 = this.Bounds.width - this.StringWidth(var9) - 10;
- if (var29 > var11 + 10) {
- this.field_0.drawString(var9, var29, 18);
- }
- }
-
- var1.drawImage(this.offscreen, 0, 0, (ImageObserver)null);
- if (this.panelLoaded == null) {
- this.panelLoaded = new boolean[this.menu.menuname.length];
- }
-
- if (this.totaltabs > 0) {
- int var30 = this.menuindex[this.currentsel];
- if (!this.panelLoaded[var30] && this.target.ismenu) {
- if (!this.menu.menutype[var30].equals("P") || !this.loadPanel && (this.currentlevel != 0 || this.currentsel != 0) && this.totaltabs != 1 && this.menu.menuobject[var30].indexOf("Browser") <= 0 && !this.menu.menuobject[var30].startsWith("JDPWelcome")) {
- if (this.menu.menutype[var30].compareTo("B") == 0) {
- this.target.placePanel[var30].add("Center", this.user.JDPBuildTestPanel[this.user.JDPBuildTestPanelDisplay++]);
- this.panelLoaded[var30] = true;
- this.target.placePanel[var30].paintAll(this.target.placePanel[var30].getGraphics());
- ((CardLayout)this.target.cardPanel.getLayout()).show(this.target.cardPanel, Integer.toString(var30));
- } else {
- ((CardLayout)this.target.cardPanel.getLayout()).show(this.target.cardPanel, "Blank");
- }
- } else {
- this.target.placePanel[var30].add("Center", new JDPPanelLoader(this.user, this.menu.menuobject[var30], this.menu.menuparm[var30], this.panelLoaded, var30));
- this.panelLoaded[var30] = true;
- this.target.placePanel[var30].paintAll(this.target.placePanel[var30].getGraphics());
- ((CardLayout)this.target.cardPanel.getLayout()).show(this.target.cardPanel, Integer.toString(var30));
- }
- } else {
- if (var30 >= 0) {
- ((CardLayout)this.target.cardPanel.getLayout()).show(this.target.cardPanel, Integer.toString(var30));
- }
-
- if (this.selectionMade && this.target.placePanel[var30] != null) {
- Event var35 = new Event(this.target, 202, "JDPTabSelectPanel");
- this.target.placePanel[var30].deliverEvent(var35);
- }
- }
-
- boolean var36 = true;
-
- for(int var40 = 0; var40 < this.menuindex.length; ++var40) {
- var30 = this.menuindex[var40];
- if (!this.panelLoaded[var30] && this.menu.menutype[var30].equals("A")) {
- this.target.placePanel[var30].add("Center", new JDPPanelLoader(this.user, this.menu.menuobject[var30], this.menu.menuparm[var30], this.panelLoaded, var30));
- this.panelLoaded[var30] = true;
- if (var36) {
- this.currentsel = var40;
- this.target.placePanel[var30].paintAll(this.target.placePanel[var30].getGraphics());
- ((CardLayout)this.target.cardPanel.getLayout()).show(this.target.cardPanel, Integer.toString(var30));
- var36 = false;
- ((Component)this).repaint();
- }
- }
- }
- } else {
- ((CardLayout)this.target.cardPanel.getLayout()).show(this.target.cardPanel, "Blank");
- }
-
- this.prevcurrentlevel = this.currentlevel;
- this.selectionMade = false;
- }
-
- int getSelectedIndex() {
- return this.currentsel;
- }
-
- boolean loadObject(String var1) {
- for(int var2 = 0; var2 < this.menu.menuobject.length; ++var2) {
- if (this.menu.menuobject[var2].equals(var1) && (this.menu.menutype[var2].equals("P") || this.menu.menutype[var2].equals("A"))) {
- this.target.placePanel[var2].add("Center", new JDPPanelLoader(this.user, this.menu.menuobject[var2], this.menu.menuparm[var2], this.panelLoaded, var2, true));
- this.panelLoaded[var2] = true;
- return true;
- }
- }
-
- return false;
- }
-
- public Dimension preferredSize() {
- return this.minimumSize();
- }
-
- public void layout() {
- this.loadMenuTitles();
- ((Component)this).repaint();
- }
-
- public boolean handleEvent(Event var1) {
- switch (var1.id) {
- case 202:
- ((Component)this).repaint();
- return false;
- case 502:
- this.loadPanel = false;
- if (this.nexttabs[0] != null && this.nexttabs[0].inside(var1.x, var1.y)) {
- int var4 = 0;
- int var3 = 0;
-
- for(var3 = this.firsttab; var3 > 0; --var3) {
- var4 = var4 + this.StringWidth(this.menu.menudesc[this.menuindex[var3]]) + 6;
- if (var4 > this.Bounds.width - 40) {
- break;
- }
- }
-
- this.firsttab = var3;
- this.currentsel = var3;
- this.selectionMade = true;
- this.loadMenuTitles();
- ((Component)this).repaint();
- this.target.requestFocus();
- return true;
- } else if (this.nexttabs[1] != null && this.nexttabs[1].inside(var1.x, var1.y)) {
- this.firsttab += this.tabsdisplayed;
- this.selectionMade = true;
- this.loadMenuTitles();
- ((Component)this).repaint();
- this.target.requestFocus();
- return true;
- } else {
- for(int var2 = this.firsttab; var2 <= this.totaltabs + 1; ++var2) {
- if (this.tabs[var2] != null && this.tabs[var2].inside(var1.x, var1.y)) {
- this.processSelection(var2);
- this.target.requestFocus();
- return true;
- }
- }
-
- return false;
- }
- default:
- return false;
- }
- }
-
- void loadNextTab() {
- if (this.currentsel < this.totaltabs - 1) {
- ++this.currentsel;
- if (this.currentlevel > 0) {
- this.processSelection(this.currentsel + 1);
- return;
- }
-
- this.processSelection(this.currentsel);
- }
-
- }
-
- public int StringWidth(String var1) {
- if (this.field_0 == null) {
- return 0;
- } else if (var1 != null && !var1.equals("")) {
- if (this.field_0.getFont() != this.lastFont) {
- this.field_1 = this.field_0.getFontMetrics();
- this.lastFont = this.field_0.getFont();
- this.plainHeight = this.field_1.getHeight();
- this.boldHeight = this.field_1.getHeight();
- }
-
- return this.field_1 != null ? this.field_1.stringWidth(var1) : 0;
- } else {
- return 0;
- }
- }
-
- boolean selectObject(String var1) {
- for(int var2 = 0; var2 < this.menu.menuobject.length; ++var2) {
- if (this.menu.menuobject[var2].equals(var1)) {
- for(int var3 = 0; var3 < this.menuindex.length; ++var3) {
- if (this.menuindex[var3] == var2) {
- this.select(var2);
- return true;
- }
- }
- }
- }
-
- return false;
- }
- }
-