com.dlsc.flexgantt.command.layer
Class DefaultDragAndDropCommand

java.lang.Object
  extended by com.dlsc.flexgantt.command.AbstractCommand
      extended by com.dlsc.flexgantt.command.layer.AbstractDragAndDropCommand
          extended by com.dlsc.flexgantt.command.layer.DefaultDragAndDropCommand
All Implemented Interfaces:
ICommand, java.io.Serializable

public class DefaultDragAndDropCommand
extends AbstractDragAndDropCommand

A command that moves a given timeline object from one tree / hierarchy node to another. Additionally the timeline object's time span can be changed at the same time. This command can only be used in situations where the model is an instance of DefaultGanttChartModel, the old and the new tree node implement the IGanttChartNode interface, and the timeline object implements the ITimelineObject interface.

Since:
1.0
Author:
Dirk Lemmermann
See Also:
Serialized Form

Constructor Summary
DefaultDragAndDropCommand(IGanttChartNode owner, ILayer layer, ITimelineObject object, DefaultGanttChartModel model, IGanttChartNode newOwner, DefaultGanttChartModel newModel, long newStartTime, int dropAction)
          Constructs a new command.
 
Method Summary
 void executeCommand(IProgressMonitor monitor)
          Executes the command.
 ITimeSpan getNewTimeSpan()
          Returns the new time span that gets assigned to the timeline object via the command.
 ITimeSpan getOldTimeSpan()
          Returns the old time span that was assigned to the timeline object via the command.
 ITimelineObject getTimelineObject()
          Returns the timeline object that gets dragged & dropped.
 void undoCommand(IProgressMonitor monitor)
          Undos the command.
 
Methods inherited from class com.dlsc.flexgantt.command.layer.AbstractDragAndDropCommand
fixRelationships, getDropAction, getLayer, getNewModel, getNewOwner, getOldModel, getOldOwner
 
Methods inherited from class com.dlsc.flexgantt.command.AbstractCommand
getName, isRedoable, isRelevant, isUndoable, redoCommand
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DefaultDragAndDropCommand

public DefaultDragAndDropCommand(IGanttChartNode owner,
                                 ILayer layer,
                                 ITimelineObject object,
                                 DefaultGanttChartModel model,
                                 IGanttChartNode newOwner,
                                 DefaultGanttChartModel newModel,
                                 long newStartTime,
                                 int dropAction)
Constructs a new command.

Parameters:
owner - the current owner / tree node on which to which the timeline object is assigned
layer - the layer on which the timeline object gets currently displayed
object - the timeline object that gets dragged & dropped
model - the model in which the owner and the timeline object are stored
newOwner - the new owner / tree node to which the timeline object gets assigned
newModel - the new model in which the timeline object gets stored
newStartTime - the time point that will be the new start time of the timeline object
dropAction - the type of drop performed (possible values are listed in DnDConstants)
Since:
1.0
Method Detail

executeCommand

public void executeCommand(IProgressMonitor monitor)
Description copied from interface: ICommand
Executes the command.

Parameters:
monitor - a progress monitor

undoCommand

public void undoCommand(IProgressMonitor monitor)
Description copied from interface: ICommand
Undos the command.

Parameters:
monitor - a progress monitor

getNewTimeSpan

public ITimeSpan getNewTimeSpan()
Returns the new time span that gets assigned to the timeline object via the command.

Returns:
the timeline object's new time span
Since:
1.0

getOldTimeSpan

public ITimeSpan getOldTimeSpan()
Returns the old time span that was assigned to the timeline object via the command.

Returns:
the timeline object's old time span
Since:
1.0

getTimelineObject

public ITimelineObject getTimelineObject()
Returns the timeline object that gets dragged & dropped.

Returns:
the timeline object
Since:
1.0