diff --git a/AlgebraicDataflowArchitectureModel/src/graphicalrefactor/actions/NewModelAction.java b/AlgebraicDataflowArchitectureModel/src/graphicalrefactor/actions/NewModelAction.java new file mode 100644 index 0000000..116a186 --- /dev/null +++ b/AlgebraicDataflowArchitectureModel/src/graphicalrefactor/actions/NewModelAction.java @@ -0,0 +1,22 @@ +package graphicalrefactor.actions; + +import java.awt.event.ActionEvent; + +import graphicalrefactor.editor.Editor; + +public class NewModelAction extends AbstractEditorAction { + /** + * + */ + private static final long serialVersionUID = 8484493203589724589L; + + public NewModelAction(Editor editor) { + super("Model", editor); + } + + @Override + public void actionPerformed(ActionEvent e) { + editor.clear(); + } + +} diff --git a/AlgebraicDataflowArchitectureModel/src/graphicalrefactor/actions/SaveAsAction.java b/AlgebraicDataflowArchitectureModel/src/graphicalrefactor/actions/SaveAsAction.java new file mode 100644 index 0000000..20a3233 --- /dev/null +++ b/AlgebraicDataflowArchitectureModel/src/graphicalrefactor/actions/SaveAsAction.java @@ -0,0 +1,54 @@ +package graphicalrefactor.actions; + +import java.awt.event.ActionEvent; +import java.io.File; + +import javax.swing.AbstractAction; +import javax.swing.JFileChooser; +import javax.swing.filechooser.FileFilter; + +import graphicalrefactor.editor.Editor; + +public class SaveAsAction extends AbstractEditorAction { + /** + * + */ + private static final long serialVersionUID = -2599502783032684084L; + + private String lastDir = null; + + public SaveAsAction(Editor editor) { + super("Save As...", editor); + } + + @Override + public void actionPerformed(ActionEvent e) { + if (editor != null) { + String wd = (lastDir != null) ? lastDir : System.getProperty("user.dir"); + + JFileChooser fc = new JFileChooser(wd); + + // Adds file filter for supported file format + FileFilter defaultFilter = new FileFilter() { + + public boolean accept(File file) { + String lcase = file.getName().toLowerCase(); + return lcase.endsWith(".model"); + } + + @Override + public String getDescription() { + return null; + } + }; + fc.addChoosableFileFilter(defaultFilter); + int rc = fc.showDialog(null, "Save Model File"); + if (rc == JFileChooser.APPROVE_OPTION) { + lastDir = fc.getSelectedFile().getParent(); + editor.setCurFilePath(fc.getSelectedFile().getAbsolutePath()); + editor.save(); + } + } + } + +}