/* */ package NET.worlds.console; /* */ /* */ import NET.worlds.network.NetUpdate; /* */ import NET.worlds.scape.TeleportAction; /* */ import java.awt.Color; /* */ import java.awt.Dimension; /* */ import java.awt.Event; /* */ import java.awt.Font; /* */ import java.awt.Graphics; /* */ import java.awt.MenuItem; /* */ import java.awt.PopupMenu; /* */ import java.io.PrintStream; /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ class WorldButton /* */ extends TextImageButtons /* */ { /* */ private static final long serialVersionUID = 8349532719484982330L; /* */ int buttonX; /* */ int buttonY; /* */ String pkg; /* */ int privacyLevel; /* */ boolean isLoaded; /* */ String readableName; /* */ DefaultConsole console; /* 67 */ static String currentPackageName = ""; /* 68 */ private static Font wfont = new Font(Console.message("UniverseFont"), /* 69 */ 0, 10); /* */ /* */ /* 72 */ private static final int[] xText = new int[1]; /* */ /* */ /* */ /* */ PopupMenu lastPackageMenu; /* */ /* */ /* */ /* */ public WorldButton(boolean isLoaded, int buttonX, int buttonY, int buttonWidth, int buttonHeight, String[] texts, String pkg, int privacy, DefaultConsole console, ImageButtonsCallback handler) /* */ { /* 82 */ super(null, buttonWidth, intToInts(buttonHeight), xText, texts, handler, wfont); /* */ /* 84 */ this.readableName = texts[0]; /* 85 */ this.buttonX = buttonX; /* 86 */ this.buttonY = buttonY; /* 87 */ this.pkg = pkg; /* 88 */ this.isLoaded = isLoaded; /* 89 */ this.privacyLevel = privacy; /* 90 */ this.console = console; /* */ /* 92 */ setSize(buttonWidth, buttonHeight); /* 93 */ setWidth(buttonWidth); /* 94 */ setHeight(buttonHeight); /* */ } /* */ /* */ public static Dimension measure(String text) { /* 98 */ return TextImageButtons.measure(text, wfont); /* */ } /* */ /* */ /* */ public void doAction() /* */ { /* 104 */ if ((this.console == null) || (!showPackageMenu())) { /* 105 */ NetUpdate.loadWorld(this.pkg, true); /* */ } /* */ } /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ public boolean showPackageMenu() /* */ { /* 119 */ if (this.lastPackageMenu != null) { /* 120 */ remove(this.lastPackageMenu); /* 121 */ this.lastPackageMenu = null; /* */ } /* 123 */ this.lastPackageMenu = WorldsMarkPart.getPackageMenu(this.pkg); /* */ /* 125 */ if ((this.lastPackageMenu == null) || (this.lastPackageMenu.getItemCount() == 0)) { /* 126 */ return false; /* */ } /* */ /* */ /* 130 */ MenuItem first = this.lastPackageMenu.getItem(0); /* 131 */ if ((first instanceof BookmarkMenuItem)) { /* 132 */ BookmarkMenuItem title = new BookmarkMenuItem(this.readableName + /* 133 */ " World:", ((BookmarkMenuItem)first).getTarget()); /* */ /* 135 */ this.lastPackageMenu.insert(title, 0); /* 136 */ this.lastPackageMenu.insertSeparator(1); /* */ } /* */ /* 139 */ add(this.lastPackageMenu); /* */ try { /* 141 */ this.lastPackageMenu.show(this, -15, -7); /* */ } /* */ catch (RuntimeException e) { /* 144 */ System.out.println("Warning - could not show teleport location menu."); /* */ } /* 146 */ return true; /* */ } /* */ /* */ public void update(Graphics g) /* */ { /* 151 */ paint(g); /* */ } /* */ /* */ @Deprecated /* */ public boolean action(Event event, Object what) /* */ { /* 157 */ Object target = event.target; /* */ /* 159 */ if ((target instanceof BookmarkMenuItem)) { /* 160 */ TeleportAction.teleport(((BookmarkMenuItem)target).getTarget(), /* 161 */ null); /* 162 */ this.console.toggleUniverseMode(); /* */ } else { /* 164 */ return super.action(event, what); /* */ } /* 166 */ return true; /* */ } /* */ /* */ protected Graphics drawButton(Graphics g, int button, int state) /* */ { /* */ Color c; /* */ Color c; /* 173 */ if (state == 1) { Color c; /* 174 */ if (this.isLoaded) { /* 175 */ c = currentPackageName.equalsIgnoreCase(this.pkg) ? new Color(192, /* 176 */ 255, 192) : Color.white; /* */ } else /* 178 */ c = Color.red; } else { Color c; /* 179 */ if (state == 2) { /* 180 */ c = new Color(255, 192, 192); /* */ } else /* 182 */ c = Color.green; /* */ } /* 184 */ g = super.drawButton(g, button, state, c); /* */ /* 186 */ return g; /* */ } /* */ } /* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\WorldButton.class * Java compiler version: 6 (50.0) * JD-Core Version: 0.7.1 */