diff options
Diffstat (limited to 'NET/worlds/scape/SaveWidget.java')
| -rw-r--r-- | NET/worlds/scape/SaveWidget.java | 31 |
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()); + } + } +} |