Class PseudoStateView

  • All Implemented Interfaces:
    BaseElement, com.nomagic.magicdraw.uml.CompartmentSupport, MDElement, ModelElementProvider, com.nomagic.magicdraw.uml.symbols.LabelOwner, com.nomagic.magicdraw.uml.symbols.manipulators.centerlines.CenterlineableShape, StereotypesDisplayModeOwner, com.nomagic.magicdraw.uml.symbols.SuspendShapeAutoResizeModeProvider, NameOwner, java.beans.PropertyChangeListener, java.lang.Cloneable, java.lang.Comparable, java.util.EventListener

    @OpenApi
    public class PseudoStateView
    extends com.nomagic.magicdraw.uml.symbols.shapes.ShapeWithLabels
    End shape view is used in state diagrams to represent End shape. End shape is either the first end in transition chain or the last end. If it is first end, it can have only outgoing transitions. Visually this shape looks like filled circle. If it is last end shape, it is the last one in transition chain and can have only incoming transitions. Visually this shape looks like circle with a filled circle inside.
    • Field Detail

      • mType

        private int mType
        Type of this shape. 0 stands for start end, 1 for finish end. 3 == history, 2 == history applied to sub-states.
      • TYPE_INITIAL

        public static final int TYPE_INITIAL
        Types for global access
        See Also:
        Constant Field Values
      • TYPE_CONNECTION_POINT_REFERENCE

        public static final int TYPE_CONNECTION_POINT_REFERENCE
        See Also:
        Constant Field Values
      • mInsideText

        private java.lang.String mInsideText
    • Constructor Detail

      • PseudoStateView

        public PseudoStateView()
    • Method Detail

      • getType

        public int getType()
        Returns:
        the shape type
      • paintSelf

        public void paintSelf​(com.nomagic.magicdraw.uml.symbols.DiagramPaintContext context)
      • drawFinalCross

        private static void drawFinalCross​(java.awt.Rectangle bounds,
                                           java.awt.Graphics g)
      • accept

        public void accept​(Visitor visitor)
                    throws java.lang.Exception
        Description copied from interface: MDElement
        Method accepts visitor, and calls method visit<class name>(this) of visitor . See Visitor pattern for more details.
        Specified by:
        accept in interface MDElement
        Overrides:
        accept in class com.nomagic.magicdraw.uml.symbols.shapes.ShapeWithLabels
        Parameters:
        visitor - which visits this element.
        Throws:
        java.lang.Exception
      • sSetElement

        public void sSetElement​(Element element)
        Overrides:
        sSetElement in class com.nomagic.magicdraw.uml.symbols.shapes.ShapeWithLabels
      • changeTypeByElement

        private void changeTypeByElement()
      • createBoundsShape

        public ContainerShape createBoundsShape​(PathElement path,
                                                BoundsTransformation transformation)
        Description copied from class: ShapeElement
        Creates bounding shape for intersection calculation.
        Overrides:
        createBoundsShape in class com.nomagic.magicdraw.uml.symbols.shapes.AbstractHeaderShapeView
        Parameters:
        path - path
        transformation - transformation
        Returns:
        shape
      • findParentForData

        public Element findParentForData​(PresentationElement parent,
                                         com.nomagic.uml2.ext.jmi.helpers.ElementAddContext addContext)
      • internalSpecificUpdate

        protected void internalSpecificUpdate()
        Overrides:
        internalSpecificUpdate in class com.nomagic.magicdraw.uml.symbols.shapes.AbstractHeaderShapeView
      • updateNameBox

        public void updateNameBox()
        Overrides:
        updateNameBox in class com.nomagic.magicdraw.uml.symbols.shapes.ShapeWithLabels
      • minimumSizeIgnoringOrientation

        protected void minimumSizeIgnoringOrientation​(java.awt.Dimension min)
        Overrides:
        minimumSizeIgnoringOrientation in class com.nomagic.magicdraw.uml.symbols.shapes.AbstractHeaderShapeView
      • preferredSizeIgnoringOrientation

        protected void preferredSizeIgnoringOrientation​(java.awt.Dimension pref,
                                                        int locationX,
                                                        int locationY)
        Overrides:
        preferredSizeIgnoringOrientation in class com.nomagic.magicdraw.uml.symbols.shapes.AbstractHeaderShapeView
      • createSmartListenerConfig

        protected void createSmartListenerConfig​(java.util.List<SmartListenerConfig> configurations)
        Overrides:
        createSmartListenerConfig in class com.nomagic.magicdraw.uml.symbols.shapes.ShapeWithLabels
      • setEdgeByType

        private void setEdgeByType()
      • canChangeParent

        public boolean canChangeParent​(java.util.Collection<? extends PresentationElement> movedTogether,
                                       @CheckForNull
                                       BaseElement newParent,
                                       boolean changeElementParent)
        Description copied from class: PresentationElement
        Returns true, if element can change parent.
        Parameters:
        movedTogether - collection of the elements, whose will change the parent together with this.
        newParent - new symbol parent
        changeElementParent - change element parent
        Returns:
        true if parent of symbol can be changed
      • isEntryExitConnectionPoint

        public boolean isEntryExitConnectionPoint()
      • isEntryExitConnectionPoint

        private static boolean isEntryExitConnectionPoint​(int type)
      • setOnEdge

        public void setOnEdge​(int onEdge)
        Description copied from class: ShapeElement
        Sets on edge property.
        Parameters:
        onEdge - the edge constant
        See Also:
        ShapeElement.getOnEdge()
      • hasSharedData

        public boolean hasSharedData()
        Description copied from class: PresentationElement
        Returns true if data of this object can be shared. If data is not shared data can be deleted with del key. Or it must be deleted with CRL+D
        Returns:
        true if data of this object can be shared.