Share via


Shape Class

DomainClass Shape Abstract base class for geometry and compartment shapes.

Inheritance Hierarchy

System.Object
  Microsoft.VisualStudio.Modeling.ModelElement
    Microsoft.VisualStudio.Modeling.DslDefinition.DomainElement
      Microsoft.VisualStudio.Modeling.DslDefinition.AttributedDomainElement
        Microsoft.VisualStudio.Modeling.DslDefinition.NamedDomainElement
          Microsoft.VisualStudio.Modeling.DslDefinition.DomainClass
            Microsoft.VisualStudio.Modeling.DslDefinition.DiagramElement
              Microsoft.VisualStudio.Modeling.DslDefinition.BaseShape
                Microsoft.VisualStudio.Modeling.DslDefinition.Shape
                  More...

Namespace:  Microsoft.VisualStudio.Modeling.DslDefinition
Assembly:  Microsoft.VisualStudio.Modeling.Sdk.DslDefinition.12.0 (in Microsoft.VisualStudio.Modeling.Sdk.DslDefinition.12.0.dll)

Syntax

'Declaration
<DisplayNameResourceAttribute("Microsoft.VisualStudio.Modeling.DslDefinition.Shape.DisplayName",  _
    GetType(DslDefinitionModelDomainModel), "Microsoft.VisualStudio.Modeling.DslDefinition.GeneratedCode.DomainModelResx")> _
<DescriptionResourceAttribute("Microsoft.VisualStudio.Modeling.DslDefinition.Shape.Description",  _
    GetType(DslDefinitionModelDomainModel), "Microsoft.VisualStudio.Modeling.DslDefinition.GeneratedCode.DomainModelResx")> _
<DomainModelOwnerAttribute(GetType(DslDefinitionModelDomainModel))> _
<CLSCompliantAttribute(True)> _
<DomainObjectIdAttribute("f1f25ea6-bdf9-4b35-9dec-59395fba0810")> _
<ValidationStateAttribute(ValidationState.Enabled)> _
Public MustInherit Class Shape _
    Inherits BaseShape
[DisplayNameResourceAttribute("Microsoft.VisualStudio.Modeling.DslDefinition.Shape.DisplayName", 
    typeof(DslDefinitionModelDomainModel), "Microsoft.VisualStudio.Modeling.DslDefinition.GeneratedCode.DomainModelResx")]
[DescriptionResourceAttribute("Microsoft.VisualStudio.Modeling.DslDefinition.Shape.Description", 
    typeof(DslDefinitionModelDomainModel), "Microsoft.VisualStudio.Modeling.DslDefinition.GeneratedCode.DomainModelResx")]
[DomainModelOwnerAttribute(typeof(DslDefinitionModelDomainModel))]
[CLSCompliantAttribute(true)]
[DomainObjectIdAttribute("f1f25ea6-bdf9-4b35-9dec-59395fba0810")]
[ValidationStateAttribute(ValidationState.Enabled)]
public abstract class Shape : BaseShape
[DisplayNameResourceAttribute(L"Microsoft.VisualStudio.Modeling.DslDefinition.Shape.DisplayName", 
    typeof(DslDefinitionModelDomainModel), L"Microsoft.VisualStudio.Modeling.DslDefinition.GeneratedCode.DomainModelResx")]
[DescriptionResourceAttribute(L"Microsoft.VisualStudio.Modeling.DslDefinition.Shape.Description", 
    typeof(DslDefinitionModelDomainModel), L"Microsoft.VisualStudio.Modeling.DslDefinition.GeneratedCode.DomainModelResx")]
[DomainModelOwnerAttribute(typeof(DslDefinitionModelDomainModel))]
[CLSCompliantAttribute(true)]
[DomainObjectIdAttribute(L"f1f25ea6-bdf9-4b35-9dec-59395fba0810")]
[ValidationStateAttribute(ValidationState::Enabled)]
public ref class Shape abstract : public BaseShape
[<AbstractClass>]
[<DisplayNameResourceAttribute("Microsoft.VisualStudio.Modeling.DslDefinition.Shape.DisplayName", 
    typeof(DslDefinitionModelDomainModel), "Microsoft.VisualStudio.Modeling.DslDefinition.GeneratedCode.DomainModelResx")>]
[<DescriptionResourceAttribute("Microsoft.VisualStudio.Modeling.DslDefinition.Shape.Description", 
    typeof(DslDefinitionModelDomainModel), "Microsoft.VisualStudio.Modeling.DslDefinition.GeneratedCode.DomainModelResx")>]
[<DomainModelOwnerAttribute(typeof(DslDefinitionModelDomainModel))>]
[<CLSCompliantAttribute(true)>]
[<DomainObjectIdAttribute("f1f25ea6-bdf9-4b35-9dec-59395fba0810")>]
[<ValidationStateAttribute(ValidationState.Enabled)>]
type Shape =  
    class 
        inherit BaseShape 
    end
public abstract class Shape extends BaseShape

The Shape type exposes the following members.

Constructors

  Name Description
Protected method Shape Constructor.

Top

Properties

  Name Description
Public property 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.)
Public property AllDescendants Gets a read-only list of all domain classes directly or indirectly derived from this one. (Inherited from DomainClass.)
Public property AllProperties The set of all DomainProperties both defined on this class and inherited from base classes. (Inherited from DomainClass.)
Public property AllRolesPlayed The set of all DomainRoles both played directly by this class and inherited from base classes. (Inherited from DomainClass.)
Public property Attributes Gets a list of Attributes. (Inherited from AttributedDomainElement.)
Public property BaseClass Gets or sets the base class of this domain class. (Inherited from DomainClass.)
Public property ClassData Gets or sets ClassData. Xml serialization configuration data for the domain class. (Inherited from DomainClass.)
Public property CustomAttributes Gets or sets the value of CustomAttributes domain property. Used to attribute the code generated from this element. (Inherited from AttributedDomainElement.)
Public property CustomTypeDescriptor Gets or sets CustomTypeDescriptor. Definition of the custom type descriptor for the class. (Inherited from DomainClass.)
Public property Decorators Gets a list of Decorators. Decorators for the diagram element. (Inherited from DiagramElement.)
Public property 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.)
Public property 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.)
Public property DslLibrary Gets or sets DslLibrary. Dsl library defining the shape. (Inherited from BaseShape.)
Public property ElementMergeDirectives Gets a list of ElementMergeDirectives. (Inherited from DomainClass.)
Public property 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.
Public property 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.
Public property 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.
Public property 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.
Public property 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.
Public property 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.)
Public property FillColor Gets or sets the value of FillColor domain property. Fill color of this shape.
Public property FillGradientMode Gets or sets the value of FillGradientMode domain property. Fill gradient mode of this shape.
Public property FixedTooltipText Gets or sets the value of FixedTooltipText domain property. Text used for a fixed tooltip. (Inherited from DiagramElement.)
Public property 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.)
Public property HasCustomConstructor Gets or sets the value of HasCustomConstructor domain property. If True, indicates that a custom constructor will be provided in the generated code. (Inherited from DomainClass.)
Public property 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.
Public property HelpKeyword Gets or sets the value of HelpKeyword domain property. Optional keyword used to index F1 help for this element. (Inherited from NamedDomainElement.)
Public property Id Gets the ID of the element. (Inherited from ModelElement.)
Public property 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.)
Public property InitialHeight Gets or sets the value of InitialHeight domain property. Initial height of this shape, in inches.
Public property InitialWidth Gets or sets the value of InitialWidth domain property. Initial width of this shape, in inches.
Public property IsActive Gets the IsActive flag and verifies to see whether the element is active. (Inherited from ModelElement.)
Public property IsDeleted Gets the IsDeleted flag and checks to see whether the element has been deleted from the model. (Inherited from ModelElement.)
Public property IsDeleting Gets the IsDeleting flag and verifies whether the element is currently being deleted from the model. (Inherited from ModelElement.)
Public property 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.)
Public property 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.)
Public property 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.)
Public property 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.)
Public property Name Gets or sets the value of Name domain property. Name of this element. (Inherited from NamedDomainElement.)
Public property Namespace Gets or sets the value of Namespace domain property. Namespace affiliated with this domain class. (Inherited from DomainClass.)
Public property Notes Gets or sets the value of Notes domain property. Informal notes associated with this element. (Inherited from DomainElement.)
Public property OutlineColor Gets or sets the value of OutlineColor domain property. Outline color of this shape.
Public property OutlineDashStyle Gets or sets the value of OutlineDashStyle domain property. Outline dash style of this shape.
Public property OutlineThickness Gets or sets the value of OutlineThickness domain property. Outline thickness of this shape.
Public property Partition Gets or sets the Partition that contains the element. (Inherited from ModelElement.)
Public property Properties Gets a list of Properties. (Inherited from DomainClass.)
Protected property ProxyIsNameTracking (Inherited from NamedDomainElement.)
Public property RolesPlayed Gets a list of RolesPlayed. Roles played by the class. (Inherited from DomainClass.)
Public property Store Gets the Store that contains the element. (Inherited from ModelElement.)
Public property SubClasses Gets a list of SubClasses. Description for Microsoft.VisualStudio.Modeling.DslDefinition.ClassHasBaseClass.BaseClass (Inherited from DomainClass.)
Public property TextColor Gets or sets the value of TextColor domain property. Color used for text decorators associated with this diagram element. (Inherited from DiagramElement.)
Public property 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.)

Top

Methods

  Name Description
Protected method CalculateDescription Calculate the value of Description (Inherited from DomainClass.)
Protected method CalculateName Calculates the value of Name (Inherited from NamedDomainElement.)
Protected method CanMerge Returns a value indicating whether the source element represented by the specified root ProtoElement can be added to this element. (Overrides DomainClass.CanMerge(ProtoElementBase, ElementGroupPrototype).)
Protected method ChooseMergeTarget(ElementGroup) Selects a target element to accept as its child an element that the user wants to copy, drag, or create. (Inherited from ModelElement.)
Protected method ChooseMergeTarget(ElementGroupPrototype) Selects a target element to accept as its child an element that the user wants to copy, drag, or create. (Inherited from ModelElement.)
Public method Copy() Creates a copy of the element in the model. (Inherited from ModelElement.)
Public method Copy(IEnumerable<Guid>) Creates a copy of the element and its child links and elements. (Inherited from ModelElement.)
Public method Delete() Deletes an element from the model. (Inherited from ModelElement.)
Public method Delete(array<Guid[]) Deletes an element from the model. (Inherited from ModelElement.)
Public method Equals Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected method Finalize Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public method GetDomainClass Gets the most-derived domain class for this element. (Inherited from ModelElement.)
Public method GetFullName Gets the fully qualified name for this class (Inherited from DomainClass.)
Public method GetHashCode Serves as the default hash function. (Inherited from Object.)
Public method GetRelativeName 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.)
Protected method GetRoleCollection<TCollection, TElement>(Guid) Gets or creates the linked element collection (Inherited from ModelElement.)
Public method GetType Gets the Type of the current instance. (Inherited from Object.)
Public method IsDerivedFrom Test if this class is derived from the given class. (Inherited from DomainClass.)
Protected method MemberwiseClone Creates a shallow copy of the current Object. (Inherited from Object.)
Protected method MergeConfigure Configure a newly merged DomainClass (Inherited from DomainClass.)
Protected method MergeDisconnect Performs operation opposite to MergeRelate - i.e. disconnects a given element from the current one (removes links created by MergeRelate). (Overrides DomainClass.MergeDisconnect(ModelElement).)
Protected method MergeRelate 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. (Overrides DomainClass.MergeRelate(ModelElement, ElementGroup).)
Protected method OnCopy Called when this element has been created as a copy of another element. (Inherited from ModelElement.)
Protected method OnDeleted Called when this element has been deleted from the model. (Inherited from ModelElement.)
Protected method OnDeleting Called when this element is about to be deleted. (Inherited from ModelElement.)
Protected method OnInheritanceModifierChanged Called when InheritanceModifier on a DomainClass changes (Inherited from DomainClass.)
Protected method OnNameChanged Name of DiagramElement changed (Inherited from DiagramElement.)
Protected method OnNamespaceChanged Called when the Namespace of a DomainClass changes (Inherited from DomainClass.)
Protected method OnResurrected Called when this element has been added back to a model. (Inherited from ModelElement.)
Protected method OnRolePlayerPositionChanged Called when the position of a role has changed. (Inherited from ModelElement.)
Protected method OnRolePlayerPositionChanging Called when a role player position is about to change. (Inherited from ModelElement.)
Public method ToString Returns a string that represents the current object. (Inherited from Object.)

Top

Extension Methods

  Name Description
Public Extension Method AddExtension(Guid) Overloaded. 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. (Defined by ModelElementExtensionMethods.)
Public Extension Method AddExtension(Type) Overloaded. 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. (Defined by ModelElementExtensionMethods.)
Public Extension Method AddExtension(DomainClassInfo) Overloaded. 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. (Defined by ModelElementExtensionMethods.)
Public Extension Method AddExtension(ExtensionElement) Overloaded. Extend this ModelElement with a specific extension. An InvalidOperationException will be thrown if the element already has an extension of the same type. (Defined by ModelElementExtensionMethods.)
Public Extension Method AddExtension<T>() Overloaded. 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. (Defined by ModelElementExtensionMethods.)
Public Extension Method CanDelete Deletes the element from the model. (Defined by ImmutabilityExtensionMethods.)
Public Extension Method GetAllExtensions Return an enumerable that performs a breadth first traversal across the tree of extension elements embedded in this ModelElement. (Defined by ModelElementExtensionMethods.)
Public Extension Method GetBaseElement Returns the root of the virtual MEL in which the specified ModelElement is participating. (Defined by ModelElementExtensionMethods.)
Public Extension Method GetExtension(Guid) Overloaded. (Defined by ModelElementExtensionMethods.)
Public Extension Method GetExtension(Type) Overloaded. 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. (Defined by ModelElementExtensionMethods.)
Public Extension Method GetExtension(DomainClassInfo) Overloaded. (Defined by ModelElementExtensionMethods.)
Public Extension Method GetExtension<T>() Overloaded. 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. (Defined by ModelElementExtensionMethods.)
Public Extension Method GetLocks Get the lock flags for this element. This will include any locks enabled on the Partition containing the element. (Defined by ImmutabilityExtensionMethods.)
Public Extension Method IsExtendedBy(Guid) Overloaded. Query whether this ModelElement is currently extended by an ExtensionElement of a particular type. (Defined by ModelElementExtensionMethods.)
Public Extension Method IsExtendedBy(Type) Overloaded. Query whether this ModelElement is currently extended by an ExtensionElement of a particular type. (Defined by ModelElementExtensionMethods.)
Public Extension Method IsExtendedBy(DomainClassInfo) Overloaded. Query whether this ModelElement is currently extended by an ExtensionElement of a particular type. (Defined by ModelElementExtensionMethods.)
Public Extension Method IsLocked Test whether this element has any of a specified set of locks (Defined by ImmutabilityExtensionMethods.)
Public Extension Method RemoveExtension(Type) Overloaded. Remove any extension of this ModelElement that is of a particular type. (Defined by ModelElementExtensionMethods.)
Public Extension Method RemoveExtension(Guid) Overloaded. Remove any extension of the specified ModelElement that is of a particular type. (Defined by ModelElementExtensionMethods.)
Public Extension Method RemoveExtension(DomainClassInfo) Overloaded. Remove any extension of the specified ModelElement that is of a particular type. (Defined by ModelElementExtensionMethods.)
Public Extension Method RemoveExtension(ExtensionElement) Overloaded. Remove a specified ExtensionElement from the extensions of this ModelElement. (Defined by ModelElementExtensionMethods.)
Public Extension Method SetLocks Set the lock flags of this element (Defined by ImmutabilityExtensionMethods.)
Public Extension Method TryGetExtension(Guid) Overloaded. (Defined by ModelElementExtensionMethods.)
Public Extension Method TryGetExtension(Type) Overloaded. (Defined by ModelElementExtensionMethods.)
Public Extension Method TryGetExtension(DomainClassInfo) Overloaded. (Defined by ModelElementExtensionMethods.)
Public Extension Method TryGetExtension<T>() Overloaded. 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. (Defined by ModelElementExtensionMethods.)

Top

Fields

  Name Description
Public fieldStatic member DomainClassId Shape domain class Id.
Public fieldStatic member ExposesFillColorAsPropertyDomainPropertyId ExposesFillColorAsProperty domain property Id.
Public fieldStatic member ExposesFillGradientModeDomainPropertyId ExposesFillGradientMode domain property Id.
Public fieldStatic member ExposesOutlineColorAsPropertyDomainPropertyId ExposesOutlineColorAsProperty domain property Id.
Public fieldStatic member ExposesOutlineDashStyleAsPropertyDomainPropertyId ExposesOutlineDashStyleAsProperty domain property Id.
Public fieldStatic member ExposesOutlineThicknessAsPropertyDomainPropertyId ExposesOutlineThicknessAsProperty domain property Id.
Public fieldStatic member FillColorDomainPropertyId FillColor domain property Id.
Public fieldStatic member FillGradientModeDomainPropertyId FillGradientMode domain property Id.
Public fieldStatic member HasDefaultConnectionPointsDomainPropertyId HasDefaultConnectionPoints domain property Id.
Public fieldStatic member InitialHeightDomainPropertyId InitialHeight domain property Id.
Public fieldStatic member InitialWidthDomainPropertyId InitialWidth domain property Id.
Public fieldStatic member OutlineColorDomainPropertyId OutlineColor domain property Id.
Public fieldStatic member OutlineDashStyleDomainPropertyId OutlineDashStyle domain property Id.
Public fieldStatic member OutlineThicknessDomainPropertyId OutlineThickness domain property Id.

Top

Explicit Interface Implementations

  Name Description
Explicit interface implemetationPrivate method IMergeElements.CanMerge Returns true if this element can merge with the content of the prototype. (Inherited from ModelElement.)
Explicit interface implemetationPrivate method IMergeElements.ChooseMergeTarget(ElementGroup) (Inherited from ModelElement.)
Explicit interface implemetationPrivate method IMergeElements.ChooseMergeTarget(ElementGroupPrototype) (Inherited from ModelElement.)
Explicit interface implemetationPrivate method IMergeElements.MergeConfigure (Inherited from ModelElement.)
Explicit interface implemetationPrivate method IMergeElements.MergeDisconnect (Inherited from ModelElement.)
Explicit interface implemetationPrivate method IMergeElements.MergeRelate (Inherited from ModelElement.)

Top

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

See Also

Reference

Microsoft.VisualStudio.Modeling.DslDefinition Namespace

Inheritance Hierarchy

System.Object
  Microsoft.VisualStudio.Modeling.ModelElement
    Microsoft.VisualStudio.Modeling.DslDefinition.DomainElement
      Microsoft.VisualStudio.Modeling.DslDefinition.AttributedDomainElement
        Microsoft.VisualStudio.Modeling.DslDefinition.NamedDomainElement
          Microsoft.VisualStudio.Modeling.DslDefinition.DomainClass
            Microsoft.VisualStudio.Modeling.DslDefinition.DiagramElement
              Microsoft.VisualStudio.Modeling.DslDefinition.BaseShape
                Microsoft.VisualStudio.Modeling.DslDefinition.Shape
                  Microsoft.VisualStudio.Modeling.DslDefinition.CompartmentShape
                  Microsoft.VisualStudio.Modeling.DslDefinition.GeometryShape
                  Microsoft.VisualStudio.Modeling.DslDefinition.ImageShape