Diagram Class

Definition

DomainClass Diagram Description for Microsoft.VisualStudio.Modeling.Diagrams.Diagram

public ref class Diagram abstract : Microsoft::VisualStudio::Modeling::Diagrams::NodeShape, IDisposable
[Microsoft.VisualStudio.Modeling.Design.DescriptionResource("Microsoft.VisualStudio.Modeling.Diagrams.Diagram.Description", typeof(Microsoft.VisualStudio.Modeling.Diagrams.CoreDesignSurfaceDomainModel), "Microsoft.VisualStudio.Modeling.Diagrams.GeneratedCode.DomainModelResx")]
[Microsoft.VisualStudio.Modeling.Design.DisplayNameResource("Microsoft.VisualStudio.Modeling.Diagrams.Diagram.DisplayName", typeof(Microsoft.VisualStudio.Modeling.Diagrams.CoreDesignSurfaceDomainModel), "Microsoft.VisualStudio.Modeling.Diagrams.GeneratedCode.DomainModelResx")]
[Microsoft.VisualStudio.Modeling.DomainModelOwner(typeof(Microsoft.VisualStudio.Modeling.Diagrams.CoreDesignSurfaceDomainModel))]
[Microsoft.VisualStudio.Modeling.DomainObjectId("3102e0d1-1221-458d-834f-2dc0769ce683")]
[System.CLSCompliant(true)]
[System.ComponentModel.TypeDescriptionProvider(typeof(Microsoft.VisualStudio.Modeling.Diagrams.DiagramTypeDescriptionProvider))]
[System.Diagnostics.DebuggerDisplay("{GetType().Name,nq} (Name = {namePropertyStorage})")]
public abstract class Diagram : Microsoft.VisualStudio.Modeling.Diagrams.NodeShape, IDisposable
[<Microsoft.VisualStudio.Modeling.Design.DescriptionResource("Microsoft.VisualStudio.Modeling.Diagrams.Diagram.Description", typeof(Microsoft.VisualStudio.Modeling.Diagrams.CoreDesignSurfaceDomainModel), "Microsoft.VisualStudio.Modeling.Diagrams.GeneratedCode.DomainModelResx")>]
[<Microsoft.VisualStudio.Modeling.Design.DisplayNameResource("Microsoft.VisualStudio.Modeling.Diagrams.Diagram.DisplayName", typeof(Microsoft.VisualStudio.Modeling.Diagrams.CoreDesignSurfaceDomainModel), "Microsoft.VisualStudio.Modeling.Diagrams.GeneratedCode.DomainModelResx")>]
[<Microsoft.VisualStudio.Modeling.DomainModelOwner(typeof(Microsoft.VisualStudio.Modeling.Diagrams.CoreDesignSurfaceDomainModel))>]
[<Microsoft.VisualStudio.Modeling.DomainObjectId("3102e0d1-1221-458d-834f-2dc0769ce683")>]
[<System.CLSCompliant(true)>]
[<System.ComponentModel.TypeDescriptionProvider(typeof(Microsoft.VisualStudio.Modeling.Diagrams.DiagramTypeDescriptionProvider))>]
[<System.Diagnostics.DebuggerDisplay("{GetType().Name,nq} (Name = {namePropertyStorage})")>]
type Diagram = class
    inherit NodeShape
    interface IDisposable
Public MustInherit Class Diagram
Inherits NodeShape
Implements IDisposable
Inheritance
Attributes
Implements

Constructors

Diagram(Partition, PropertyAssignment[])

Constructor.

Fields

BackgroundGradientFieldName

Unique identifier for the background gradient field for this shape.

(Inherited from NodeShape)
BaseFontNameDomainPropertyId

BaseFontName domain property Id.

BaseFontSizeDomainPropertyId

BaseFontSize domain property Id.

DiagramIdDomainPropertyId

DiagramId domain property Id.

DoLineRoutingDomainPropertyId

DoLineRouting domain property Id.

DomainClassId

Diagram domain class Id.

DoResizeParentDomainPropertyId

DoResizeParent domain property Id.

DoShapeAnchoringDomainPropertyId

DoShapeAnchoring domain property Id.

DoViewFixupDomainPropertyId

DoViewFixup domain property Id.

IsCompleteViewDomainPropertyId

IsCompleteView domain property Id.

NameDomainPropertyId

Name domain property Id.

PlaceUnplacedShapesDomainPropertyId

PlaceUnplacedShapes domain property Id.

Properties

AbsoluteBoundingBox

Gets the bounding rectangle in world units relative to the top-left of the diagram.

(Inherited from NodeShape)
AbsoluteBoundingBoxToEnsureVisible

Gets the bounding rectangle that DiagramClientView.EnsureVisible will use. The rectangle is in world units and relative to the top-left of the diagram.

(Inherited from ShapeElement)
AbsoluteBounds

Gets or sets the value of AbsoluteBounds domain property. Description for Microsoft.VisualStudio.Modeling.Diagrams.NodeShape.Absolute Bounds

(Inherited from NodeShape)
AbsoluteCenter

Gets the Center of the ShapeElement's Absolute Bounds relative to the Diagram's top-left corner regardless of the parent ShapeElement.

(Inherited from ShapeElement)
AccessibilityObject

Gets the AccessibleObject assigned to the element

(Inherited from ShapeElement)
AccessibleDefaultActionDescription

Gets the default action description of the element for use by accessibility client applications

(Inherited from ShapeElement)
AccessibleDescription
AccessibleHelp

Gets a description of what the element does or how the element is used.

(Inherited from ShapeElement)
AccessibleHelpTopicFileName

Gets the path to the Help file associated with this element.

(Inherited from ShapeElement)
AccessibleHelpTopicId

Gets the help topic identifier associated with this element.

(Inherited from ShapeElement)
AccessibleName

Diagrams return their own name, not their MEL's name.

AccessibleRole

Gets the accessible role of the control

(Inherited from ShapeElement)
AccessibleState

Gets additional accessible states of this shape.
By default, the following states are pre-determined: (1) AccessibleStates.Selected, (2) AccessibleStates.Focused, (3) AccessibleStates.Selectable, (4) AccessibleStates.Focusable

(Inherited from NodeShape)
AccessibleValue

Gets the accessible value for this element.

(Inherited from ShapeElement)
ActiveDiagramView

Gets the active DiagramView for this Diagram.

AllowsChildrenInSelection

Gets whether or not this shape's children are allowed in the same selection group as this parent.

(Inherited from ShapeElement)
AllowsChildrenToResizeParent

Gets value which determines if child shapes are allowed to resize this shape.

AllowsChildrenToShrinkParent

Gets value which determines if this shape can be shrunk as well as grown by changes to its nested children.

(Inherited from ShapeElement)
Anchoring

Gets the Anchoring behavior for this NodeShape.

(Inherited from NodeShape)
AnchorPointAction

Gets the mouse action responsible for manually moving link endpoints.

AutoResizeParentOnBoundsChange

Gets or sets whether parent shape(s) should be automatically resized via a rule when this shape's absolute bounds are changed due to move or resize operation.

(Inherited from NodeShape)
BackgroundBrushId

Gets the brush resource id that will be used to fill the background of the geometry.

BackgroundGradientMode

Gets the gradient mode for the shape background area.

(Inherited from NodeShape)
BaseFontFromEnvironment

Gets the font from the environment that should be used to determine the BaseFont.
The default behavior is to return ths systems IconTitleFont.
This property is also used by the auto-zoom feature to determine if a diagram should be opened or created at an initial zoom factor higher than 100%.
The resultant BaseFont may be a different size from this environment font.
This property should be overridden to get a font other than the systems IconTitleFont.

BaseFontName

Gets or sets the value of BaseFontName domain property. Description for Microsoft.VisualStudio.Modeling.Diagrams.Diagram.Base Font Name

BaseFontSize

Gets or sets the value of BaseFontSize domain property. Description for Microsoft.VisualStudio.Modeling.Diagrams.Diagram.Base Font Size

BoundingBox

Gets the bounding rectangle in world units relative to the top-left of the parent shape.

(Inherited from NodeShape)
Bounds

Gets or sets the shape's bounds in world units relative to the top-left of the parent shape.

(Inherited from NodeShape)
BoundsRules

Gets the object which constrains the bounds of this shape.

(Inherited from NodeShape)
CanDeserializationReroute

Gets whether or not this diagram type allows rerouting during serialization. Typically, that is not allowed, but some designers might need that behavior if all of their lines are always calculated.

CanExpandAndCollapse

Gets a value indicating whether this shape has a distinct collapsed and expanded state. This value must be set to true if the NodeShape's expand and collapse capabilities are used.

(Inherited from NodeShape)
CanFocus

Gets a value indicating whether the ShapeElement can receive the focus.

(Inherited from ShapeElement)
CanMove

Gets a value indicating that the user is not allowed to reposition this diagram.

CanResize

Gets a value indicating whether the user is allowed to resize the ShapeElement. (To modify this value, override the ResizableSides property.)

(Inherited from NodeShape)
CanSelect

Gets a value indicating whether the user is allowed to select the ShapeElement.

(Inherited from ShapeElement)
Center

Gets the center point of the ShapeElement's bounds.

(Inherited from ShapeElement)
ClassStyleSet

Gets the style set shared amongst all instances of this class.

(Inherited from ShapeElement)
ClientViews

Gets the DiagramClientViews that this Diagram has.

ClipWhenDrawingFields

Gets a value indicating whether the clipping region should be set to the bounding box of this shape when drawing its child ShapeFields.

(Inherited from ShapeElement)
ConnectActionFilterString

Toolbox Filter string that identifies the connect action for the diagram. Moved up from SdmDiagram. Used in ToolboxAction.

ConnectionPoints

Gets the list of connection points on this NodeShape.

(Inherited from NodeShape)
CopyOrigin

The text that represents the diagram as the originator of the copy operation.

CreatableSwimLaneSubjects

Gets a collection of domain classes which are mapped to swimlane shapes.

Decorators

A collection of decorators for this type of shape. Return null if this type has no decorators. By default, shapes do not have decorators.

(Inherited from ShapeElement)
DefaultContainerMargin

Gets the margin that's required around the diagram between it's nested shapes.

DefaultGridSize

Gets the default size of the grid in world units.

DefaultShapeField

Gets the first ShapeField that can receive focus. The field returned should be used as the default shape field to receive key events when the ShapeElement has the focus and the ShapeElement doesn't respond to the key events.

(Inherited from ShapeElement)
DefaultSize

Gets the default size of a ShapeElement in world units.

Diagram

Gets the diagram that this ShapeElement belongs to. (This can be null.)

(Inherited from ShapeElement)
DiagramId

Gets or sets the value of DiagramId domain property. Description for Microsoft.VisualStudio.Modeling.Diagrams.Diagram.Diagram Id

DragDropPendingAction

Gets the mouse action responsible for initiating drag/drop.

ElementOperations

Gets the object used to perform selection operations.

EnsureVisiblePreference

Preference for the EnsureVisible method for this Diagram. By default, all ShapeElements nested in this Diagram will use this preference. ShapeElements can override this preference and choose their own.

Events

Returns the list of event handlers attached to this ShapeElement.

(Inherited from ShapeElement)
FixedFlags

Gets the FixedFlags properties for a GraphNode.

(Inherited from NodeShape)
FocusedDiagramView

The design surface associated with this diagram which has the focus (if any).

FromRoleLinkShapes

Gets a collection of the LinkShapes where this NodeShape plays a From role.

(Inherited from NodeShape)
GeometryBackgroundBrushId

Gets the brush resource id that will be used to fill the background of the geometry.

(Inherited from ShapeElement)
GeometryBoundingBox

Gets the bounding box of the geometry. (Intended to be called only by the ShapeGeometry-derived classes.)

(Inherited from ShapeElement)
GeometryCanResizeBottom

Gets a value indicating whether the user is permitted to resize the geometry. (Intended to be called only by the NodeShapeGeometry-derived classes.)

(Inherited from NodeShape)
GeometryCanResizeLeft

Gets a value indicating whether the user is permitted to resize the geometry. (Intended to be called only by the NodeShapeGeometry-derived classes.)

(Inherited from NodeShape)
GeometryCanResizeRight

Gets a value indicating whether the user is permitted to resize the geometry. (Intended to be called only by the NodeShapeGeometry-derived classes.)

(Inherited from NodeShape)
GeometryCanResizeTop

Gets a value indicating whether the user is permitted to resize the geometry. (Intended to be called only by the NodeShapeGeometry-derived classes.)

(Inherited from NodeShape)
GeometryHasFilledBackground

Gets a value indicating whether the background of the geometry will be filled. (Intended to be called only by the ShapeGeometry-derived classes.)

(Inherited from ShapeElement)
GeometryHasOutline

Gets a value indicating whether the outline of the geometry will be drawn. (Intended to be called only by the ShapeGeometry-derived classes.)

(Inherited from ShapeElement)
GeometryHasShadow

Gets a value indicating whether the geometry displays a shadow. (Intended to be called only by the ShapeGeometry-derived classes.)

(Inherited from ShapeElement)
GeometryOutlinePenId

Gets the pen resource id that will be used to draw the outline of the geometry.

(Inherited from ShapeElement)
GeometryStyleSet

Gets the style set to use for the geometry. (Intended to be called only by the ShapeGeometry-derived classes.)

(Inherited from ShapeElement)
GestureExtensionController

Property holds the GestureExtenstionController. This object is invoked on the various Diagram events that can be handled by GestureExtensions. This object passes on control to various GestureExtensions to hande the events. The first time this property is called, a GestureExtensionController is created and added to the Store's CompositionContainer If the CompositionContainer is null, or if the created GestureExtensionController is null, this property will return null.

GridColor

Gets or sets the grid color.

GridSize

Gets or sets the grid size in world units. Each child shape's GridSize defaults to its parent's GridSize. Ultimately, the diagram's GridSize property is the default grid size for these shapes unless the shape's GridSize property has been overridden.

GroupBoundsRules

Gets the group bounds rules for the diagram. If the diagram supports port shapes, then it returns the PortGroupBoundsRules; otherwise, it just calls the base class implementation.

HasAnchoring

Gets whether or not this NodeShape has anchoring to its parent turned enabled.

(Inherited from NodeShape)
HasAssociatedViews

Gets a value indicating whether this diagram is associated with any DiagramView.

HasBackgroundGradient

Returns whether a GeometryShape has a background gradient

(Inherited from NodeShape)
HasChildren

Gets a value indicating whether the ShapeElement has one or more child ShapeElements with either a relative or nested relationship.

(Inherited from ShapeElement)
HasConnectionPoints

Gets whether or not this NodeShape requires the use of connection points.

(Inherited from NodeShape)
HasCustomToolTip

Returns whether this shape has a custom rendering of a tooltip

(Inherited from ShapeElement)
HasDragOverToolTip

Returns whether drag-over tooltip is supported by this shape.

(Inherited from ShapeElement)
HasFilledBackground

Gets a value indicating whether to draw the background of the shape.

(Inherited from ShapeElement)
HasHighlighting

Gets a value indicating whether to draw the ShapeElement's highlight

(Inherited from ShapeElement)
HasOutline

Gets a value indicating whether to draw the outline of the shape. Diagrams by default have no border.

HasShadow

Gets a value indicating whether to draw the ShapeElement's shadow Drawing the shadow will make diagram printing very slow, especially for a job with multiple pages.

HasSwimlanes

Gets whether or not swimlanes are supported in this Diagram.

HasToolTip

Get/Set whether or not the Shape shows a mouse hover tooltip by default

(Inherited from ShapeElement)
Id

Unique identifier of this element.

(Inherited from ModelElement)
InvokeEditorAction

Gets the mouse action that invokes the field or subfield's editor on mouse down. After it invokes the editor, the MouseAction is deactivated.

IsActive

Returns true if the Element is currently active within the model, false if the element has been deleted or is in the process of being deleted.

(Inherited from ModelElement)
IsCompleteView

Gets or sets the value of IsCompleteView domain property. Description for Microsoft.VisualStudio.Modeling.Diagrams.Diagram.Is Complete View

IsDeleted

Has the element been deleted from the model. (Deleted elements are not immediately destroyed so that the undo command may undo deleting the element.)

(Inherited from ModelElement)
IsDeleting

Has the element been deleted from the model. (Deleted elements are not immediately destroyed so that the undo command may undo deleting the element.)

(Inherited from ModelElement)
IsExpanded

Gets or sets the value of IsExpanded domain property. Description for Microsoft.VisualStudio.Modeling.Diagrams.NodeShape.Is Expanded

(Inherited from NodeShape)
IsNestedChild

Gets a value indicating whether this shape is a nested child of its parent rather than a relative child. A nested child is clipped by its parent shape, whereas a relative child is not.

(Inherited from ShapeElement)
IsPlaceRouteNode

See if we are a placeable/routable node

(Inherited from NodeShape)
IsPort

Indicate if this is a port shape

(Inherited from NodeShape)
IsRelativeChild

Gets a value indicating whether this shape is a relative child of its parent rather than a nested child. A nested child is clipped by its parent shape, whereas a relative child is not.

(Inherited from ShapeElement)
IsVisible

Gets the visibility attribute of this shape.

(Inherited from ShapeElement)
IsWatermarkNeeded

Checks the current state of the diagram to determine if the watermark text should be displayed.

LassoAction

Gets the mouse action responsible for lasso selection.

LayoutObjectFixedFlags (Inherited from NodeShape)
LineAdjustAwayDefault

Gets or sets a value that indicates whether intermediate line segments of child link shapes should try to align when the link shapes share a common connected shape. Intermediate line segments are the segments that do not contain either LinkShape endpoints. This property does not affect affinity of this shape with sibling shapes; it only applies to link shapes that are children of this shape.

(Inherited from ShapeElement)
LineAffinityDefault

Gets or sets a value that indicates whether intermediate line segments of child link shapes should try to align when the link shapes share a common connected shape. Intermediate line segments are the segments that do not contain either LinkShape endpoints. This property does not affect affinity of this shape with sibling shapes; it only applies to link shapes that are children of this shape.

(Inherited from ShapeElement)
LineToLineClearance

Gets or sets the clearance in world units between child link shapes. This property does not affect line-to-line clearance of this shape with sibling shapes; it only applies to link shapes that are children of this shape. This value must be greater than 1e-6.

(Inherited from ShapeElement)
LineToNodeClearance

Gets or sets the clearance in world units between child link shapes and child node shapes.
This property does not affect line-to-node clearance of this shape with sibling shapes; it only applies to shapes that are children of this shape. This value must be greater than 1e-6.

(Inherited from ShapeElement)
Link

Gets a list of Link. Description for Microsoft.VisualStudio.Modeling.Diagrams.LinkConnectsToNode.Nodes

(Inherited from NodeShape)
Location

Gets or sets the coordinates of the upper-left corner of the shape's bounds relative to the upper-left corner of its parent.

(Inherited from NodeShape)
ManualRouteAction

Gets the mouse action responsible for manually routing lines.

MaximumSize

Gets the maximum size of a ShapeElement in world units.

(Inherited from ShapeElement)
MinimumResizableSize

Gets the minimum size in world units that a user can resize this node shape at the current state.

(Inherited from NodeShape)
MinimumSize

Gets the minimum size of a ShapeElement in world units.

ModelElement

Gets or sets the model element associated with this presentation element.

(Inherited from PresentationElement)
Name

Gets or sets the value of Name domain property. Description for Microsoft.VisualStudio.Modeling.Diagrams.Diagram.Name

NavigationRoot

Gets the root navigational shape for the diagram. Normally, this is just the diagram itself. If the diagram is not selectable, then its nested child shapes will be searched for the first selectable child. The grand children are not searched.

NeedsRenumber

Indicates whether the diagram needs renumbering.

NestedChildShapes

Gets a list of NestedChildShapes. Description for Microsoft.VisualStudio.Modeling.Diagrams.ParentShapeContainsNestedChildShapes.ParentShape

(Inherited from ShapeElement)
NestedShapesMargin

Gets the margin between this Diagram's bounding box perimeter and its nested node shapes. The margin is in world units. This margin is to provide a region along the perimeter of this Diagram where connection lines can route through.

NodeToNodeClearance

Gets or sets the clearance in world units between child node shapes. This property does not affect node-to-node clearance of this shape with sibling shapes; it only applies to node shapes that are children of this shape. This value must be greater than 1e-6.

(Inherited from ShapeElement)
OutlinePenId

Gets the pen resource id that will be used to draw the outline of the geometry.

OutlinePenWidth

Gets the outline pen width in world units.
This is useful for inflating the ShapeElement bounding rectangle for invalidation purposes.

(Inherited from ShapeElement)
PaintMoveableDecoratorSelectionLines

When this shape is selected, whether to draw one selection line to each moveable decorator attached to this shape, if the decorator has been manually placed or sized. The base implementation returns true.

(Inherited from ShapeElement)
PanZoomAction

Gets the mouse action responsible for zooming.

ParentLink

Gets the relationship to the parent ShapeElement.

(Inherited from ShapeElement)
ParentShape

ParentShape DomainRole

(Inherited from ShapeElement)
Partition

Gets or sets the Partition instance that contains this element.

(Inherited from ModelElement)
Perimeter

Gets the graphics path which encompasses the ShapeElement outline, including the thickness of the outline pen that lies outside of the ShapePath. The points in the path are in world units relative to the parent ShapeElement.

(Inherited from ShapeElement)
PortFixedFlags

Gets the FixedFlags properties for a GraphNode.

(Inherited from NodeShape)
RelatedShapeToEmphasize

Gets the related ShapeElement that should be visually emphasized to the user when this shape is selected. This appearance is different from selection and does not indicate that the related shape is selected. The intent is to draw the user's attention to the related shape to help provide context. This property returns null if no shape should be emphasized.

An example usage: The user may not be clear as to which shape a label is associated with, so by visually emphasizing the label's parent shape when the label is selected, the user can quickly identify the related shape.

(Inherited from ShapeElement)
RelativeChildShapes

Gets a list of RelativeChildShapes. Description for Microsoft.VisualStudio.Modeling.Diagrams.ParentShapeHasRelativeChildShapes.ParentShape

(Inherited from ShapeElement)
RequiresWatermark

Gets whether or no this diagram requires a watermark to be shown. The default implementation returns true. Override this method to turn off the watermark for your diagram.

ResizableSides

Gets the sides of the node shape which can be resized by the user. Default behavior is that all sides may be resized.

(Inherited from NodeShape)
ResizeAction

Gets the mouse action responsible for resizing shapes.

RouteJumpType

Gets/Sets the line jump style for the graph.

RoutingStyle

Gets/Sets the routing style for the graph.

SelectAction

Gets the mouse action responsible for selecting shapes.

SelectionRules
ShapeFields

A collection of shape fields for this type of shape.

(Inherited from ShapeElement)
ShapeGeometry

Gets the geometry of the Diagram.

ShouldAutoPlaceChildShapes

Determines if view fixup should auto-place nested child shapes of this shape when they are created. By default, this returns false.

(Inherited from NodeShape)
ShouldTryParentShapeForMergeOnToolboxDoubleClick

Controls what happens when this ShapeElement is selected and the user double-clicks a toolbox item. By default, if CanMerge() fails for this ShapeElement, the double-click action will walk up to this ShapeElement's ParentShape and try the CanMerge() again. If a shape overrides this method to return false, the toolbox double-click will terminate if CanMerge() fails.

(Inherited from ShapeElement)
ShowGrid

Gets or sets a value indicating whether the grid is visible.

Size

Gets or sets the size of the shape's size.

(Inherited from NodeShape)
SnapToGrid

Gets or sets a value indicating whether shapes snap to the grid.

Store

Get the Store instance that contains this element.

(Inherited from ModelElement)
StyleSet

Gets the instance StyleSet if this ShapeElement has one, otherwise gets the ClassStyleSet.

(Inherited from ShapeElement)
Subject

Gets or sets Subject. Description for Microsoft.VisualStudio.Modeling.Diagrams.PresentationViewsSubject.Presentation

(Inherited from PresentationElement)
SupportsPorts

Indicates whether the diagram contains any ports. Hit testing will not check for ports if this is false.

TargetToolboxItemFilterAttributes

Diagrams return the collection of ToolboxItemFilterAttributes applied to the diagram's type.

ToolboxAction

Gets the mouse action responsible for toolbox click.

ToRoleLinkShapes

Gets a collection of the LinkShapes where this NodeShape plays a To role.

(Inherited from NodeShape)
WatermarkText

Gets the watermark text associated with this diagram. Override this method to provide specific watermarks for derived diagram types.

ZOrder

Gets the relative Z-Order for this ShapeElement. If this is a diagram then this is the most recent z-order number used to renumber.

(Inherited from ShapeElement)

Methods

AccessibleDoDefaultAction()

Performs the default action associated with this accessible object.

(Inherited from ShapeElement)
AddImageFormat(IDataObject, ICollection)

Adds the bitmap data format to the IDataObject.

Associate(DiagramView)

Displays this diagram in the specified DiagramView.

Associate(ModelElement)

Associates this presentation element with its model element.

(Inherited from PresentationElement)
AutoLayoutChildShapes(IDictionary)

Position the specified collection of ShapeElements using the graph object.

(Inherited from NodeShape)
AutoLayoutShapeElements(ICollection)

Automatically lays out the passed collection of ShapeElements.

AutoLayoutShapeElements(ICollection, VGRoutingStyle, PlacementValueStyle, Boolean)

Automatically lays out the passed collection of ShapeElements.

CalculateDerivedVisible(ShapeElement)

Calculate the DerivedVisible value for this shape, assuming the parent is correct.

(Inherited from ShapeElement)
CalculateMinimumSizeBasedOnChildren()

Calculates the minimum size needed for this shape to fit all of its children within it.

(Inherited from NodeShape)
CanMerge(ProtoElementBase, ElementGroupPrototype)

Returns a value indicating whether the source element represented by the specified root ProtoElement can be added to this element.

(Inherited from ModelElement)
CanShapeContainConnectors(ShapeElement)

Method used to check if a shape can host a connector. Normally, this would only be the Diagram or a Swimlane, but this behavior can be overridden by the diagram.

ChooseMergeTarget(ElementGroup)

Gets the ModelElement to be used as the target for the ElementGroup merge process.
This is called by the merge process when this element is the target of the merge.
This provides this element with the opportunity to change the target to something other than itself.

(Inherited from ModelElement)
ChooseMergeTarget(ElementGroupPrototype)

Gets the ModelElement to be used as the target for the ElementGroupPrototype merge process.
This is called by the merge process when this element is the target of the merge.
This provides this element with the opportunity to change the target to something other than itself.

(Inherited from ModelElement)
ChooseParentShape(ShapeElement)

Called by ShapeElement.FixUpChildShapes() to determine which shape should be the parent shape for the new child shape. By default, this ShapeElement will be the parent, but there may be cases where a different shape should be.

(Inherited from ShapeElement)
ChooseRelationship(ShapeElement)

Called by ShapeElement.FixUpChildShapes() to get the type of relationship the child ShapeElement has to its parent.

(Inherited from NodeShape)
CoerceSelection(DiagramItem, DiagramClientView, Boolean)

Allows a shape to change the selected items. Called from the select action.

(Inherited from ShapeElement)
Collapse()

Shrinks the NodeShape to hide all of its nested children. This can only be called from within a transaction.

(Inherited from NodeShape)
ConfiguredChildPortShape(Port, Boolean)

Configure the child PortShape. position the child shape if necessary.

(Inherited from NodeShape)
ConnectNestedChild(NodeShape, ShapeElement)

Restores graph layout objects for a nested child shape, its children and links recursively.

Copy()

Creates a copy of the element in the model.

(Inherited from ModelElement)
Copy(IEnumerable<Guid>)

Creates a copy of the element in the model.

(Inherited from ModelElement)
CopyImageToClipboard(ICollection)

Copies the specified shapes and their descendants to the clipboard as images.

CreateBackgroundGradientField(String)

Creates the AreaField which covers the background area of the shape and displays the gradient fill. Derived classes may override this to change the type of field that is created.

(Inherited from NodeShape)
CreateBitmap(ICollection, Diagram+CreateBitmapPreference)

Constructs a bitmap representation of the selected ShapeElements.

CreateChildShape(ModelElement)

Called by ShapeElement.FixUpChildShapes() to retrieve a new instance of a child shape for the given model element.

CreateClassStyleSet()

Creates the class style set for this ShapeElement

(Inherited from ShapeElement)
CreateConnectionPoint(PointD)

Creates a connection point with the given center point, and adds it to the ConnectionPoints collection for this shape.

(Inherited from NodeShape)
CreateDecorators()

Instantiates the collection of decorators for this type of shape.

(Inherited from ShapeElement)
CreateDefaultBounds(Double, Double)

Creates and returns a default Bounds that can used by the NodeShape.

(Inherited from NodeShape)
CreateGestureExtensionController()

Overridable Factory method to create a GestureExtensionController for the Diagram.

CreateInstanceStyleSet()

Create this instance's style set.

(Inherited from ShapeElement)
CreateManualRouteAction()

Creates the mouse action for manual line routing.

CreateMetafile(ICollection)

Creates a metafile of the specified shapes and their descendants at 100%.

CreateMetafile(ICollection, String)

Creates a metafile of the specified shapes and their descendants at 100%.

CreateMetafile(ICollection, String, Boolean)

Creates a metafile of the specified shapes and their descendants at 100%.

CreateShapeFields()

Instantiates the collection of shape fields for this type of shape.

(Inherited from ShapeElement)
Delete()

Deletes the element from the model.

(Inherited from ModelElement)
Delete(Guid[])

Deletes the element from the model.

(Inherited from ModelElement)
DetermineHighlightShape(ShapeElement)

Goes up the parent shape chain, until it finds a shape that has highlighting turned on, or it has reached the top of the parent chain.

(Inherited from ShapeElement)
Disassociate(DiagramView)

Removes this diagram from the specified DiagramView.

DisconnectNestedChild(NodeShape)

Removes graph layout objects for a swimlane child shape, its children and links recursively.

Dispose()

implement the IDisposable.Dispose() method

Dispose(Boolean)

Internal class to release all the resource relates to this class

DoFoldToShape(PointD, PointD)

Calculates the point along the ShapeElement perimeter where the given vector will intersect

(Inherited from ShapeElement)
DoHitTest(DiagramClientView, PointD, List<ShapeElement>, Boolean)

Performs a hit test and returns the information in the shapesHit argument.

DoHitTest(PointD, DiagramHitTestInfo)

Performs a hittest given a point relative to the Diagram's top-left in world units.

(Inherited from ShapeElement)
DoHitTest(PointD, DiagramHitTestInfo, Boolean)

Performs a hit test and returns the information in the DiagramHitTestInfo argument. The Diagram itself is considered a ShapeElement and will be returned if hit.

DoHitTestSelection(PointD, DiagramHitTestInfo)

Performs a hittest on the selection surrounding the ShapeElement given a point relative to the Diagram's top-left in world units.

(Inherited from ShapeElement)
DoKeyboardNavigation(Keys, DiagramClientView)

Calls the appropriate navigation method on the shape.

(Inherited from ShapeElement)
DrawResizeFeedback(DiagramPaintEventArgs, RectangleD)

Draws the ShapeElement's resizing feedback using the given absolute bounds for the ShapeElement.

(Inherited from ShapeElement)
EnsureConnectionPoints(LinkShape)

Ensures that appropriate connection points exist for the given link. This method will be called before a the given link is connected to this shape. The default implementation creates a connection point which is midway through the left side of the shape. Derived classes that use connection points can override this to create different connection point(s).

(Inherited from NodeShape)
EnsureGraphExists() (Inherited from NodeShape)
EnsureGraphLayoutObjectsExist(ShapeElement)

Make sure the underlying graph object shape and its children are present.

(Inherited from NodeShape)
ExcludeFromClipRegion(Graphics, Matrix, GraphicsPath)

Excludes this ShapeElement and its descendent ShapeElements from the clipping region in the specified Graphics object.

(Inherited from ShapeElement)
ExcludeGeometryFromClipRegion(Graphics, Matrix, GraphicsPath)

Excludes from the clipping region this geometry, including geometries of descendant IGeometryHost objects. (Intended to be called only by the ShapeGeometry-derived classes.)

(Inherited from ShapeElement)
ExcludeShapeFromSizeCalculation(NodeShape)

If true the shape will not be taken into account to calculate the size of the parent shape

(Inherited from NodeShape)
Expand()

Grows the NodeShape to fit all of its nested children. This can only be called from within a transaction.

(Inherited from NodeShape)
Finalize()

Frees resources and performs other cleanup operations before the Object is reclaimed by garbage collection.

FindDecorator(String)

Finds the Decorator with the given name.

(Inherited from ShapeElement)
FindFirstChild(Boolean)

Called by this ShapeElement to get its first descendant in the navigation sequence.

Called by the child ShapeElement or ShapeField to get this shape's first descendant in the navigation sequence.

(Inherited from ShapeElement)
FindFreeArea(Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double)

Find a free area in the shape or diagram's graph.

(Inherited from ShapeElement)
FindFreeArea(RectangleD)

Finds a free area inside this shape.

(Inherited from NodeShape)
FindLastChild(Boolean)

Called by the child ShapeElement or ShapeField to get this shape's last descendant in the navigation sequence.

(Inherited from ShapeElement)
FindNextChild(DiagramItem, Boolean)

Called by the child ShapeElement or ShapeField to get the child's first sibling item following it in the navigation sequence.

(Inherited from ShapeElement)
FindNextInChildFields(ShapeField, Boolean)

Finds the first DiagramItem following the specified ShapeField. The search is confined to this shape's ShapeField collection, including its subfields.

(Inherited from ShapeElement)
FindPreviousChild(DiagramItem, Boolean)

Called by the child ShapeElement or ShapeField to get the child's first focusable sibling item preceding it in the navigation sequence.

(Inherited from ShapeElement)
FindPreviousInChildFields(ShapeField, Boolean)

Finds the first DiagramItem preceding the specified ShapeField. The search is confined to this shape's ShapeField collection, including its subfields.

(Inherited from ShapeElement)
FindShape(ModelElement)

Find a shape corresponding to this given element on this diagram

FindShapeField(String)

Returns the first ShapeField with the given name in the ShapeFields collection. If a field with the given name is not found, this method returns null.

(Inherited from ShapeElement)
FixUpChildShapes(ModelElement)

Called by Diagram.FixUpDiagram() to provide the opportunity to create and/or configure child shapes in response to adding the specified child element to the model.

(Inherited from ShapeElement)
FixUpDiagram(ModelElement, ModelElement)
FixUpDiagramSelection(ShapeElement)

Updates the selection during FixUpDiagram. Default behavior is to select the newChildShape on the active diagram view if there is one, or on all views if there is no active view.

Focused(DiagramClientView)

Returns a value indicating whether this shape is focused in the specified view.

(Inherited from ShapeElement)
GetAbsoluteBoundsValue()

Provides backing storage for the NodeShape.AbsoluteBounds property.

(Inherited from NodeShape)
GetAccessibilityObject(DiagramClientView)

Gets the AccessibleObject assigned to the element

(Inherited from ShapeElement)
GetChildElements(ModelElement)

Called by ShapeElement.FixUpChildShapes() to get a collection of ModelElements that are considered child elements of the specified ModelElement. The child elements returned should have corresponding shape types that can be instantiated as child shapes of this ShapeElement.

(Inherited from ShapeElement)
GetCompliantAnchorPoint(AnchorPoint, PointD, VGRoutingStyle)

Calculates compliant AnchorPoint based of the proposedAnchorPoint parameter. This method completely ignores the co-ordinates of the anchorPoint parameter. Calculations are done based on the co-ordinates of the proposedAnchorPoint and the anchorPoint at opposite end of the link corresponding to the anchorPoint parameter.

(Inherited from NodeShape)
GetCompliantGroupBounds(ShapeElement, GhostShapeCollection, PointD)

Updates the GhostShapeCollection so that it complies with the GroupBoundsRules after the proposed location delta is applied.

GetCursor(Cursor, DiagramClientView, PointD)

Gets the cursor that is displayed when the mouse pointer is over the ShapeElement.

(Inherited from ShapeElement)
GetDomainClass()

Gets the most-derived domain class for this element.

(Inherited from ModelElement)
GetDragOverToolTipText(DiagramItem)

Returns mouse drag over tooltip text to show.

(Inherited from ShapeElement)
GetFieldAccessibleDescription(ShapeField) (Inherited from ShapeElement)
GetFieldAccessibleName(ShapeField) (Inherited from ShapeElement)
GetFieldAccessibleValue(ShapeField) (Inherited from ShapeElement)
GetFieldRepresentedElement(ShapeField)

Gets the primary ModelElement that the specified child ShapeField represents.

(Inherited from ShapeElement)
GetFieldRepresentedProperty(ShapeField)

Gets property information that the specified ShapeField represents.

(Inherited from ShapeElement)
GetIsExpandedValue()

Provides storage for the NodeShape.IsExpanded property.

(Inherited from NodeShape)
GetPotentialMouseAction(MouseButtons, PointD, DiagramHitTestInfo)

Retrieves a mouse action that should be made active on the next MouseDown event if the mouse is over the specified point.

GetRoleCollection<TCollection,TElement>(Guid)

Gets or creates the linked element collection

(Inherited from ModelElement)
GetService(Type)

Gets the requested service by first querying the store, and if not found, then querying the diagram's ActiveDiagramView. The DiagramView will need to have been sited in order for this method to perform the query on the view. If the query fails, a null value is returned.

GetShapeLuminosity(DiagramClientView, Color)

Calculates shape's luminosity based on current color's luminosity, and whether or not it's in the highlight list.

(Inherited from ShapeElement)
GetSourceRolePlayerForLinkMappedByConnector(BinaryLinkShape)

Connectors are mapped to ElementLinks, but the PresentationViewsSubject relationship between them are not serialized directly, so during deserialization, we need to re-establish the link. This method gives the source role-player of the link mapped by the given connector. The base implementation just returns the Subject of the FromShape of the given connector.

GetSubFieldAccessibleDescription(ShapeField, ShapeSubField) (Inherited from ShapeElement)
GetSubFieldAccessibleName(ShapeField, ShapeSubField) (Inherited from ShapeElement)
GetSubFieldAccessibleValue(ShapeField, ShapeSubField) (Inherited from ShapeElement)
GetSubFieldRepresentedElements(ShapeField, ShapeSubField)

Gets a collection of ModelElements that the specified ShapeSubField represents.

(Inherited from ShapeElement)
GetSubFieldRepresentedProperty(ShapeField, ShapeSubField)

Gets the property descriptor associated with the specified subfield.

(Inherited from ShapeElement)
GetSubFieldRepresentedPropertyElements(ShapeField, ShapeSubField)

Gets the element that hosts the property displayed by a subfield. This may be different from the element returned by GetSubFieldRepresentedElements because the actual DomainPropertyInfo returned by GetSubFieldRepresentedProperty may be hosted in a child of the represented element.

(Inherited from ShapeElement)
GetTargetRolePlayerForLinkMappedByConnector(BinaryLinkShape)

Connectors are mapped to ElementLinks, but the PresentationViewsSubject relationship between them are not serialized directly, so during deserialization, we need to re-establish the link. This method gives the target role-player of the link mapped by the given connector. The base implementation just returns the Subject of the ToShape of the given connector.

GetToolTipText(DiagramItem)

Gets the tooltip text for the PEL element under the cursor

(Inherited from ShapeElement)
HandleNewSwimLaneInsertion(DiagramClientView, DomainClassInfo, SwimlaneShape, Boolean)

Handles insertion of a new swimlane into the diagram.

HasCachedDragOverResult(DiagramDragEventArgs)

Returns true if the Drag Over result is cached.

(Inherited from ShapeElement)
Hide()

Hide (make invisible) the shape and all its children

(Inherited from ShapeElement)
HideCustomToolTip(IWin32Window)

Hide the shape's custom tooltip

(Inherited from ShapeElement)
HitTest(RectangleD, Boolean)

Gets the list of shapes that are contained within the specified rectangle

InitializeDecorators(IList<ShapeField>, IList<Decorator>)

Instantiates and adds shape fields (such as text and images) to this shape type.

(Inherited from ShapeElement)
InitializeInstanceResources()

Overrides existing resources for this instance of ShapeElement. This method is called after the instance style set has been instantiated. Override this method to modify existing resources for this ShapeElement instance.

(Inherited from ShapeElement)
InitializeResources(StyleSet)

Adds new resources or overrides existing resources for this type of ShapeElement. This method is called after the class style set has been instantiated. Override this method to add new resources or modify existing resources for this ShapeElement type.

(Inherited from ShapeElement)
InitializeShapeFields(IList<ShapeField>)

Overriden to provide support for background gradients.

(Inherited from NodeShape)
Invalidate()

Invalidates the entire visible diagram rectangle.

Invalidate(Boolean)

Invalidates the ShapeElement.

(Inherited from ShapeElement)
Invalidate(RectangleD)

Invalidates the ShapeElement with the specified rectangle used as its absolute bounds.

(Inherited from ShapeElement)
InvalidateRectangle(RectangleD)

Invalidates the specified rectangle. The rectangle is relative to the the diagram's top-left corner and in internal units. The rectangle will be inflated to invalidate a potential selection surrounding it.

IsConnectorMappedToLink(BinaryLinkShape)

Most connectors are mapped to element links, but there can be exceptions. This method tell if a connector should be mapped to an element link. Note: the base implementation always assumes that a connector is mapped to an element link and returns true.

IsDescendantOf(ShapeElement)

Returns a value indicating whether this shape is a descendant of the specified shape.

(Inherited from ShapeElement)
IsNavigationKey(Char)

Returns a value indicating whether the specified character corresponds to a navigational command.

(Inherited from ShapeElement)
IsNavigationKey(Keys)

Returns a value indicating whether the specified key data corresponds to a navigational command.

(Inherited from ShapeElement)
IsOrphaned(ShapeElement)

Determines if a shape is orphaned. A shape is considered "orphaned" if it should be backed by a ModelElement, but it is not. If a shape is determined to be "orphaned", it's OnOrphaned() method will be called, which will remove the shape with the base implementation. The base implementation consider a shape under following two cases "orphaned":

  1. It has a PresentationViewsSubject link out of it, but the Subject cannot be resolved.
  2. It is a connector that should be mapped to an element link, but the underlying link cannot be found. (We special-case connectors because its PresentationViewsSubject link is not serialized by default).
IsSelected(ShapeElement)

Gets a value indicating whether the specified ShapeElement is selected in any associated DiagramView.

IterateShapes(IShapeIterator)

A method to help iterator through a shape and all its child shapes. The method will recursively go through all the child shapes of this shape and call the given iterator with each shape encountered. Note: The base implementation is that the traversal is depth-first, and NestedChildShapes are iterated before RelativeChildShapes.

(Inherited from ShapeElement)
LassoSelect(RectangleD, Boolean)

Returns a collection of DiagramItems within the specified rectangle in world units.

MergeConfigure(ElementGroup)

PresentationElements should not override MergeConfigure() because it will not be called on PELs during Merge. Instead, PELs should use the view fixup overrides.

(Inherited from PresentationElement)
MergeDisconnect(ModelElement)

Performs operation opposite to MergeRelate - i.e. disconnects a given element from the current one (removes links created by MergeRelate).

(Inherited from ModelElement)
MergeRelate(ModelElement, ElementGroup)

PresentationElements should not override MergeRelate() because it will not be called on PELs during Merge. Instead, PELs should use the view fixup overrides.

(Inherited from PresentationElement)
ModifyLuminosity(Int32, DiagramClientView)

Calculates highlight luminosity based on: if L >= 160, then L = L * 0.9 else, L += 40.

(Inherited from ShapeElement)
MoveByRepositioning(DiagramDragEventArgs)

Repositions the shapes in the ElementGroupPrototype by the amount determined by the mouse position.

(Inherited from ShapeElement)
MoveByRepositioning(ElementGroupPrototype, DiagramItemCollection, PointD, DiagramItem)

Repositions the shapes in the given prototype to the specified point.

(Inherited from ShapeElement)
NavigateAcrossLinks(SelectedShapesCollection, Boolean)

Selects shapes that are connected to this shape.

(Inherited from NodeShape)
NavigateAscend(SelectedShapesCollection)

Called by this ShapeElement to set focus to its first focusable ancestor in the navigation sequence.

(Inherited from ShapeElement)
NavigateDescend(SelectedShapesCollection)

Called by this ShapeElement to set focus to its first focusable descendant in the navigation sequence.

(Inherited from ShapeElement)
NavigateTo(DiagramItem, SelectedShapesCollection)

Called by the Navigate methods to set the focus to the specified DiagramItem.

(Inherited from ShapeElement)
NavigateToFirst(SelectedShapesCollection)

Called by this ShapeElement to set focus to this shape's first sibling (i.e., the parent's first child) in the navigation sequence.

(Inherited from ShapeElement)
NavigateToLast(SelectedShapesCollection)

Called by this ShapeElement to set focus to this shape's last sibling (i.e., the parent's last child) in the navigation sequence.

(Inherited from ShapeElement)
NavigateToNext(SelectedShapesCollection)

Called by this ShapeElement to set focus to the next object in the navigation sequence. The selection's focused item is ignored; this shape is assumed to be the ShapeElement from which to start navigating.

(Inherited from ShapeElement)
NavigateToPrevious(SelectedShapesCollection)

Called by this ShapeElement to set focus to the previous object in the navigation sequence. The selection's focused item is ignored; this shape is assumed to be the ShapeElement from which to start navigating.

(Inherited from ShapeElement)
OnAbsoluteBoundsChanged(AbsoluteBoundsChangedEventArgs) (Inherited from NodeShape)
OnAssociated(DiagramAssociationEventArgs)

Called when the diagram is associated with diagram view. Designers can override this method to handle this event

OnAssociatedPropertyChanged(PropertyChangedEventArgs)

Called when a property changes.

(Inherited from ShapeElement)
OnBeforePaint()

OnBeforePaint is called at the start of the ShapeElement's painting. It provides an opportunity for developers to update and override resources before they're used in painting.

(Inherited from ShapeElement)
OnBeforeReroute()

Virtual method that allows derived diagrams to perform certain operations before a reroute of lines occurs on this diagram.

OnBeginEdit(DiagramItemEventArgs)

Called when in-place editing has begun.

(Inherited from ShapeElement)
OnBoundsFixup(BoundsFixupState, Int32, Boolean)

Allows last opportunity for bounds to be userFixed during view and diagram fixup. Base implementation just applies the currently set BoundsRules on this shape. You can override this method to apply other specific bounds fixup as well.

(Inherited from NodeShape)
OnChildAssociatedPropertyChanged(ShapeElement, PropertyChangedEventArgs)

When a property associated with a child shape changes, this method is called to allow derived classes to update the shape's resources. For example, if a property in the model were associated with the shape's background color, then a derived class could override this method to change the background color.

OnChildConfigured(ShapeElement, Boolean, Boolean)

Configure ports on shape when it is added

(Inherited from NodeShape)
OnChildConfiguring(ShapeElement, Boolean)

Configure new child shapes as they are added

OnClick(DiagramPointEventArgs)

Called by the control's OnClick().

(Inherited from ShapeElement)
OnCopy(ModelElement)

Called when a copy of the element has been created. The method is called on the duplicate element.

(Inherited from ModelElement)
OnDeleted()

Called by the model after the element has been deleted.

(Inherited from ModelElement)
OnDeleting()

Called by the model before the element is deleted.

(Inherited from ModelElement)
OnDisassociated(DiagramAssociationEventArgs)

Called when the diagram is disassociated from diagram view. Designers can override this method to handle this event

OnDoubleClick(DiagramPointEventArgs)

Called by the control's OnDoubleClick()

(Inherited from ShapeElement)
OnDragDrop(DiagramDragEventArgs)

Event raised when an IDataObject is dragged over and then dropped into the ShapeElement.

(Inherited from ShapeElement)
OnDragEnter(DiagramDragEventArgs)

Event raised when an IDataObject drag enters the ShapeElement's bounds.

(Inherited from ShapeElement)
OnDragLeave(DiagramPointEventArgs)

Event raised when an IDataObject drag leaves the ShapeElement's bounds.

(Inherited from ShapeElement)
OnDragOver(DiagramDragEventArgs)

Event raised when an IDataObject is dragged over the ShapeElement's bounds.

(Inherited from ShapeElement)
OnElementEventsEnded(ElementEventsEndedEventArgs)
OnElementEventsEnding(ElementEventsEndedEventArgs)
OnEndEdit(DiagramItemEventArgs)

Called when in-place editing has ended.

(Inherited from ShapeElement)
OnGiveFeedback(GiveFeedbackEventArgs)

The GiveFeedback event allows the source of a drag event (i.e., this diagram) to modify the appearance of the mouse pointer in order to give the user visual feedback during a drag-and-drop operation.

OnGridPropertyChanged()

Called when the grid properties have changed.

OnInitialize()
OnKeyDown(DiagramKeyEventArgs)

Called when a key is pressed when the Diagram itself has the focus.

OnKeyPress(DiagramKeyPressEventArgs)

Called when a key is pressed.

(Inherited from NodeShape)
OnKeyUp(DiagramKeyEventArgs)

Called when a key is released.

(Inherited from ShapeElement)
OnMouseDown(DiagramMouseEventArgs)

Called by the control's OnMouseDown().

(Inherited from ShapeElement)
OnMouseEnter(DiagramPointEventArgs)

Default implementation of ShapeElement event for OnMouseEnter.

(Inherited from ShapeElement)
OnMouseHover(DiagramPointEventArgs)

Default implementation of ShapeElement event for OnMouseHover.

(Inherited from ShapeElement)
OnMouseLeave(DiagramPointEventArgs)

Default implementation of ShapeElement event for OnMouseLeave.

(Inherited from ShapeElement)
OnMouseMove(DiagramMouseEventArgs)

Called by the control's OnMouseMove().

(Inherited from ShapeElement)
OnMouseUp(DiagramMouseEventArgs)

Called by the control's OnMouseUp().

(Inherited from ShapeElement)
OnMouseWheel(DiagramMouseEventArgs)

Called by the control's OnMouseWheel().

(Inherited from ShapeElement)
OnOrphaned(SerializationResult)

During deserialization, if a shape is not connected to any model element through PresentationViewsSubject relationship when it should, it is considered "orphaned". This method is called when such a shape is encountered during deserialization. Note: The base implementation will remove the shape.

(Inherited from ShapeElement)
OnPaintEmphasis(DiagramPaintEventArgs)

Draws visual emphasis on the shape. This does not indicate selection, it only draws the user's attention to this shape when another shape is selected. (See ShapeElement.RelatedShapeToEmphasize.)

(Inherited from ShapeElement)
OnPaintFeedback(DiagramPaintEventArgs)

Draws the drag/drop feedback when this ShapeElement (or possibly one of its descendents) is under the mouse. This is called by the control's OnPaint().

(Inherited from ShapeElement)
OnPaintSelection(DiagramPaintEventArgs)

Draws the selection of this ShapeElement. By default, the ShapeElement's ShapeGeometry will draw the selection. The coordinate system of the Graphics object is in world units and relative to the parent shape.

(Inherited from ShapeElement)
OnPaintShape(DiagramPaintEventArgs)

Paints the diagram background including the grid.

OnParentNodeShapeChanged(RectangleD, RectangleD)

This method is invoked if a) ParentShape is NodeShape b) ParentShape either moved or resized.

(Inherited from NodeShape)
OnResurrected()

Called by the model after the element has been resurrected (placed back into the store).

(Inherited from ModelElement)
OnRolePlayerPositionChanged(DomainRoleInfo, ElementLink, Int32, Int32)

Virtual method for notifying when role player position has changed.

(Inherited from ModelElement)
OnRolePlayerPositionChanging(DomainRoleInfo, ElementLink, Int32, Int32)

Virtual method for notifying when role player position will be changing.

(Inherited from ModelElement)
OnShapeInserted()

Called when this ShapeElement is made a child ShapeElement of its parent ShapeElement.

(Inherited from ShapeElement)
OnShapeRemoved()

Called when this ShapeElement is no longer a child ShapeElement of its parent ShapeElement.

(Inherited from ShapeElement)
OnToolboxItemSelected(ModelingToolboxItem)

Called on selection of a ToolboxItem. (A selection is a double-click, or pressing Enter). Base implementation simply returns false, which means the selection action is not handled.

OnToolboxSelectionChanged(ModelingToolboxItem)

Called when the selection on toolbox changed (through a single-click, or pressing up/down arrow keys). Base implementation does nothing.

OnTransactionBeginning(TransactionBeginningEventArgs)
OnTransactionCommitting(TransactionCommitEventArgs)
OnTransactionRolledBack(TransactionRollbackEventArgs)

Called after the transaction has rolled back.

OnTransactionRollingBack(TransactionRollbackEventArgs)

Called before the transaction has rolled back.

OnViewMouseEnter(DiagramPointEventArgs)

Occurs when the mouse pointer enters the DiagramClientView.

OnViewMouseHover(DiagramPointEventArgs)

Occurs when the mouse pointer hovers over the DiagramClientView.

OnViewMouseLeave(DiagramPointEventArgs)

Occurs when the mouse pointer leaves the DiagramClientView.

PerformLineRoutingRule()

Sets up and fires the LineRoutingRule with the appropriate information for this diagram. It only fires the event once per iteration and keeps a list of all of the changes that will be handled later.

PerformResizeParentRule()

Sets up and fires the ResizeParentRule with the appropriate information for this shape's parent. It only fires the event once per iteration and keeps a list of all of the changes that will be handled later.

(Inherited from ShapeElement)
PerformResizeParentRule(Boolean, ShapeElement)

Sets up and fires the ResizeParentRule with the appropriate information for this shape's parent. It only fires the event once per iteration and keeps a list of all of the changes that will be handled later.

(Inherited from ShapeElement)
PerformShapeAnchoringRule()

Sets up and fires the ShapeAnchoringRule with the appropriate information for this shape's parent. It only fires the event once per iteration and keeps a list of all of the changes that will be handled later.

(Inherited from NodeShape)
PermitChildVisibility(ShapeElement)

Opportunity to influence the visibility of your child shapes

(Inherited from NodeShape)
PostDeserialization(Boolean)

Called after deserialization of the diagram to allow some additional adjustment. The base implementation will try to resolve all BinaryLinkShapes that are not connected to the underlying ElementLink, if the deserialization was successful.

Print(Graphics, Rectangle, PointD, Single)

Draws the diagram using the specified printer Graphics object.

ProcessVisibilityChange(Boolean)

Process the consequential change from a change in the visibility of this shape

(Inherited from NodeShape)
PurgeLayoutObjects()

Purge all graph layout objects in this hierarchy. Purge all points from wires - the point collection off the shape, not the graph points as the are already gone.

(Inherited from ShapeElement)
PurgePoints()

This method removes any points present

(Inherited from ShapeElement)
RebuildShape()

Performs view fixup on this ShapeElement.

(Inherited from ShapeElement)
RemoveLayoutObject()

removes (deletes) this ShapeElement from the GraphWrapper as well as its relative and nested child shapes.

(Inherited from ShapeElement)
Renumber()

Renumbers the diagram shapes if necessary.

ReparentSwimlaneChild(NodeShape, SwimlaneShape, GhostShapeCollection, GhostShape, PointD)

Reparents a node shape from one swimlane to another.

RepositionShapes(DiagramItemCollection, PointD, GhostShapeCollection, DiagramItem)

Moves the specified DiagramItems by the specified moveDelta. These DiagramItems should be top-level DiagramItems, otherwise the move may not perform as expected. This method calls GetCompliantGroupBounds to determine the destination of each DiagramItem.

Reroute()

Public way to force a reroute.

RunInShapeFixupContextForMetafileCreation(ICollection, Action)

Performs a temporary fixup needed to create the metafile. After the creationLogic is called the fixup undone.

Selected(DiagramClientView)

Returns a value indicating whether this shape is selected in the specified view.

(Inherited from ShapeElement)
SetAbsoluteBoundsValue(RectangleD)

Function name: SetValueForCustomStoredProperty Description:

SetInitialGraphLayoutVisibility()

If this shape's visibility has been adjusted before the graph layout object is created then make sure the two are in sync.

(Inherited from ShapeElement)
SetIsExpandedValue(Boolean)

Provides storage for the NodeShape.IsExpanded property.

(Inherited from NodeShape)
SetShowHideState(Boolean)

Set the visibility state of the shape and all its children

(Inherited from ShapeElement)
SetShowHideStateImplementation(Boolean)

Main impementation for Show and Hide

(Inherited from ShapeElement)
ShouldAddShapeForElement(ModelElement)

Called by ShapeElement.FixUpChildShapes() to get a value indicating whether a ShapeElement should be created and added as a child of this ShapeElement.

ShouldExcludeFromInvalidationTracking(ShapeElement)

Calculates whether or not specific types of shapes should be excluded from the invalidation tracking for the diagram.

The base implementation excludes Diagrams and SwimLanes.

ShouldReparentOnMove()

Decides whether or not a shape should be reparented when it's moved.

(Inherited from ShapeElement)
ShouldReportException(Exception)

Called when a transaction created by the core design surface throws an exception. Derived classes can override this method to customise whether the error is reported if it is being swallowed. Note that critical exceptions will be thrown upwards and won't be reported - so there is no additional check required.

Show()

Show (Make visible) the shape and all its children

(Inherited from ShapeElement)
ShowCustomToolTip(String, IWin32Window, Point)

Show the shape's custom tooltip with the given hints on text and position

(Inherited from ShapeElement)
Side(RectangleD)

Assigns a side to the port

(Inherited from NodeShape)
ToString()

Returns the accessible-name of this object, plus its subtype.

(Inherited from ShapeElement)
TranslateGeometryToAbsoluteBounds(RectangleD)

Translates a rectangle from coordinates relative to the top-left of the IGeometryHost's parent to absolute world coordinates.

(Inherited from ShapeElement)
TranslateGeometryToRelativeBounds(RectangleD)

Translates a rectangle from absolute world coordinates to coordinates relative to the top-left of the IGeometryHost's parent.

(Inherited from ShapeElement)
TranslateToAbsoluteBounds(RectangleD)

Translates a rectangle from coordinates relative to the parent shape to absolute world coordinates.

(Inherited from ShapeElement)
TranslateToRelativeBounds(RectangleD)

Translates a rectangle from absolute world coordinates to coordinates relative to the parent shape.

(Inherited from ShapeElement)
UnhandledException(Exception)

Called when a transaction created by the core design surface throws an exception. If this method returns true the exception is swallowed. Otherwise it ripples up to the default .Net Framework exception handling code. Derived classes can override this method to customise exception handling and error messages. The base class returns false, meaning that all exceptions will be thrown up.

UpdateChildVisibility()

Recalculates the visibility states of the descendent shapes based on overrides of the method PermitChildVisibility. The default behavior is to base the child's visibility state on the parent's IsExpanded property. Internal note: this also syncs the visibility states of any descendent subgraphs in the graph object.

(Inherited from NodeShape)
UpdateDerivedVisible(ShapeElement)

Update the derived visible state of this shape

(Inherited from ShapeElement)
UpdateGeometryLuminosity(DiagramClientView, Brush)

Modifies the luminosity of the specified brush. (Intended to be called only by the ShapeGeometry-derived classes.)

(Inherited from ShapeElement)
UpdateGeometryLuminosity(DiagramClientView, Pen)

Modifies the luminosity of the specified pen. (Intended to be called only by the ShapeGeometry-derived classes.)

(Inherited from ShapeElement)

Events

AbsoluteBoundsChanged

Event for changes to the property AbsoluteBounds for this element

(Inherited from NodeShape)
Click

Event fired when the shape is clicked.

(Inherited from ShapeElement)
DiagramAdded

Event sink to signal when this instance of Microsoft.VisualStudio.Modeling.Diagrams.Diagram has been added

DiagramRemoved

Event sink to signal when this instance of Microsoft.VisualStudio.Modeling.Diagrams.Diagram has been removed

DoubleClick

Event fired when the shape is double-clicked.

(Inherited from ShapeElement)
KeyDown

Event fired when the shape has focus and a keyboard key is down.

(Inherited from ShapeElement)
KeyPress

Event fired when the shape has focused and a character is typed.

(Inherited from ShapeElement)
KeyUp

Event fired when the shape has focus and a keyboard key is released.

(Inherited from ShapeElement)
MouseDown

Event fired when a mouse button is pressed on the shape.

(Inherited from ShapeElement)
MouseMove

Event fired when the cursor moves over the shape.

(Inherited from ShapeElement)
MouseUp

Event fired when a mouse button is released on the shape.

(Inherited from ShapeElement)
MouseWheel

Event fired when the mouse wheel moves while the cursor is over the shape.

(Inherited from ShapeElement)

Explicit Interface Implementations

IMergeElements.CanMerge(ProtoElementBase, ElementGroupPrototype) (Inherited from ModelElement)
IMergeElements.ChooseMergeTarget(ElementGroup) (Inherited from ModelElement)
IMergeElements.ChooseMergeTarget(ElementGroupPrototype) (Inherited from ModelElement)
IMergeElements.MergeConfigure(ElementGroup) (Inherited from ModelElement)
IMergeElements.MergeDisconnect(ModelElement) (Inherited from ModelElement)
IMergeElements.MergeRelate(ModelElement, ElementGroup) (Inherited from ModelElement)

Extension Methods

GetDslDefinitionModelElement(PresentationElement)

This method ensures that the real model element corresponding to the PresentationElement is returned. For DslDesigner PELs, the corresponding subject may actually be an internal TreeNode class and not the actual MEL. This method handles those cases correctly so that the actual MEL is returned.

AddExtension(ModelElement, DomainClassInfo)

Extend this ModelElement with a newly instantiated extension of the specified domain type. An InvalidOperationException will be thrown if the element already has an extension of that type.

AddExtension(ModelElement, ExtensionElement)

Extend this ModelElement with a specific extension. An InvalidOperationException will be thrown if the element already has an extension of the same type.

AddExtension(ModelElement, Guid)

Extend this ModelElement with newly instantiated extension of the identified domain type. An InvalidOperationException will be thrown if the element already has an extension of that type.

AddExtension(ModelElement, Type)

Extend this ModelElement with a newly instantiated extension of the specified type. An InvalidOperationException will be thrown if the element already has an extension of that type.

AddExtension<T>(ModelElement)

Extend this ModelElement with a newly instantiated extension of a particular type. An InvalidOperationException will be thrown if the element already has an extension of the same type.

GetAllExtensions(ModelElement)

Return an enumerable that performs a breadth first traversal across the tree of extension elements embedded in this ModelElement.

GetBaseElement(ModelElement)

Returns the root of the virtual MEL in which the specified ModelElement is participating.

GetExtension(ModelElement, DomainClassInfo)
GetExtension(ModelElement, Guid)
GetExtension(ModelElement, Type)

Get the ExtensionElement of the specified type from the available extensions of this ModelElement. If the element has no such extension then an InvalidOperationException will be raised.

GetExtension<T>(ModelElement)

Get the ExtensionElement of the specified type from the available extensions of this ModelElement. If the element has no such extension then an InvalidOperationException will be raised.

IsExtendedBy(ModelElement, DomainClassInfo)

Query whether this ModelElement is currently extended by an ExtensionElement of a particular type.

IsExtendedBy(ModelElement, Guid)

Query whether this ModelElement is currently extended by an ExtensionElement of a particular type.

IsExtendedBy(ModelElement, Type)

Query whether this ModelElement is currently extended by an ExtensionElement of a particular type.

RemoveExtension(ModelElement, DomainClassInfo)

Remove any extension of the specified ModelElement that is of a particular type.

RemoveExtension(ModelElement, ExtensionElement)

Remove a specified ExtensionElement from the extensions of this ModelElement.

RemoveExtension(ModelElement, Guid)

Remove any extension of the specified ModelElement that is of a particular type.

RemoveExtension(ModelElement, Type)

Remove any extension of this ModelElement that is of a particular type.

TryGetExtension(ModelElement, DomainClassInfo)
TryGetExtension(ModelElement, Guid)
TryGetExtension(ModelElement, Type)
TryGetExtension<T>(ModelElement)

Get the ExtensionElement of the specified type from the available extensions of this ModelElement. If this element has no such extension then the result will be null.

CanDelete(ModelElement, Guid[])

Deletes the element from the model.

GetLocks(ModelElement)

Get the lock flags for this element. This will include any locks enabled on the Partition containing the element.

IsLocked(ModelElement, Locks)

Test whether this element has any of a specified set of locks

SetLocks(ModelElement, Locks)

Set the lock flags of this element

Applies to