Package | com.yworks.canvas.input |
Class | public class MoveLabelInputMode |
Inheritance | MoveLabelInputMode MoveInputMode StateMachineInputMode AbstractConcurrentInputMode AbstractInputMode flash.events.EventDispatcher |
IInputMode
that can be used to drag a ILabel
.
This implementation shows the possible candidate positions for a given label and allows the user to drag the label to one of these positions.
Pressing the Ctrl key while dragging allows to move the label independently from the candidates.
Property | Defined By | ||
---|---|---|---|
bridgeUpdateMode : BridgeUpdateMode
Determines how bridges shall be rendered during the move. | MoveInputMode | ||
canceledState : State [read-only]
Returns the canceled state of the state machine. | StateMachineInputMode | ||
cancelRecognizer : Function
Gets or sets the "cancel" recognizer. | MoveInputMode | ||
canvas : CanvasComponent [read-only]
The canvas instance this mode is currently installed in or null
| AbstractInputMode | ||
controller : ConcurrencyController
Gets or injects the ConcurrencyController for this instance. | AbstractConcurrentInputMode | ||
disableSnappingRecognizer : Function
Gets or sets event recognizer that recognizes when the user temporarily disables snapping. | MoveInputMode | ||
draggedRecognizer : Function
Gets or sets the "dragged" state recognizer. | MoveInputMode | ||
enabled : Boolean
Gets or sets the enabled state of this input mode. | AbstractConcurrentInputMode | ||
enableSnappingRecognizer : Function
Gets or sets event recognizer that recognizes when the user reenables temporarily disabled snapping. | MoveInputMode | ||
graph : IGraph
Gets the Graph this mode is acting upon. | MoveLabelInputMode | ||
graphSelection : IGraphSelection
The selection this mode is acting upon. | MoveLabelInputMode | ||
hitTestable : IHitTestable
Gets or sets the IHitTestable that will be used
by this mode to determine where the user may start dragging. | MoveInputMode | ||
hoverRecognizer : Function
A function which returns true if the mouse is hovering over a movable item. | MoveInputMode | ||
initialX : Number [read-only]
Returns the initial x position where the dragging was initiated. | MoveInputMode | ||
initialY : Number [read-only]
Returns the initial y position where the dragging was initiated. | MoveInputMode | ||
inputModeContext : IInputModeContext [read-only]
The context instance this mode is currently installed in or
null if this instance is not installed. | AbstractInputMode | ||
installed : Boolean [read-only]
Whether this mode is currently installed, i.e
if a call to the canvas property will yield a non-null result. | AbstractInputMode | ||
lastMouseEvent : CanvasMouseEvent [read-only]
Returns the last mouse event. | StateMachineInputMode | ||
movable : IMovable
Gets or sets the IMovable that will be used during
dragging to perform the actual movement. | MoveInputMode | ||
moveCursor : Cursor
Gets or sets the cursor to use during the move. | MoveInputMode | ||
positionHandler : IPositionHandler
Gets or sets the IPositionHandler that will be used
to handle that actual movement of the elements during the drag. | MoveInputMode | ||
preferredCursor : Cursor [override] | MoveInputMode | ||
pressedRecognizer : Function
Gets or sets the "pressed" state recognizer. | MoveInputMode | ||
releasedRecognizer : Function
Gets or sets the "released" recognizer. | MoveInputMode | ||
snapContext : SnapContext
The SnapContext which manages snapping model items to certain coordinates (e.g. | MoveInputMode | ||
startState : State [read-only]
Returns the start state of the state machine. | StateMachineInputMode | ||
stateMachine : StateMachine [read-only]
Gets the state machine. | StateMachineInputMode | ||
stoppedState : State [read-only]
Returns the stopped state of the state machine. | StateMachineInputMode | ||
useLabelModelParameterFinder : Boolean
Gets or sets a property that determines whether to allow the use of the ILabelModelParameterFinder
to assign new label model parameters. | MoveLabelInputMode |
Method | Defined By | ||
---|---|---|---|
Creates a new instance using the given graph to move the labels in. | MoveLabelInputMode | ||
cancel():void [override]
Runs the machine using the cancel and reset events,
releases the input mutex and returns. | StateMachineInputMode | ||
dispose():void
Disposes this input mode. | AbstractInputMode | ||
install(context:IInputModeContext):void
Installs this mode into the canvas of the given context. | AbstractInputMode | ||
resetMachine():void
Runs the machine using a special reset event. | StateMachineInputMode | ||
run(evt:Event):void
Tries to run the virtual machine using the pair of source and event argument
to determine which transition to take. | StateMachineInputMode | ||
stop():Boolean [override]
Runs the machine using a special stop event. | StateMachineInputMode | ||
uninstall(context:IInputModeContext):void
Uninstalls this mode from the canvas. | AbstractInputMode |
Method | Defined By | ||
---|---|---|---|
arm(evt:TransitionEvent):void
Callback used by the state machine to arm this mode. | MoveInputMode | ||
beginDrag(evt:TransitionEvent):void
Callback used by the state machine to initialize the dragging. | MoveInputMode | ||
cancelDrag(evt:TransitionEvent):void
Called when the users cancels the dragging of the handle. | MoveInputMode | ||
canRequestMutex():Boolean
Determines whether this instance can request the InputMutex. | AbstractConcurrentInputMode | ||
Factory method that creates a canceled State
for the given machine. | StateMachineInputMode | ||
Creates the hit testable that will be used to determine whether this mode may be activated. | MoveLabelInputMode | ||
Creates the label position handler for the given graph and label. | MoveLabelInputMode | ||
Creates an IInputModeContext for use with the IPositionHandler interface for
the upcoming move operation. | MoveInputMode | ||
Factory method that creates a start State for the given machine. | StateMachineInputMode | ||
Factory method that creates the state machine. | StateMachineInputMode | ||
Factory method that creates a stopped State
for the given machine. | StateMachineInputMode | ||
disarm(evt:TransitionEvent):void
Callback used by the state machine to disarm this mode. | MoveInputMode | ||
endDrag(evt:TransitionEvent):void
Called by the state machine to end the dragging. | MoveInputMode | ||
fireInstalled():void | AbstractInputMode | ||
fireInstalling():void | AbstractInputMode | ||
fireUninstalled():void | AbstractInputMode | ||
fireUninstalling():void | AbstractInputMode | ||
hasMutex():Boolean
Determines whether this instance owns the input mutex. | AbstractConcurrentInputMode | ||
initialize():void [override]
Performs one-time initialization of this instance. | MoveLabelInputMode | ||
initializeStateMachine(machine:StateMachine, startState:State, canceledState:State, stoppedState:State, finishedState:State):void [override]
Called to initialize the state machine. | MoveInputMode | ||
installCore(context:IInputModeContext):void [override]
Installs this mode into the given canvas. | StateMachineInputMode | ||
installListeners():void
Installs all necessary listeners to trigger the run method. | StateMachineInputMode | ||
invalidate():void
Convenience method for subclass implementations that invalidates
the canvasComponent this mode is currently installed in. | AbstractInputMode | ||
isCancelEvent(evt:Event):Boolean
Method that identifies an event as a cancel event. | StateMachineInputMode | ||
isDisabledEvent(evt:Event):Boolean
Method that identifies an event as a disabled event. | StateMachineInputMode | ||
isEnabledEvent(evt:Event):Boolean
Method that identifies an event as an enabled event. | StateMachineInputMode | ||
isHovering(evt:Event):Boolean
Returns true if the mouse is hovering over a movable item. | MoveInputMode | ||
isMutexAquiredEvent(evt:Event):Boolean
Method that identifies an event as a mutexAquired event. | StateMachineInputMode | ||
isMutexLostEvent(evt:Event):Boolean
Method that identifies an event as a mutexLost event. | StateMachineInputMode | ||
isStopEvent(evt:Event):Boolean
Method that identifies an event as a stop event. | StateMachineInputMode | ||
isValidLabelHit(x:Number, y:Number, context:ICanvasContext):Boolean
Determines whether a valid label has been hit at the specified position. | MoveLabelInputMode | ||
onCancelStateEntered(evt:StateChangeEvent):void
Called when the cancel state has been entered. | StateMachineInputMode | ||
onDisable():void
Runs the state machine using a disable event. | StateMachineInputMode | ||
onDisabled():void
Called when the enabled property changes to false. | AbstractConcurrentInputMode | ||
onDrag(evt:TransitionEvent):void
Called by the state machine during the dragging. | MoveInputMode | ||
onDragCanceled():void [override]
Clears the MoveInputMode.positionHandler property. | MoveLabelInputMode | ||
onDragFinished():void [override]
Clears the MoveInputMode.positionHandler property. | MoveLabelInputMode | ||
onDragging():void
Callback triggered for each drag. | MoveInputMode | ||
onDragStarted():void
Triggers the dragStarted event. | MoveInputMode | ||
onDragStarting():void [override]
Registers the MoveInputMode.positionHandler created during the last
createLabelPositionHandler call. | MoveLabelInputMode | ||
onEnable():void
Runs the state machine using a enable event. | StateMachineInputMode | ||
onEnabled():void
Called when the enabled property changes to true. | AbstractConcurrentInputMode | ||
Called when the graph property changes. | MoveLabelInputMode | ||
Called when the graphSelection property changes. | MoveLabelInputMode | ||
onMachineReset():void | StateMachineInputMode | ||
onMutexObtained():void [override]
Runs the state machine using a mutex obtained event. | StateMachineInputMode | ||
onMutexReleased():void [override]
Runs the state machine using a mutex lost event. | StateMachineInputMode | ||
Called when the preferredCursor property changes. | AbstractConcurrentInputMode | ||
onRun(evt:Event):void
Callback method that will be called after the state machine has
been run using the arguments provided. | StateMachineInputMode | ||
onStopStateEntered(evt:StateChangeEvent):void
Called when the cancel state has been entered. | StateMachineInputMode | ||
releaseMutex():void
Releases the mutex that is currently owned by this instance. | AbstractConcurrentInputMode | ||
requestMutex():void
Requests the InputMutex from the current controller. | AbstractConcurrentInputMode | ||
Set a new Graph for this mode. | MoveLabelInputMode | ||
setGraphSelection(newGraphSelection:IGraphSelection):void
Set a new Graph Selection for this mode. | MoveLabelInputMode | ||
setLastMouseEvent(evt:CanvasMouseEvent):void | StateMachineInputMode | ||
setPreferredCursorTransition(cursorClass:Class):Function
Factory method that can be used to obtain an listener
implementation that sets the given preferredCursor. | StateMachineInputMode | ||
setResetCursorTransition():Function
Factory method that can be used to obtain a listener implementation
that resets the preferredCursor. | StateMachineInputMode | ||
uninstallCore(context:IInputModeContext):void [override]
Uninstalls this mode from the canvas. | StateMachineInputMode | ||
uninstallListeners():void
Uninstalls all listeners, this instance has installed on calling intallListeners()
| StateMachineInputMode |
graph | property |
graph:IGraph
Gets the Graph this mode is acting upon.
public function get graph():IGraph
public function set graph(value:IGraph):void
graphSelection | property |
graphSelection:IGraphSelection
The selection this mode is acting upon.
public function get graphSelection():IGraphSelection
public function set graphSelection(value:IGraphSelection):void
useLabelModelParameterFinder | property |
useLabelModelParameterFinder:Boolean
Gets or sets a property that determines whether to allow the use of the ILabelModelParameterFinder
to assign new label model parameters.
The default value is true
.
public function get useLabelModelParameterFinder():Boolean
public function set useLabelModelParameterFinder(value:Boolean):void
MoveLabelInputMode | () | Constructor |
public function MoveLabelInputMode(graph:IGraph = null, selection:IGraphSelection = null)
Creates a new instance using the given graph to move the labels in.
It is recommended to use this constructor without parameters and let the instance retrieve the graph instance and selection from the context
Parametersgraph:IGraph (default = null ) — The graph to create the edge in and query the labels from.
| |
selection:IGraphSelection (default = null ) — The selection to use for determining which label is selected.
|
createLabelHitTestable | () | method |
protected function createLabelHitTestable():IHitTestable
Creates the hit testable that will be used to determine whether this mode may be activated.
This implementation returns an instance that delegates to isValidLabelHit
.
IHitTestable —
|
createLabelPositionHandler | () | method |
protected function createLabelPositionHandler(graph:IGraph, label:ILabel):IPositionHandler
Creates the label position handler for the given graph and label.
Parameters
graph:IGraph — The graph.
| |
label:ILabel — The label to create a positionhandler for.
|
IPositionHandler — An instance of LabelPositionHandler
|
See also
initialize | () | method |
override protected function initialize():void
Performs one-time initialization of this instance. This method should not be invoked by subclasses. This will be done automatically upon first installment of this mode.
This code will be executed only once. The Canvas
property will yield null
when
this code is executed. This method should not be used to install this mode into a specific canvas.
Subclasses should always call super.initialize()
first.
isValidLabelHit | () | method |
protected function isValidLabelHit(x:Number, y:Number, context:ICanvasContext):Boolean
Determines whether a valid label has been hit at the specified position.
This implementation checks the graphSelection
to see if there is exactly one label selected
and whether the mouse hits the given label.
Parameters
x:Number — The x coordinate for the hit test.
| |
y:Number — The y coordinate for the hit test.
| |
context:ICanvasContext — The context for hit testing purposes.
|
Boolean — true if a valid label is hit and the label moving should be started here; otherwise, false .
|
onDragCanceled | () | method |
override protected function onDragCanceled():void
Clears the MoveInputMode.positionHandler
property.
onDragFinished | () | method |
override protected function onDragFinished():void
Clears the MoveInputMode.positionHandler
property.
onDragStarting | () | method |
override protected function onDragStarting():void
Registers the MoveInputMode.positionHandler
created during the last
createLabelPositionHandler
call.
See also
onGraphChanged | () | method |
protected function onGraphChanged(oldGraph:IGraph, newGraph:IGraph):void
Called when the graph
property changes.
Parameters
oldGraph:IGraph — The old graph instance.
| |
newGraph:IGraph — The new graph instance.
|
onGraphSelectionChanged | () | method |
protected function onGraphSelectionChanged(oldGraphSelection:IGraphSelection, newGraphSelection:IGraphSelection):void
Called when the graphSelection
property changes.
Parameters
oldGraphSelection:IGraphSelection — The old instance.
| |
newGraphSelection:IGraphSelection — The new instance.
|
setGraph | () | method |
protected function setGraph(newGraph:IGraph):void
Set a new Graph for this mode.
Normally the graph is retrieved from this isntance's AbstractInputMode.inputModeContext
.
If the instance needs to be overridden, this method can be used. Triggers onGraphChanged
.
Parameters
newGraph:IGraph — The new graph.
|
See also
setGraphSelection | () | method |
protected function setGraphSelection(newGraphSelection:IGraphSelection):void
Set a new Graph Selection for this mode.
Normally the graph selection is retrieved from this instance's "AbstractInputMode.inputModeContext
.
If the instance needs to be overridden, this method can be used. Triggers onGraphChanged
.
Parameters
newGraphSelection:IGraphSelection — The new graph selection.
|
See also