com.swfm.mica.commands
Class MiPositionPartsCommand

java.lang.Object
  extended bycom.swfm.mica.commands.MiCommandHandler
      extended bycom.swfm.mica.commands.MiPositionPartsCommand
All Implemented Interfaces:
MiiCommandHandler, MiiCommandNames, MiiDisplayNames, MiiMessages, MiiTargetableCommandHandler, MiiTransaction

public class MiPositionPartsCommand
extends MiCommandHandler
implements MiiTransaction, MiiDisplayNames, MiiCommandNames

Version:
%I% %G%
Author:
Michael L. Davis

Field Summary
       
Constructor Summary
MiPositionPartsCommand()
           
MiPositionPartsCommand(MiEditor editor, MiPart positionedPart, DoubleVector originalXYPoints, DoubleVector newXYPoints, IntVector originalNumPtsEachConnection, IntVector newNumPtsEachConnection)
           
MiPositionPartsCommand(MiEditor editor, MiParts positionedParts, DoubleVector originalXYPoints, DoubleVector newXYPoints, IntVector originalNumPtsEachConnection, IntVector newNumPtsEachConnection)
           
 
Method Summary
 java.lang.String getCommand()
          Gets the command perfromed by this transaction.
 MiEditor getEditor()
           
 java.lang.String getName()
          Gets the name of this transaction.
 DoubleVector getNewPositions()
           
 DoubleVector getOriginalPositions()
           
static void getPositions(MiParts components, DoubleVector positions, IntVector numPointsEachConnection)
           
 MiParts getSources()
          Gets the parts used by this transaction.
 MiParts getTargets()
          Gets the targets of this transaction.
 boolean isRepeatable()
          Gets whether this transaction is repeatable.
 boolean isUndoable()
          Gets whether this transaction is undoable.
 void processCommand(MiEditor editor, MiParts positionedParts, DoubleVector originalXYPoints, DoubleVector newXYPoints, IntVector originalNumPtsEachConnection, IntVector newNumPtsEachConnection)
           
 void processCommand(java.lang.String cmd)
          Processes the given command.
 void redo()
          Redoes this transaction.
 void repeat()
          Repeats this transaction.
 void setNewPositions(DoubleVector xyPoints)
           
 void setOriginalPositions(DoubleVector xyPoints)
           
 void undo()
          Undoes this transaction.
 
Methods inherited from class com.swfm.mica.commands.MiCommandHandler
getTargetOfCommand, setTargetOfCommand
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MiPositionPartsCommand

public MiPositionPartsCommand()

MiPositionPartsCommand

public MiPositionPartsCommand(MiEditor editor,
                              MiPart positionedPart,
                              DoubleVector originalXYPoints,
                              DoubleVector newXYPoints,
                              IntVector originalNumPtsEachConnection,
                              IntVector newNumPtsEachConnection)

MiPositionPartsCommand

public MiPositionPartsCommand(MiEditor editor,
                              MiParts positionedParts,
                              DoubleVector originalXYPoints,
                              DoubleVector newXYPoints,
                              IntVector originalNumPtsEachConnection,
                              IntVector newNumPtsEachConnection)
Parameters:
editor - the editor
originalXYPoints - the centers of all nodes and the positions of all points of all connections in the list of positionedParts (excluding the first and/or last points of connections that are connected to some node.
newXYPoints - the centers of all nodes and the positions of all points of all connections in the list of positionedParts (excluding the first and/or last points of connections that are connected to some node.
Method Detail

getEditor

public MiEditor getEditor()

setOriginalPositions

public void setOriginalPositions(DoubleVector xyPoints)

getOriginalPositions

public DoubleVector getOriginalPositions()

setNewPositions

public void setNewPositions(DoubleVector xyPoints)

getNewPositions

public DoubleVector getNewPositions()

processCommand

public void processCommand(java.lang.String cmd)
Description copied from interface: MiiCommandHandler
Processes the given command.

Specified by:
processCommand in interface MiiCommandHandler

processCommand

public void processCommand(MiEditor editor,
                           MiParts positionedParts,
                           DoubleVector originalXYPoints,
                           DoubleVector newXYPoints,
                           IntVector originalNumPtsEachConnection,
                           IntVector newNumPtsEachConnection)

getPositions

public static void getPositions(MiParts components,
                                DoubleVector positions,
                                IntVector numPointsEachConnection)

getName

public java.lang.String getName()
Gets the name of this transaction. This name is often displayed, for example, in the menubar's edit pulldown menu.

Specified by:
getName in interface MiiTransaction
Returns:
the name of this transaction.

getCommand

public java.lang.String getCommand()
Gets the command perfromed by this transaction. This name is often found in the MiiCommandNames file.

Specified by:
getCommand in interface MiiTransaction
Returns:
the command of this transaction.

redo

public void redo()
Redoes this transaction. This is only valid after an undo. This redoes the changes encapsulated by this transaction that were undone by the undo() method.

Specified by:
redo in interface MiiTransaction

undo

public void undo()
Undoes this transaction. This undoes any changes that were made by the changes encapsulated by this transaction.

Specified by:
undo in interface MiiTransaction

repeat

public void repeat()
Repeats this transaction. This re-applies the changes encapsulated by this transaction. For example, a translation of a shape can be repeated in order to move it further.

Specified by:
repeat in interface MiiTransaction

isUndoable

public boolean isUndoable()
Gets whether this transaction is undoable.

Specified by:
isUndoable in interface MiiTransaction

isRepeatable

public boolean isRepeatable()
Gets whether this transaction is repeatable. If repeatable then calling this transaction's repeat() method is permitted.

Specified by:
isRepeatable in interface MiiTransaction

getTargets

public MiParts getTargets()
Gets the targets of this transaction.

Specified by:
getTargets in interface MiiTransaction

getSources

public MiParts getSources()
Gets the parts used by this transaction.

Specified by:
getSources in interface MiiTransaction