diff options
Diffstat (limited to 'NET/worlds/scape/TeleportDialog.java')
| -rw-r--r-- | NET/worlds/scape/TeleportDialog.java | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/NET/worlds/scape/TeleportDialog.java b/NET/worlds/scape/TeleportDialog.java new file mode 100644 index 0000000..7f9d7fc --- /dev/null +++ b/NET/worlds/scape/TeleportDialog.java @@ -0,0 +1,44 @@ +package NET.worlds.scape; + +import NET.worlds.console.Console; +import NET.worlds.console.DialogReceiver; +import NET.worlds.console.ImageButtons; +import NET.worlds.console.ImageButtonsCallback; +import NET.worlds.console.PolledDialog; +import NET.worlds.core.IniFile; +import java.awt.Component; +import java.awt.Rectangle; +import java.awt.Window; + +public class TeleportDialog extends PolledDialog implements ImageButtonsCallback { + private ImageButtons ib; + + public TeleportDialog(Window parent, DialogReceiver receiver) { + super(parent, receiver, Console.message("Teleporting"), true); + Rectangle[] rects = new Rectangle[1]; + int cancelX = IniFile.override().getIniInt("teleportCancelX", 61); + int cancelY = IniFile.override().getIniInt("teleportCancelY", 24); + int cancelW = IniFile.override().getIniInt("teleportCancelW", 84); + int cancelH = IniFile.override().getIniInt("teleportCancelH", 20); + rects[0] = new Rectangle(cancelX, cancelY, cancelW, cancelH); + String teleportGif = IniFile.override().getIniString("teleportDlg", Console.message("hangon.gif")); + this.ib = new ImageButtons(teleportGif, rects, this); + this.ready(); + } + + @Override + protected void build() { + this.add("Center", this.ib); + } + + @Override + public Object imageButtonsCallback(Component who, int which) { + this.done(false); + return null; + } + + @Override + public boolean keyDown(java.awt.Event event, int key) { + return key == 27 ? this.done(false) : super.keyDown(event, key); + } +} |