summaryrefslogtreecommitdiff
path: root/NET/worlds/console/WorldButton.java
diff options
context:
space:
mode:
authorFuwn <[email protected]>2021-05-03 16:38:41 -0700
committerFuwn <[email protected]>2021-05-03 16:38:41 -0700
commite1e781bb2135ef78592226f1a3eaba4925702f1f (patch)
tree8a5b590463ed413e1c6eabb719130e701b95ca63 /NET/worlds/console/WorldButton.java
downloadworlds.jar-main.tar.xz
worlds.jar-main.zip
:star:HEADmain
Diffstat (limited to 'NET/worlds/console/WorldButton.java')
-rw-r--r--NET/worlds/console/WorldButton.java194
1 files changed, 194 insertions, 0 deletions
diff --git a/NET/worlds/console/WorldButton.java b/NET/worlds/console/WorldButton.java
new file mode 100644
index 0000000..ddb51b3
--- /dev/null
+++ b/NET/worlds/console/WorldButton.java
@@ -0,0 +1,194 @@
+/* */ 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
+ */ \ No newline at end of file