edu.stanford.hci.dtools.statechart.model.commands
Class StateDeleteCommand

java.lang.Object
  extended by org.eclipse.gef.commands.Command
      extended by edu.stanford.hci.dtools.statechart.model.commands.StateDeleteCommand

public class StateDeleteCommand
extends org.eclipse.gef.commands.Command

A command to remove a shape from its parent. The command can be undone or redone.

This software is distributed under the BSD License.

This code is partially based on code that is copyright (c) 2004 Elias Volanakis. See License.txt

Author:
Elias Volanakis, Michael Bernstein ( mbernst(AT)stanford.edu ), Bjoern Hartmann ( bjoern(AT)stanford.edu )

Constructor Summary
StateDeleteCommand(DiagramModel parent, StateModel child)
          Create a command that will remove the shape from its parent.
 
Method Summary
 boolean canUndo()
           
 void execute()
           
 void redo()
           
 void undo()
           
 
Methods inherited from class org.eclipse.gef.commands.Command
canExecute, chain, dispose, getDebugLabel, getLabel, setDebugLabel, setLabel
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

StateDeleteCommand

public StateDeleteCommand(DiagramModel parent,
                          StateModel child)
Create a command that will remove the shape from its parent.

Parameters:
parent - the DiagramModel containing the child
child - the ShapeModel to remove
Throws:
java.lang.IllegalArgumentException - if any parameter is null TODO: would be nice to use StateConnectionModels here...
Method Detail

canUndo

public boolean canUndo()
Overrides:
canUndo in class org.eclipse.gef.commands.Command

execute

public void execute()
Overrides:
execute in class org.eclipse.gef.commands.Command

redo

public void redo()
Overrides:
redo in class org.eclipse.gef.commands.Command

undo

public void undo()
Overrides:
undo in class org.eclipse.gef.commands.Command