Class RMSplitShape

  • All Implemented Interfaces:
    RMArchiver.Archiving, java.lang.Cloneable
    Direct Known Subclasses:
    RMTable

    public class RMSplitShape
    extends RMShape
    This shape subclass is like a JSplitPane for shapes. It holds a numer of horizontally stacked children with dividers between them and lets the user resize them and correctly moves adjacent rows.
    • Constructor Detail

      • RMSplitShape

        public RMSplitShape()
        Creates a new unitialized split shape.
    • Method Detail

      • getChildWithTitle

        public RMShape getChildWithTitle​(java.lang.String title)
        Returns a specific child with the given name.
      • getTitleForChild

        public java.lang.String getTitleForChild​(RMShape aShape)
        Returns the title for a given child.
      • addChild

        public void addChild​(RMShape child)
        Overrides shape method to incorporate a null title.
        Overrides:
        addChild in class RMShape
      • addChildWithTitle

        public void addChildWithTitle​(RMShape child,
                                      java.lang.String title)
        Adds a child to the split shape with the associated title.
      • removeChild

        public void removeChild​(int anIndex)
        Overrides the shape method to also remove child from title map.
        Overrides:
        removeChild in class RMShape
      • arrangeChildren

        public void arrangeChildren()
        Resets the location of children.
      • setWidthDeep

        public void setWidthDeep​(float value,
                                 boolean constrain)
        Overrides shape method to directly propagate to children (is this really needed?).
        Overrides:
        setWidthDeep in class RMShape
      • setHeightDeep

        public void setHeightDeep​(float value,
                                  boolean constrain)
        Overrides shape method to short circuit height deep propagation and reset children.
        Overrides:
        setHeightDeep in class RMShape
      • getResizeBarBounds

        public RMRect getResizeBarBounds​(int index)
        Returns the bounds rect of the resize bar for the child at the given index.
      • getResizeBarAtPoint

        public int getResizeBarAtPoint​(RMPoint aPoint)
        Returns the index of the resize bar that is hit by the given point.
      • clone

        public java.lang.Object clone()
        Standard clone implementation.
        Overrides:
        clone in class RMShape
      • superSelectable

        public boolean superSelectable()
        Editor method - indicates that split shape is super selectable.
        Overrides:
        superSelectable in class RMShape
      • childrenSuperSelectImmediately

        public boolean childrenSuperSelectImmediately()
        Editor method - indicates that children should super select immediately when split shape is super selected.
        Overrides:
        childrenSuperSelectImmediately in class RMShape
      • canBeUngrouped

        public boolean canBeUngrouped()
        Editor method - indicates that split shapes can't be ungrouped.
        Overrides:
        canBeUngrouped in class RMShape