uci.gef
Class CmdSavePGML
java.lang.Object
|
+--javax.swing.AbstractAction
|
+--uci.gef.Cmd
|
+--uci.gef.CmdSavePGML
- public class CmdSavePGML
- extends Cmd
- implements FilenameFilter
Cmd to save the current document to a binary file using Sun's
ObjectSerialization library. The written file contains the Editor
object and all objects reachable through instance variables of the
Editor (e.g., the selections, the views, the contents of the
views, the net-level description of the graph, etc.). UI objects
such as Windows, Frames, Panels, and Images are not stored because
I have marked those instance variables as transient in the source
code.
One advantage of this approach to saving and loading is that
developers using GEF can add subclasses (e.g., to NetNode) which
introduce new instance variables, and those will be saved and
loaded without the developers having to special load and save
methods. However, make sure that you do not point to any AWT
objects unless those instance variables are transient because those
cannot be saved.
Needs-More-Work: the files produced by a save are not really good
for anything other than reloading into this tool, or another Java
program that uses ObjectSerialization. At this time GEF provides no
support for saving or loading textual representations of documents
that could be used in other tools.
- See Also:
CmdOpen, Serialized Form
|
Constructor Summary |
CmdSavePGML()
|
CmdSavePGML(String filterPattern)
Only allow the user to select files that match the fiven
filename pattern. |
|
Method Summary |
boolean |
accept(File dir,
String name)
Only let the user select files that match the filter. |
void |
doIt()
|
void |
undoIt()
|
| Methods inherited from class uci.gef.Cmd |
about,
actionPerformed,
cmdAtIndex,
containsArg,
getArg,
getArg,
getName,
register,
registeredCmds,
setArg,
setName,
shouldBeEnabled,
updateEnabled |
_templates
protected static Hashtable _templates
_expander
protected static OCLExpander _expander
CmdSavePGML
public CmdSavePGML()
CmdSavePGML
public CmdSavePGML(String filterPattern)
- Only allow the user to select files that match the fiven
filename pattern. Needs-More-Work: this is not used yet.
doIt
public void doIt()
- Overrides:
- doIt in class Cmd
accept
public boolean accept(File dir,
String name)
- Only let the user select files that match the filter. This does
not seem to be called under JDK 1.0.2 on solaris. I have not
finished this method, it currently accepts all filenames.
Needs-More-Work: the source code for this method is duplicated in
CmdOpen#accept.
- Specified by:
- accept in interface FilenameFilter
undoIt
public void undoIt()
- Overrides:
- undoIt in class Cmd