summaryrefslogtreecommitdiff
path: root/NET/worlds/scape/SaveWidget.java
diff options
context:
space:
mode:
Diffstat (limited to 'NET/worlds/scape/SaveWidget.java')
-rw-r--r--NET/worlds/scape/SaveWidget.java31
1 files changed, 31 insertions, 0 deletions
diff --git a/NET/worlds/scape/SaveWidget.java b/NET/worlds/scape/SaveWidget.java
new file mode 100644
index 0000000..d50c040
--- /dev/null
+++ b/NET/worlds/scape/SaveWidget.java
@@ -0,0 +1,31 @@
+package NET.worlds.scape;
+
+import NET.worlds.console.Console;
+import NET.worlds.console.DialogReceiver;
+import NET.worlds.console.FileSysDialog;
+
+class SaveWidget extends ClickWidget implements DialogReceiver {
+ public SaveWidget(ToolBar toolbar) {
+ super(toolbar, "save.gif", Console.message("Save-to-file"));
+ }
+
+ @Override
+ public void perform() {
+ new FileSysDialog(
+ Console.getFrame(),
+ this,
+ Console.message("Save-Object-As"),
+ 1,
+ " wobject |*.wob| world |*.world;*.wor| console |*.console| pilot |*.pilot| drone |*.drone| other ||",
+ "",
+ false
+ );
+ }
+
+ @Override
+ public void dialogDone(Object who, boolean confirmed) {
+ if (confirmed) {
+ Console.getFrame().getEditTile().save(((FileSysDialog)who).fileName());
+ }
+ }
+}