Share via


Shape Class

Definition

DomainClass Shape Abstract base class for geometry and compartment shapes.

public ref class Shape abstract : Microsoft::VisualStudio::Modeling::DslDefinition::BaseShape
[Microsoft.VisualStudio.Modeling.Design.DescriptionResource("Microsoft.VisualStudio.Modeling.DslDefinition.Shape.Description", typeof(Microsoft.VisualStudio.Modeling.DslDefinition.DslDefinitionModelDomainModel), "Microsoft.VisualStudio.Modeling.DslDefinition.GeneratedCode.DomainModelResx")]
[Microsoft.VisualStudio.Modeling.Design.DisplayNameResource("Microsoft.VisualStudio.Modeling.DslDefinition.Shape.DisplayName", typeof(Microsoft.VisualStudio.Modeling.DslDefinition.DslDefinitionModelDomainModel), "Microsoft.VisualStudio.Modeling.DslDefinition.GeneratedCode.DomainModelResx")]
[Microsoft.VisualStudio.Modeling.DomainModelOwner(typeof(Microsoft.VisualStudio.Modeling.DslDefinition.DslDefinitionModelDomainModel))]
[Microsoft.VisualStudio.Modeling.DomainObjectId("f1f25ea6-bdf9-4b35-9dec-59395fba0810")]
[Microsoft.VisualStudio.Modeling.Validation.ValidationState(Microsoft.VisualStudio.Modeling.Validation.ValidationState.Enabled)]
[System.CLSCompliant(true)]
public abstract class Shape : Microsoft.VisualStudio.Modeling.DslDefinition.BaseShape
[<Microsoft.VisualStudio.Modeling.Design.DescriptionResource("Microsoft.VisualStudio.Modeling.DslDefinition.Shape.Description", typeof(Microsoft.VisualStudio.Modeling.DslDefinition.DslDefinitionModelDomainModel), "Microsoft.VisualStudio.Modeling.DslDefinition.GeneratedCode.DomainModelResx")>]
[<Microsoft.VisualStudio.Modeling.Design.DisplayNameResource("Microsoft.VisualStudio.Modeling.DslDefinition.Shape.DisplayName", typeof(Microsoft.VisualStudio.Modeling.DslDefinition.DslDefinitionModelDomainModel), "Microsoft.VisualStudio.Modeling.DslDefinition.GeneratedCode.DomainModelResx")>]
[<Microsoft.VisualStudio.Modeling.DomainModelOwner(typeof(Microsoft.VisualStudio.Modeling.DslDefinition.DslDefinitionModelDomainModel))>]
[<Microsoft.VisualStudio.Modeling.DomainObjectId("f1f25ea6-bdf9-4b35-9dec-59395fba0810")>]
[<Microsoft.VisualStudio.Modeling.Validation.ValidationState(Microsoft.VisualStudio.Modeling.Validation.ValidationState.Enabled)>]
[<System.CLSCompliant(true)>]
type Shape = class
    inherit BaseShape
Public MustInherit Class Shape
Inherits BaseShape
Inheritance
Derived
Attributes

Constructors

Shape(Partition, PropertyAssignment[])

Constructor.

Fields

DomainClassId

Shape domain class Id.

ExposesFillColorAsPropertyDomainPropertyId

ExposesFillColorAsProperty domain property Id.

ExposesFillGradientModeDomainPropertyId

ExposesFillGradientMode domain property Id.

ExposesOutlineColorAsPropertyDomainPropertyId

ExposesOutlineColorAsProperty domain property Id.

ExposesOutlineDashStyleAsPropertyDomainPropertyId

ExposesOutlineDashStyleAsProperty domain property Id.

ExposesOutlineThicknessAsPropertyDomainPropertyId

ExposesOutlineThicknessAsProperty domain property Id.

FillColorDomainPropertyId

FillColor domain property Id.

FillGradientModeDomainPropertyId

FillGradientMode domain property Id.

HasDefaultConnectionPointsDomainPropertyId

HasDefaultConnectionPoints domain property Id.

InitialHeightDomainPropertyId

InitialHeight domain property Id.

InitialWidthDomainPropertyId

InitialWidth domain property Id.

OutlineColorDomainPropertyId

OutlineColor domain property Id.

OutlineDashStyleDomainPropertyId

OutlineDashStyle domain property Id.

OutlineThicknessDomainPropertyId

OutlineThickness domain property Id.

Properties

AccessModifier

Gets or sets the value of AccessModifier domain property. Determines if the access modifier for the domain class is public or internal.

(Inherited from DomainClass)
AllDescendants

Gets a read-only list of all domain classes directly or indirectly derived form this one.

(Inherited from DomainClass)
AllProperties

The set of all DomainProperties both defined on this class and inherited from base classes

(Inherited from DomainClass)
AllRolesPlayed

The set of all DomainRoles both played directly by this class and inherited from base classes

(Inherited from DomainClass)
Attributes

Gets a list of Attributes.

(Inherited from AttributedDomainElement)
BaseClass

Gets or sets BaseClass. Base class of this domain class.

(Inherited from DomainClass)
ClassData

Gets or sets ClassData. Xml serialization configuration data for the domain class.

(Inherited from DomainClass)
CustomAttributes

Gets or sets the value of CustomAttributes domain property. Used to attribute the code generated from this element.

(Inherited from AttributedDomainElement)
CustomTypeDescriptor

Gets or sets CustomTypeDescriptor. Definition of the custom type descriptor for the class.

(Inherited from DomainClass)
Decorators

Gets a list of Decorators. Decorators for the diagram element.

(Inherited from DiagramElement)
Description

Gets or sets the value of Description domain property. Used in the UI and in the code documentation of the generated designer.

(Inherited from AttributedDomainElement)
DisplayName

Gets or sets the value of DisplayName domain property. The name that will be displayed in the generated designer for this element.

(Inherited from NamedDomainElement)
DslLibrary

Gets or sets DslLibrary. Dsl library defining the shape.

(Inherited from BaseShape)
ElementMergeDirectives

Gets a list of ElementMergeDirectives.

(Inherited from DomainClass)
ExposesFillColorAsProperty

Gets or sets the value of ExposesFillColorAsProperty domain property. If True, a domain property has been added to the shape to allow the fill color to be exposed in the properties window of the generated designer.

ExposesFillGradientMode

Gets or sets the value of ExposesFillGradientMode domain property. If True, a domain property has been added to the shape to allow the fill gradient mode to be exposed in the properties window of the generated designer.

ExposesOutlineColorAsProperty

Gets or sets the value of ExposesOutlineColorAsProperty domain property. If True, a domain property has been added to the shape to allow the outline color to be exposed in the properties window of the generated designer.

ExposesOutlineDashStyleAsProperty

Gets or sets the value of ExposesOutlineDashStyleAsProperty domain property. If True, a domain property has been added to the shape to allow the outline dash style to be exposed in the properties window of the generated designer.

ExposesOutlineThicknessAsProperty

Gets or sets the value of ExposesOutlineThicknessAsProperty domain property. If True, a domain property has been added to the shape to allow the outline thickness to be exposed in the properties window of the generated designer.

ExposesTextColor

Gets or sets the value of ExposesTextColor domain property. If True, a domain property has been added to the connector to allow the text color to be exposed in the properties window of the generated designer.

(Inherited from DiagramElement)
FillColor

Gets or sets the value of FillColor domain property. Fill color of this shape.

FillGradientMode

Gets or sets the value of FillGradientMode domain property. Fill gradient mode of this shape.

FixedTooltipText

Gets or sets the value of FixedTooltipText domain property. Text used for a fixed tooltip.

(Inherited from DiagramElement)
GeneratesDoubleDerived

Gets or sets the value of GeneratesDoubleDerived domain property. If True, will generate both a base class with all functionality and a partial class to support customization through overrides.

(Inherited from DomainClass)
HasCustomConstructor

Gets or sets the value of HasCustomConstructor domain property. If True, indicates that a custom constructor will be provided in code.

(Inherited from DomainClass)
HasDefaultConnectionPoints

Gets or sets the value of HasDefaultConnectionPoints domain property. If True, the shape will use top, bottom, left and right connection points in the generated designer.

HelpKeyword

Gets or sets the value of HelpKeyword domain property. Optional keyword used to index F1 help for this element.

(Inherited from NamedDomainElement)
Id

Unique identifier of this element.

(Inherited from ModelElement)
InheritanceModifier

Gets or sets the value of InheritanceModifier domain property. Determines if the inheritance modifier of the .Net class generated from the domain class is none, abstract or sealed.

(Inherited from DomainClass)
InitialHeight

Gets or sets the value of InitialHeight domain property. Initial height of this shape, in inches.

InitialWidth

Gets or sets the value of InitialWidth domain property. Initial width of this shape, in inches.

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)
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)
IsDescriptionTracking

Gets or sets the value of IsDescriptionTracking domain property. If True, the Description property tracks other data in the DSL definition.

(Inherited from AttributedDomainElement)
IsDisplayNameTracking

Gets or sets the value of IsDisplayNameTracking domain property. If True, the DisplayName property tracks other data in the DSL definition.

(Inherited from NamedDomainElement)
IsFixedTooltipTextTracking

Gets or sets the value of IsFixedTooltipTextTracking domain property. If True, the FixedTooltipText property tracks other data in the DSL definition.

(Inherited from DiagramElement)
IsNamespaceTracking

Gets or sets the value of IsNamespaceTracking domain property. If True, the Namespace property tracks other data in the DSL definition.

(Inherited from DomainClass)
Name

Gets or sets the value of Name domain property. Name of this element.

(Inherited from NamedDomainElement)
Namespace

Gets or sets the value of Namespace domain property. Namespace affiliated with this domain class.

(Inherited from DomainClass)
Notes

Gets or sets the value of Notes domain property. Informal notes associated with this element.

(Inherited from DomainElement)
OutlineColor

Gets or sets the value of OutlineColor domain property. Outline color of this shape.

OutlineDashStyle

Gets or sets the value of OutlineDashStyle domain property. Outline dash style of this shape.

OutlineThickness

Gets or sets the value of OutlineThickness domain property. Outline thickness of this shape.

Partition

Gets or sets the Partition instance that contains this element.

(Inherited from ModelElement)
Properties

Gets a list of Properties.

(Inherited from DomainClass)
ProxyIsNameTracking

Virtualized version of IsNameTracking to cope with the fact that derived classes own the IsNameTracking flags

(Inherited from NamedDomainElement)
RolesPlayed

Gets a list of RolesPlayed. Roles played by the class.

(Inherited from DomainClass)
Store

Get the Store instance that contains this element.

(Inherited from ModelElement)
SubClasses

Gets a list of SubClasses. Description for Microsoft.VisualStudio.Modeling.DslDefinition.ClassHasBaseClass.BaseClass

(Inherited from DomainClass)
TextColor

Gets or sets the value of TextColor domain property. Color used for text decorators associated with this diagram element.

(Inherited from DiagramElement)
TooltipType

Gets or sets the value of TooltipType domain property. If Fixed, the fixed tooltip text is used as the tooltip, if variable the tooltip is defined in custom code.

(Inherited from DiagramElement)

Methods

CalculateDescription()

Calculate the value of Description

(Inherited from DomainClass)
CalculateName()

Calculates the value of Name

(Inherited from NamedDomainElement)
CanMerge(ProtoElementBase, ElementGroupPrototype)

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

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)
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)
Delete()

Deletes the element from the model.

(Inherited from ModelElement)
Delete(Guid[])

Deletes the element from the model.

(Inherited from ModelElement)
GetDomainClass()

Gets the most-derived domain class for this element.

(Inherited from ModelElement)
GetFullName(Boolean)

Gets the fully qualified name for this class

(Inherited from DomainClass)
GetRelativeName(String, Boolean)

Gets the name of the domain class relative to the current namespace. If the current namespace is the same as this.Namespace, then we return this.Name. If not, we return this.GetFullName()

(Inherited from DomainClass)
GetRoleCollection<TCollection,TElement>(Guid)

Gets or creates the linked element collection

(Inherited from ModelElement)
IsDerivedFrom(DomainClass)

Test if this class is derived from the given class.

(Inherited from DomainClass)
MergeConfigure(ElementGroup)

Configure a newly merged DomainClass

(Inherited from DomainClass)
MergeDisconnect(ModelElement)

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

MergeRelate(ModelElement, ElementGroup)

Called by the Merge process to create a relationship between this target element and the specified source element. Typically, a parent-child relationship is established between the target element (the parent) and the source element (the child), but any relationship can be established.

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)
OnInheritanceModifierChanged(InheritanceModifier, InheritanceModifier)

Called when InheritanceModifier on a DomainClass changes

(Inherited from DomainClass)
OnNameChanged(String, String)

Name of DiagramElement changed

(Inherited from DiagramElement)
OnNamespaceChanged(String, String)

Called when the Namespace of a DomainClass changes

(Inherited from DomainClass)
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)

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

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