Class DraggingOptions
- Namespace
- Northwoods.Go
- Assembly
- Northwoods.GoDiagram.WinForms.dll
This class contains options for dragging and moving parts.
public class DraggingOptions
- Inheritance
-
DraggingOptions
- Inherited Members
Remarks
This is used by MoveParts(IEnumerable<Part>, Point, bool, DraggingOptions) and ComputeMove(Part, Point, DraggingOptions).
Both the Diagram and its DraggingTool have a DraggingOptions instance. Typically, only the DraggingTool one is used, unless the Diagram has no DraggingTool defined.
In typical DraggingTool operation you do not need to create or modify a DraggingOptions instance. Setting properties on the DraggingTool such as IsGridSnapEnabled sets the value on the DragOptions instance for you.
Constructors
DraggingOptions()
Constructs a DraggingOptions.
public DraggingOptions()
Properties
DragsLink
Gets or sets whether the user can move a single Link, disconnecting it from connected nodes and possibly connecting it to valid ports.
public bool DragsLink { get; set; }
Property Value
Remarks
By default this property is false.
In typical DraggingTool operation this is set via DragsLink.
DragsMembers
Determines whether dragging a Group also drags its member Parts if there is no Group.Placeholder.
public bool DragsMembers { get; set; }
Property Value
Remarks
By default this property is true.
DragsTree
Gets or sets whether moving or copying a node also includes all of the node's tree children and their descendants, along with the links to those additional nodes.
public bool DragsTree { get; set; }
Property Value
Remarks
By default this property is false.
In typical DraggingTool operation this is set via DragsTree.
GridSnapCellSize
Gets or sets the size of the grid cell used when snapping during a drag.
public Size GridSnapCellSize { get; set; }
Property Value
Remarks
By default this property is the Size(double.NaN, double.NaN), which causes this tool to use the GridCellSize value of the Grid.
In typical DraggingTool operation this is set via GridSnapCellSize.
GridSnapCellSpot
Gets or sets the Spot that specifies what point in the grid cell dragged parts snap to, if the value of IsGridSnapEnabled is true.
public Spot GridSnapCellSpot { get; set; }
Property Value
Remarks
By default this property is TopLeft.
In typical DraggingTool operation this is set via GridSnapCellSpot.
GridSnapOrigin
Gets or sets the snapping grid's origin point, in document coordinates, if the value of IsGridSnapEnabled is true.
public Point GridSnapOrigin { get; set; }
Property Value
Remarks
By default this property is the Point(double.NaN, double.NaN).
In typical DraggingTool operation this is set via GridSnapOrigin.
GroupsAlwaysMove
Determines whether or not Groups will ensure their member Parts always move, even if those member parts have Copyable and Movable set to false.
public bool GroupsAlwaysMove { get; set; }
Property Value
Remarks
By default this property is true.
GroupsSnapMembers
Determines whether or not Groups will snap their member Parts in addition to themselves when moving.
public bool GroupsSnapMembers { get; set; }
Property Value
Remarks
By default this property is false.
IsGridSnapEnabled
Whether or not the dragged parts snap to the Grid.
public bool IsGridSnapEnabled { get; set; }
Property Value
Remarks
By default this property is false.
In typical DraggingTool operation this is set via IsGridSnapEnabled.
IsGridSnapRealtime
If dragging with the DraggingTool, whether or not Parts snap to a grid (if applicable) in real-time, or only at the end of the dragging transaction.
public bool IsGridSnapRealtime { get; set; }
Property Value
Remarks
By default this property is true.
In typical DraggingTool operation this is set via IsGridSnapRealtime.