An ItemDropInputMode<T> specialized to the drag and drop of INodes.
Remarks
By default, this input mode copies the layout, style, tag, ports, and labels of the dragged item to the new node.
It can visualize a preview of the dragged item during the drag operation, and supports snapping via the snapContext and highlighting of the dropTarget via a HighlightIndicatorManager<T>. In addition, it supports dragging nodes into groups and, optionally, folders. In this case the isValidParentPredicate will be queried if the dropped upon node is actually a valid parent.
Examples
NodeDropInputMode
is installed as child mode of a GraphEditorInputMode and can be retrieved from the nodeDropInputMode property.Type Details
- yfiles module
- view-editor
- yfiles-umd modules
- view-editor, view-table, view
- Legacy UMD name
- yfiles.input.NodeDropInputMode
See Also
Constructors
Initializes a new instance of the NodeDropInputMode class for INodes.
Remarks
Parameters
A map of options to pass to the method.
- isGroupNodePredicate - function(INode):boolean
The callback for testing whether a dragged node should be created as a group node. This option sets the isGroupNodePredicate property on the created object.
Signature Details
function(obj: INode) : boolean
Represents the method that defines a set of criteria and determines whether the specified object meets those criteria.Parameters
- obj - INode
- The object to compare against the criteria defined within the method represented by this delegate.
Returns
- boolean
true
if obj meets the criteria defined within the method represented by this delegate; otherwise,false
.
- isValidParentPredicate - function(INode):boolean
The callback for testing whether an existing node in the graph can be used as a valid parent node in the context of grouping. This option sets the isValidParentPredicate property on the created object.
Signature Details
function(obj: INode) : boolean
Represents the method that defines a set of criteria and determines whether the specified object meets those criteria.Parameters
- obj - INode
- The object to compare against the criteria defined within the method represented by this delegate.
Returns
- boolean
true
if obj meets the criteria defined within the method represented by this delegate; otherwise,false
.
- allowFolderNodeAsParent - boolean
A value indicating whether nodes can be dropped on collapsed folder nodes. This option sets the allowFolderNodeAsParent property on the created object.
- allowNonGroupNodeAsParent - boolean
A value indicating whether nodes can be dropped onto nodes that are no group nodes. This option sets the allowNonGroupNodeAsParent property on the created object.
- showPreview - boolean
Whether a preview of the dragged element is displayed during the drag This option sets the showPreview property on the created object.
- snappingEnabled - boolean
Whether dragged items are snapped. This option sets the snappingEnabled property on the created object.
- disableSnappingRecognizer - function(Object, EventArgs):boolean
The event recognizer that determines whether to disable snapping temporarily. This option sets the disableSnappingRecognizer property on the created object.
Signature Details
function(eventSource: any, evt: EventArgs) : boolean
A callback that recognizes events.Given a sender and an event argument, delegates decide whether the event is treated as a match depending on the context.Parameters
- eventSource - any
- The source of the event.
- evt - EventArgs
- The arguments of the event to be decided to handle.
Returns
- boolean
true
if theevt
is considered to be handled.
- highlightDropTarget - boolean
Whether the drop target is highlighted. This option sets the highlightDropTarget property on the created object.
- snapContext - SnapContext
The snapContext which is used to snap the dragged element during the drag. This option sets the snapContext property on the created object.
- dropTarget - IModelItem
The drop target at snappedMousePosition This option sets the dropTarget property on the created object.
- itemCreator - function(IInputModeContext, IGraph, Object, IModelItem, Point):INode
The callback for item creation. This option sets the itemCreator property on the created object.
Signature Details
function(context: IInputModeContext, graph: IGraph, dropData: any, dropTarget: IModelItem, dropLocation: Point) : INode
Creates a copy of the dragged item in graph at the specified location.Parameters
- context - IInputModeContext
- The context for which the item should be created.
- graph - IGraph
- The
in which to create the item. - dropData - any
- The data containg the item that was dragged and should therefore be created.
- dropTarget - IModelItem
- The
on which the item is dropped. - dropLocation - Point
- The location the item should be created.
Returns
- INode
- The item that has been created, or
null
if no item should be created.
- priority - number
- exclusive - boolean
A value indicating whether this mode will be the only one running when it has the mutex. This option sets the exclusive property on the created object.
- enabled - boolean
The enabled state of this input mode. This option sets the enabled property on the created object.
- dragDropEffect - DragDropEffects
The DragDropEffects that will be used for drags on the canvas. This option sets the dragDropEffect property on the created object.
- validDropHitTestable - IHitTestable
The IHitTestable that determines whether the given location is a valid drop location. This option sets the validDropHitTestable property on the created object.
- captureMouseInputDuringDrag - boolean
A value indicating whether to capture mouse input during drag operations. This option sets the captureMouseInputDuringDrag property on the created object.
Initializes a new instance of the NodeDropInputMode class for the expected data type.
Parameters
A map of options to pass to the method.
- expectedType - string
- The type that is used in startDrag.
- isGroupNodePredicate - function(INode):boolean
The callback for testing whether a dragged node should be created as a group node. This option sets the isGroupNodePredicate property on the created object.
Signature Details
function(obj: INode) : boolean
Represents the method that defines a set of criteria and determines whether the specified object meets those criteria.Parameters
- obj - INode
- The object to compare against the criteria defined within the method represented by this delegate.
Returns
- boolean
true
if obj meets the criteria defined within the method represented by this delegate; otherwise,false
.
- isValidParentPredicate - function(INode):boolean
The callback for testing whether an existing node in the graph can be used as a valid parent node in the context of grouping. This option sets the isValidParentPredicate property on the created object.
Signature Details
function(obj: INode) : boolean
Represents the method that defines a set of criteria and determines whether the specified object meets those criteria.Parameters
- obj - INode
- The object to compare against the criteria defined within the method represented by this delegate.
Returns
- boolean
true
if obj meets the criteria defined within the method represented by this delegate; otherwise,false
.
- allowFolderNodeAsParent - boolean
A value indicating whether nodes can be dropped on collapsed folder nodes. This option sets the allowFolderNodeAsParent property on the created object.
- allowNonGroupNodeAsParent - boolean
A value indicating whether nodes can be dropped onto nodes that are no group nodes. This option sets the allowNonGroupNodeAsParent property on the created object.
- showPreview - boolean
Whether a preview of the dragged element is displayed during the drag This option sets the showPreview property on the created object.
- snappingEnabled - boolean
Whether dragged items are snapped. This option sets the snappingEnabled property on the created object.
- disableSnappingRecognizer - function(Object, EventArgs):boolean
The event recognizer that determines whether to disable snapping temporarily. This option sets the disableSnappingRecognizer property on the created object.
Signature Details
function(eventSource: any, evt: EventArgs) : boolean
A callback that recognizes events.Given a sender and an event argument, delegates decide whether the event is treated as a match depending on the context.Parameters
- eventSource - any
- The source of the event.
- evt - EventArgs
- The arguments of the event to be decided to handle.
Returns
- boolean
true
if theevt
is considered to be handled.
- highlightDropTarget - boolean
Whether the drop target is highlighted. This option sets the highlightDropTarget property on the created object.
- snapContext - SnapContext
The snapContext which is used to snap the dragged element during the drag. This option sets the snapContext property on the created object.
- dropTarget - IModelItem
The drop target at snappedMousePosition This option sets the dropTarget property on the created object.
- itemCreator - function(IInputModeContext, IGraph, Object, IModelItem, Point):INode
The callback for item creation. This option sets the itemCreator property on the created object.
Signature Details
function(context: IInputModeContext, graph: IGraph, dropData: any, dropTarget: IModelItem, dropLocation: Point) : INode
Creates a copy of the dragged item in graph at the specified location.Parameters
- context - IInputModeContext
- The context for which the item should be created.
- graph - IGraph
- The
in which to create the item. - dropData - any
- The data containg the item that was dragged and should therefore be created.
- dropTarget - IModelItem
- The
on which the item is dropped. - dropLocation - Point
- The location the item should be created.
Returns
- INode
- The item that has been created, or
null
if no item should be created.
- priority - number
- exclusive - boolean
A value indicating whether this mode will be the only one running when it has the mutex. This option sets the exclusive property on the created object.
- enabled - boolean
The enabled state of this input mode. This option sets the enabled property on the created object.
- dragDropEffect - DragDropEffects
The DragDropEffects that will be used for drags on the canvas. This option sets the dragDropEffect property on the created object.
- validDropHitTestable - IHitTestable
The IHitTestable that determines whether the given location is a valid drop location. This option sets the validDropHitTestable property on the created object.
- captureMouseInputDuringDrag - boolean
A value indicating whether to capture mouse input during drag operations. This option sets the captureMouseInputDuringDrag property on the created object.
Initializes a new instance of the NodeDropInputMode class for the expected data type.
Parameters
A map of options to pass to the method.
- expectedType - string[]
- A list of types that are used in startDrag.
- isGroupNodePredicate - function(INode):boolean
The callback for testing whether a dragged node should be created as a group node. This option sets the isGroupNodePredicate property on the created object.
Signature Details
function(obj: INode) : boolean
Represents the method that defines a set of criteria and determines whether the specified object meets those criteria.Parameters
- obj - INode
- The object to compare against the criteria defined within the method represented by this delegate.
Returns
- boolean
true
if obj meets the criteria defined within the method represented by this delegate; otherwise,false
.
- isValidParentPredicate - function(INode):boolean
The callback for testing whether an existing node in the graph can be used as a valid parent node in the context of grouping. This option sets the isValidParentPredicate property on the created object.
Signature Details
function(obj: INode) : boolean
Represents the method that defines a set of criteria and determines whether the specified object meets those criteria.Parameters
- obj - INode
- The object to compare against the criteria defined within the method represented by this delegate.
Returns
- boolean
true
if obj meets the criteria defined within the method represented by this delegate; otherwise,false
.
- allowFolderNodeAsParent - boolean
A value indicating whether nodes can be dropped on collapsed folder nodes. This option sets the allowFolderNodeAsParent property on the created object.
- allowNonGroupNodeAsParent - boolean
A value indicating whether nodes can be dropped onto nodes that are no group nodes. This option sets the allowNonGroupNodeAsParent property on the created object.
- showPreview - boolean
Whether a preview of the dragged element is displayed during the drag This option sets the showPreview property on the created object.
- snappingEnabled - boolean
Whether dragged items are snapped. This option sets the snappingEnabled property on the created object.
- disableSnappingRecognizer - function(Object, EventArgs):boolean
The event recognizer that determines whether to disable snapping temporarily. This option sets the disableSnappingRecognizer property on the created object.
Signature Details
function(eventSource: any, evt: EventArgs) : boolean
A callback that recognizes events.Given a sender and an event argument, delegates decide whether the event is treated as a match depending on the context.Parameters
- eventSource - any
- The source of the event.
- evt - EventArgs
- The arguments of the event to be decided to handle.
Returns
- boolean
true
if theevt
is considered to be handled.
- highlightDropTarget - boolean
Whether the drop target is highlighted. This option sets the highlightDropTarget property on the created object.
- snapContext - SnapContext
The snapContext which is used to snap the dragged element during the drag. This option sets the snapContext property on the created object.
- dropTarget - IModelItem
The drop target at snappedMousePosition This option sets the dropTarget property on the created object.
- itemCreator - function(IInputModeContext, IGraph, Object, IModelItem, Point):INode
The callback for item creation. This option sets the itemCreator property on the created object.
Signature Details
function(context: IInputModeContext, graph: IGraph, dropData: any, dropTarget: IModelItem, dropLocation: Point) : INode
Creates a copy of the dragged item in graph at the specified location.Parameters
- context - IInputModeContext
- The context for which the item should be created.
- graph - IGraph
- The
in which to create the item. - dropData - any
- The data containg the item that was dragged and should therefore be created.
- dropTarget - IModelItem
- The
on which the item is dropped. - dropLocation - Point
- The location the item should be created.
Returns
- INode
- The item that has been created, or
null
if no item should be created.
- priority - number
- exclusive - boolean
A value indicating whether this mode will be the only one running when it has the mutex. This option sets the exclusive property on the created object.
- enabled - boolean
The enabled state of this input mode. This option sets the enabled property on the created object.
- dragDropEffect - DragDropEffects
The DragDropEffects that will be used for drags on the canvas. This option sets the dragDropEffect property on the created object.
- validDropHitTestable - IHitTestable
The IHitTestable that determines whether the given location is a valid drop location. This option sets the validDropHitTestable property on the created object.
- captureMouseInputDuringDrag - boolean
A value indicating whether to capture mouse input during drag operations. This option sets the captureMouseInputDuringDrag property on the created object.
Properties
Gets or sets a value indicating whether nodes can be dropped on collapsed folder nodes.
Remarks
true
, dropping nodes on collapsed folder nodes will create the node inside the folder node in the master graph. In that case the ItemCreated event will yield the node in the master graph. The node will not be contained in the currently visible graph. By default this feature is disabled. In any case the isValidParentPredicate will be queried additionally if the node is a valid parent.See Also
Gets or sets a value indicating whether nodes can be dropped onto nodes that are no group nodes.
Remarks
See Also
Gets or sets a value indicating whether to capture mouse input during drag operations.
Remarks
true
and thus prevents mouse events from being processed by visuals in the canvas.Defined in
Gets the installed controller.
Defined in
Gets or sets the event recognizer that determines whether to disable snapping temporarily.
Signature Details
function(eventSource: any, evt: EventArgs) : boolean
Parameters
- eventSource - any
- The source of the event.
- evt - EventArgs
- The arguments of the event to be decided to handle.
Returns
- boolean
true
if theevt
is considered to be handled.
Defined in
Gets or sets the DragDropEffects that will be used for drags on the canvas.
Defined in
Gets the currently dragged IModelItem instance.
Gets the data carried by a drag operation.
Gets the mouse position after dropping an item.
Remarks
Defined in
Gets the drop target at snappedMousePosition
Gets or sets the enabled state of this input mode.
Remarks
Examples
Defined in
Gets or sets a value indicating whether this mode will be the only one running when it has the mutex.
Remarks
The value of this property will be delegated to the exclusive property of the controller.
If this mode is marked as exclusive and has the mutex, all other modes added to the same MultiplexingInputMode will be deactivated. Otherwise it will always run concurrently with all other modes.
Defined in
Gets or sets whether the drop target is highlighted.
Gets the context instance this mode is currently installed in or null
if this instance is not installed.
Remarks
Implements
Gets a value indicating whether a drag operation is currently in progress.
Defined in
Gets or sets the callback for testing whether a dragged node should be created as a group node.
Remarks
false
always. Can be set to a different value to implement custom group node detection.Signature Details
function(obj: INode) : boolean
Parameters
- obj - INode
- The object to compare against the criteria defined within the method represented by this delegate.
Returns
- boolean
true
if obj meets the criteria defined within the method represented by this delegate; otherwise,false
.
See Also
Gets or sets the callback for testing whether an existing node in the graph can be used as a valid parent node in the context of grouping.
Remarks
true
always. Can be set to a different value to implement custom group node detection. Note that the node passed to the predicate may be null
to indicate that the node will be placed at the root of the hierarchy.Signature Details
function(obj: INode) : boolean
Parameters
- obj - INode
- The object to compare against the criteria defined within the method represented by this delegate.
Returns
- boolean
true
if obj meets the criteria defined within the method represented by this delegate; otherwise,false
.
See Also
Gets or sets the callback for item creation.
Remarks
Signature Details
function(context: IInputModeContext, graph: IGraph, dropData: any, dropTarget: IModelItem, dropLocation: Point) : INode
Parameters
- context - IInputModeContext
- The context for which the item should be created.
- graph - IGraph
- The
in which to create the item. - dropData - any
- The data containg the item that was dragged and should therefore be created.
- dropTarget - IModelItem
- The
on which the item is dropped. - dropLocation - Point
- The location the item should be created.
Returns
- INode
- The item that has been created, or
null
if no item should be created.
See Also
Defined in
Gets the last processed drag event argument.
Defined in
Gets the current mouse position during drag operations.
Remarks
Defined in
Gets the graph displayed as item preview.
Gets the priority of this input mode.
Remarks
See Also
Implements
Gets or sets whether a preview of the dragged element is displayed during the drag
Gets or sets the snapContext which is used to snap the dragged element during the drag.
Remarks
null
(the default) this input mode tries to obtain the snapContext from the IInputModeContext. To explicitly disable snapping, a snapContext implementation that does nothing has to be set to this instance.See Also
Defined in
Gets the current snapped mouse position during drag operations.
Remarks
Defined in
Gets or sets whether dragged items are snapped.
Gets or sets the IHitTestable that determines whether the given location is a valid drop location.
Methods
Called to adjust the dropEffect accordingly.
Parameters
A map of options to pass to the method.
- evt - DragEventArgs
- The event args of the drag event to adjust the effects for.
Returns
- ↪boolean
true
if the drag event is handled by this input mode.
Defined in
Cleanly cancels this mode.
Implements
Cleanup method that calls cleanUpSnapContext, cleanUpPreview and cleanUpDropTarget.
Remarks
Defined in
Cleans up the drop target and its highlighting.
Defined in
Cleans up the item preview.
Cleans up the snap context.
Defined in
Callback registered on the SnapContext that collects SnapResults for the dragged element.
Remarks
Parameters
A map of options to pass to the method.
- source - Object
- The SnapContext this callback is registered at.
- evt - CollectSnapResultsEventArgs
- The arguments describing the movement SnapResults shall be collected for.
Overrides
Helper method that yields a suitably configured InputModeEventArgs for this input mode.
Returns
- ↪InputModeEventArgs
- An input mode event argument that is configured for this instance.
Defined in
createNode
(context: IInputModeContext, graph: IGraph, node: INode, dropTarget: IModelItem, layout: Rect) : INodeCreates the node in the graph after it's been dropped.
Remarks
Parameters
A map of options to pass to the method.
- context - IInputModeContext
- The context for which the node should be created.
- graph - IGraph
- The Graph in which to create the item.
- node - INode
- The node that was dragged and should therefore be created.
- dropTarget - IModelItem
- The IModelItem on which the node is dropped.
- layout - Rect
- The bounds of the new node.
Returns
- ↪INode
- a newly created node.
See Also
Returns the drop target at the specified location.
Remarks
null
is returned.Parameters
A map of options to pass to the method.
- dragLocation - Point
- The location to return the drop target for.
Returns
- ↪IModelItem
- The drop target at the specified location or
null
if no drop target can be found.
Overrides
Calculates the layout of the new node.
Remarks
Parameters
A map of options to pass to the method.
Returns
See Also
Initializes the drop target.
Defined in
Initializes the item preview.
Remarks
See Also
Defined in
Initializes the snapping context.
Installs this mode into the given canvas.
Remarks
Parameters
A map of options to pass to the method.
- context - IInputModeContext
- the context to install this mode into
- controller - ConcurrencyController
- The controller for this mode.
See Also
Implements
Called after cancel has been called.
Remarks
Can be overridden in subclasses to perform additional actions after the mode has been canceled.
This implementation does nothing.
Defined in
Called after the active property of the installed ConcurrencyController has been set to true
.
Remarks
Can be overridden in subclasses to perform additional actions after the mode has been activated.
Overriding implementations should call the base implementation.
Defined in
Called after the active property of the installed ConcurrencyController has been set to false
.
Remarks
Can be overridden in subclasses to perform additional actions after the mode has been deactivated.
Overriding implementations should call the base implementation.
Overrides
Called once a drag has been dropped on the canvas.
Overrides
Called once a drag has entered the canvas.
Remarks
Overrides
Called whenever a drag is over the canvas.
Overrides
Called once a drag has left the canvas.
Overrides
Called whenever a new item is created
Defined in
Called after tryStop has been called.
Remarks
Can be overridden in subclasses to perform additional actions after the mode has been stopped.
This implementation does nothing.
Defined in
Subclasses shall fill the specified graph that is used to preview the dragged item.
Parameters
A map of options to pass to the method.
- previewGraph - IGraph
- The preview graph to fill.
See Also
Overrides
Sets the drag location and calls updatePreview to update the layout of item preview based on the mouse coordinates and the results of the snapContext.
Parameters
A map of options to pass to the method.
- location - Point
- The current location of the mouse in world coordinates.
Overrides
Overridden to only return true
if this instance does not currently have the input mutex.
Uninstalls this mode from the canvas.
Remarks
Parameters
A map of options to pass to the method.
- context - IInputModeContext
- the context
Implements
Calls getDropTarget for snappedMousePosition and sets the returned item as dropTarget.
Remarks
Parameters
A map of options to pass to the method.
- dragLocation - Point
- The location to update the drop target for.
Defined in
Subclasses shall update the preview graph so the dragged item is displayed at the specified dragLocation
.
Parameters
A map of options to pass to the method.
See Also
Overrides
Events
Occurs when a drag operation is dropped onto the CanvasComponent into which this instance is installed.
Remarks
No event is raised
- if this instance is not enabled,
- if another concurrent input mode is active or
- the data from the drag operation does not conform to the expected type.
To get additional data for the event, clients should use the sender which is set to the sending DropInputMode. The EventArgs provide no useful data.
See Also
Defined in
Event Registration
addDragDroppedListener(function(this, InputModeEventArgs):void)
Event Deregistration
removeDragDroppedListener(function(this, InputModeEventArgs):void)
Signature Details
function(sender: this, evt: InputModeEventArgs)
Parameters
- sender - this
- The source of the event.
- evt - InputModeEventArgs
- An object that contains the event data.
Occurs when a drag operation enters the CanvasComponent into which this instance is installed.
Remarks
No event is raised
- if this instance is not enabled,
- if another concurrent input mode is active or
- the data from the drag operation does not conform to the expected type.
To get additional data for the event, clients should use the sender which is set to the sending DropInputMode. The EventArgs provide no useful data.
See Also
Defined in
Event Registration
addDragEnteredListener(function(this, InputModeEventArgs):void)
Event Deregistration
removeDragEnteredListener(function(this, InputModeEventArgs):void)
Signature Details
function(sender: this, evt: InputModeEventArgs)
Parameters
- sender - this
- The source of the event.
- evt - InputModeEventArgs
- An object that contains the event data.
Occurs when a drag operation leaves the CanvasComponent into which this instance is installed.
Remarks
No event is raised
- if this instance is not enabled,
- if another concurrent input mode is active or
- the data from the drag operation does not conform to the expected type.
To get additional data for the event, clients should use the sender which is set to the sending DropInputMode. The EventArgs provide no useful data.
See Also
Defined in
Event Registration
addDragLeftListener(function(this, InputModeEventArgs):void)
Event Deregistration
removeDragLeftListener(function(this, InputModeEventArgs):void)
Signature Details
function(sender: this, evt: InputModeEventArgs)
Parameters
- sender - this
- The source of the event.
- evt - InputModeEventArgs
- An object that contains the event data.
Occurs when a drag operation drags over the CanvasComponent into which this instance is installed.
Remarks
No event is raised
- if this instance is not enabled,
- if another concurrent input mode is active or
- the data from the drag operation does not conform to the expected type.
To get additional data for the event, clients should use the sender which is set to the sending DropInputMode. The EventArgs provide no useful data.
See Also
Defined in
Event Registration
addDragOverListener(function(this, InputModeEventArgs):void)
Event Deregistration
removeDragOverListener(function(this, InputModeEventArgs):void)
Signature Details
function(sender: this, evt: InputModeEventArgs)
Parameters
- sender - this
- The source of the event.
- evt - InputModeEventArgs
- An object that contains the event data.
Occurs when a new item gets created by this input mode.
Defined in
Event Registration
addItemCreatedListener(function(this, ItemEventArgs<INode>):void)
Event Deregistration
removeItemCreatedListener(function(this, ItemEventArgs<INode>):void)
Signature Details
function(sender: this, evt: ItemEventArgs<INode>)
Parameters
- sender - this
- The source of the event.
- evt - ItemEventArgs<INode>
- An object that contains the event data.
Static Methods
startDrag
(dragSource: HTMLElement | SVGElement, node: INode, dragDropEffects?: DragDropEffects, useCssCursors?: boolean, dragPreview?: HTMLElement | SVGElement) : DragSourceStarts a drag and drop operation for a INode.
Remarks
This method creates a DragSource, and then invokes startDrag with a DragDropItem that contains the node
and the corresponding type.
If useCssCursors
is enabled, the following CSS classes are assigned to elements hovered during a drag operation, depending on the allowed drag-drop operations for these elements:
yfiles-cursor-dragdrop-move
yfiles-cursor-dragdrop-link
yfiles-cursor-dragdrop-all
yfiles-cursor-dragdrop-no-drop
Parameters
A map of options to pass to the method.
- dragSource - HTMLElement | SVGElement
- The source of the drag operation.
- node - INode
- The node to drag.
- dragDropEffects - DragDropEffects
- The allowed drag drop effects.
- useCssCursors - boolean
- Whether to adjust the classes of elements being hovered over during the drag. The default is
true
. - dragPreview - HTMLElement | SVGElement
- Optional element that should be shown during dragging, e.g. outside of the GraphComponent. Note that this feature requires support for CSS pointer-events and should not be used in browsers that do not support it.