DragGroupsPlugin
Provides the ability to assign elements to groups for dragging purposes: when a member of some group is dragged, the other elements of the group can be dragged along with it.
The core concept is of the "DragGroup", which is basically just a tag. Each member of a group can belong to the group in one of two roles:
- active The element, when dragged, causes all of the other members of the group to be dragged too.
- passive The element, when dragged, will not cause any of the other members of the group to be dragged. But when an active member of the group is dragged, passive elements are dragged at the same time.
When you configure this plugin you are required to provide an assignDragGroup function, whose signature is:
assignDragGroup:(v:Vertex) => DragGroupSpec
The return value DragGroupSpec may be either:
- a string, in which case the element is added to the drag group with the given name in an active role
- an object containing
idandactivewhich you can specify the active/passive role - null, in which case the element is not added to a drag group.
Extends
Implements
Methods
$edgeRemoved()
$edgeRemoved(
edge):void
Invoked when an edge has been removed
Parameters
edge
Returns
void
Implementation of
Inherited from
BaseBrowserUIPlugin.$edgeRemoved
$edgeRendered()
$edgeRendered(
p):void
Invoked when an edge has been initially rendered. Only fired once for each edge.
Parameters
p
Returns
void
Implementation of
Inherited from
BaseBrowserUIPlugin.$edgeRendered
$edgeUpdated()
$edgeUpdated(
edge):void
Invoked when an edge has been updated
Parameters
edge
Returns
void
Implementation of
Inherited from
BaseBrowserUIPlugin.$edgeUpdated
$groupCollapsed()
$groupCollapsed(
element):void
Empty implementation of $groupCollapsed
Parameters
element
ViewportGroupElement<BrowserElement>
Returns
void
Implementation of
BrowserUIPlugin.$groupCollapsed
Inherited from
BaseBrowserUIPlugin.$groupCollapsed
$groupExpanded()
$groupExpanded(
element):void
Empty implementation of $groupExpanded.
Parameters
element
ViewportGroupElement<BrowserElement>
Returns
void
Implementation of
BrowserUIPlugin.$groupExpanded
Inherited from
BaseBrowserUIPlugin.$groupExpanded
$groupMemberAdded()
$groupMemberAdded(
element):void
Empty implementation of $groupMemberAdded.
Parameters
element
ViewportElement<BrowserElement>
Returns
void
Implementation of
BrowserUIPlugin.$groupMemberAdded
Inherited from
BaseBrowserUIPlugin.$groupMemberAdded
$groupMemberRemoved()
$groupMemberRemoved(
element):void
Empty implementation of $groupMemberRemoved.
Parameters
element
ViewportElement<BrowserElement>
Returns
void
Implementation of
BrowserUIPlugin.$groupMemberRemoved
Inherited from
BaseBrowserUIPlugin.$groupMemberRemoved
$groupRemoved()
$groupRemoved(
element):void
Empty implementation of $groupRemoved.
Parameters
element
ViewportGroupElement<BrowserElement>
Returns
void
Implementation of
Inherited from
BaseBrowserUIPlugin.$groupRemoved
$groupResized()
$groupResized(
params):void
Empty implementation of $groupResized.
Parameters
params
GroupResizeResult<BrowserElement>
Returns
void
Implementation of
Inherited from
BaseBrowserUIPlugin.$groupResized
$nodeRemoved()
$nodeRemoved(
element):void
Empty implementation of $nodeRemoved.
Parameters
element
ViewportElement<BrowserElement>
Returns
void
Implementation of
Inherited from
BaseBrowserUIPlugin.$nodeRemoved
$vertexRerendered()
$vertexRerendered(
p):void
Empty implementation of $vertexRerendered.
Parameters
p
el
id
string
size
vertex
Returns
void
Implementation of
BrowserUIPlugin.$vertexRerendered
Inherited from
BaseBrowserUIPlugin.$vertexRerendered
$vertexResized()
$vertexResized(
element,width,height):void
Empty implementation of $vertexResized
Parameters
element
ViewportElement<BrowserElement>
width
number
height
number
Returns
void
Implementation of
BrowserUIPlugin.$vertexResized
Inherited from
BaseBrowserUIPlugin.$vertexResized
$vertexRotated()
$vertexRotated(
element,rotation):void
Empty implementation of $vertexRotated.
Parameters
element
ViewportElement<BrowserElement>
rotation
number
Returns
void
Implementation of
BrowserUIPlugin.$vertexRotated
Inherited from
BaseBrowserUIPlugin.$vertexRotated
$vertexSynced()
$vertexSynced(
element):void
Empty implementation of $vertexSynced
Parameters
element
ViewportElement<BrowserElement>
Returns
void
Implementation of
Inherited from
BaseBrowserUIPlugin.$vertexSynced
$vertexUpdated()
$vertexUpdated(
element,reason):void
Empty implementation of $vertexUpdated
Parameters
element
ViewportElement<BrowserElement>
reason
VertexUpdatedReason
Returns
void
Implementation of
BrowserUIPlugin.$vertexUpdated
Inherited from
BaseBrowserUIPlugin.$vertexUpdated
addToDragGroup()
addToDragGroup(
spec, ...objects):void
Adds the given objects to the given drag group.
Parameters
spec
Spec for the drag group. If you supply a string, then all objects are added to the drag group with that name, and they are marked "active". If you supply an object in the form { id:string, active?:boolean } then all the objects are added to the drag group with the active state you provide.
objects
...(string | Node | ObjectData | VisuallyJSDOMElement)[]
Objects to add.
Returns
void
assignToDragGroup()
assignToDragGroup(...
objects):void
Runs each of the given objects through the code that automatically assigns them to a drag group.
Parameters
objects
...(string | Node | ObjectData | VisuallyJSDOMElement)[]
Returns
void
removeFromDragGroup()
removeFromDragGroup(...
objects):void
Removes the given object(s) from any drag group they may belong to. You don't need to specify the name of the drag group since an object may belong to only one at a time.
Parameters
objects
...(string | Node | ObjectData | BrowserElement)[]
Returns
void