Package com.inductiveautomation.rm.shape
Class RMTableGroup
- java.lang.Object
-
- com.inductiveautomation.rm.base.RMListenerList
-
- com.inductiveautomation.rm.base.RMObject
-
- com.inductiveautomation.rm.shape.RMShape
-
- com.inductiveautomation.rm.shape.RMParentShape
-
- com.inductiveautomation.rm.shape.RMTableGroup
-
- All Implemented Interfaces:
Archivable
,DeepChangeListener
,RMPropertyChanger
,RMTypes
,java.beans.PropertyChangeListener
,java.lang.Cloneable
,java.util.EventListener
public class RMTableGroup extends RMParentShape
This class manages a hierarchy of tables so that multiple tables can be configured to display in the same area of a given page. Each table will pick up exactly where the previous table ended.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface com.inductiveautomation.rm.base.RMTypes
RMTypes.Align, RMTypes.AlignX, RMTypes.AlignY
-
-
Field Summary
-
Fields inherited from class com.inductiveautomation.rm.shape.RMShape
BINDING_PROP_NAME, STROKE_BORDER, STROKE_DOUBLE, STROKE_HIDDEN, STROKE_SHAPE
-
-
Constructor Summary
Constructors Constructor Description RMTableGroup()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addChildTable(RMTable aTable)
Adds the given table as a child to the main table.void
addChildTable(RMTable aTable, RMTable aParentTable)
Adds the given table as a child of the given parent table.void
addChildTable(RMTable aTable, RMTable aParentTable, RMTable afterThisTable)
Adds the given table table as a child of the parent table (after the third given table).void
addPeerTable(RMTable aTable)
Adds the given table to the main table's list of peers.void
addPeerTable(RMTable aTable, RMTable afterThisTable)
Adds the given table as a peer, and just after, the second given table.boolean
childrenSuperSelectImmediately()
Editor method - indicates that table group children (tables) super select immediately.RMTableGroup
clone()
Standard clone implementation.RMTableGroup
cloneDeep()
Override to clone child tables.protected void
fromXMLChildren(RXArchiver anArchiver, RXElement anElement)
XML unarchival - overridden to unarchive all child tables, recursively.protected void
fromXMLChildTables(RXArchiver anArchiver, RXElement anElement, RMTable aParentTable)
XML archival to recursively unarchive table group hierarchy.RMTable
getChildTable(int anIndex)
Returns the top level table at the given index for this table group.RMTable
getChildTable(java.lang.Object aTable, int anIndex)
Returns the specific child table of the given table at the given index.int
getChildTableCount()
Returns the number of top level tables in this table group.int
getChildTableCount(java.lang.Object aTable)
Returns the number of child tables for the given parent table.java.util.List<RMTable>
getChildTables()
Returns the list of top level tables for this table group.java.util.List<RMTable>
getChildTables(java.lang.Object aTable)
Returns the list of child tables for the given table.java.util.List<RMTable>
getChildTables(java.lang.Object aTable, boolean create)
Returns the list of child tables for the given table, creating the list if requested.java.lang.String
getDatasetKey()
Returns the complete dataset key for the current main table (pre-pending dataset keys of parents).RMTable
getMainTable()
Returns the currently selected table.RMTable
getParentTable(RMTable aTable)
Returns the parent of the given table.RMTable
getPeerTableNext(RMTable aTable)
Returns the next peer table of the given table.RMTable
getPeerTablePrevious(RMTable aTable)
Returns the previous peer table of the given table.java.util.List<RMTable>
getPeerTables(RMTable aTable)
Returns the list of peer tables for a given table.boolean
getStrokeOnTop()
Override to paint table stroke on top.int
indexOf(RMTable aTable)
Returns the index of the given table in its parent's child tables list.protected void
layoutChildren()
Override to reset child in bounds.void
makeTableChildOfTable(RMTable aTable, java.lang.Object newParent)
This method moves a table to a new parent (used for Move In and Move Out menus).void
moveTable(RMTable aTable, int interval)
This method moves a given table up or down in its peer list (used for Move Up & Move Down menus).void
paintShapeOver(RMShapePainter aPntr)
Paints table group button after child table has been drawn.void
removeTable(RMTable aTable)
This method removes a table from the table group.RMShape
rpgAll(ReportOwner anRptOwner, RMShape aParent)
Override to set main table to first child table.void
setMainTable(RMTable aTable)
Sets the currently selected table.protected void
toXMLChildren(RXArchiver anArchiver, RXElement anElement)
XML archival - override to archive all child tables (not just visible one), recursively.protected void
toXMLChildTables(RXArchiver anArchiver, RXElement anElement, RMTable aParentTable)
XML archival to recursively archive table group hierarchy.protected RXElement
toXMLShape(RXArchiver anArchiver)
XML archival.-
Methods inherited from class com.inductiveautomation.rm.shape.RMParentShape
addChild, addChild, addChild, addChild, addLayoutChild, bringShapesToFront, computePrefHeight, computePrefWidth, divideShapeFromTop, fromXML, fromXMLShape, getBoundsOfChildren, getChild, getChildArray, getChildContaining, getChildCount, getChildLast, getChildren, getChildrenIntersecting, getChildrenWithClass, getChildrenWithClass, getChildWithClass, getChildWithName, getLayout, getNeedsLayout, getSourceURL, indexOfChild, isHittable, isShowing, isSourceURLSet, layout, relayout, removeChild, removeChild, removeChildren, removeLayoutChild, rpgChildren, sendShapesToBack, setHeight, setLayout, setNeedsLayout, setSourceURL, setWidth, toXML
-
Methods inherited from class com.inductiveautomation.rm.shape.RMShape
acceptsChildren, acceptsMouse, addBinding, addBinding, addDeepChangeListener, addMouseListener, animUpdate, bounds, contains, convertedPointFromShape, convertedPointToShape, convertedRectFromShape, convertedRectToShape, convertedVectorFromShape, convertedVectorToShape, convertFromShape, convertPathFromShape, convertPathToShape, convertPointFromShape, convertPointToShape, convertRectFromShape, convertRectToShape, convertToShape, convertVectorFromShape, convertVectorToShape, copyShape, createDivideShapeRemainder, deepChange, divideShapeFromEdge, get, get, getAlignment, getAlignmentX, getAlignmentY, getAncestor, getAncestorCount, getAncestorInCommon, getAnimator, getAnimator, getAutosizing, getAutosizingDefault, getBestHeight, getBestHeight, getBestWidth, getBestWidth, getBinding, getBinding, getBindingCount, getBindings, getBounds, getBoundsInside, getBoundsMarked, getBoundsMarkedDeep, getChildAnimator, getChildAnimator, getChildClipShape, getClipShape, getColor, getDashArrayString, getDashPhase, getDatasetEntity, getDisplayedFill, getDisplayedStroke, getDocument, getEffect, getEventAdapter, getFill, getFont, getFormat, getFrame, getFrameHeight, getFrameMaxX, getFrameMaxY, getFrameWidth, getFrameX, getFrameXY, getFrameY, getHeight, getHover, getLayoutInfo, getMaskPath, getMaxX, getMaxY, getMinHeight, getMinHeight, getMinWidth, getMinWidth, getName, getOpacity, getOpacityDeep, getOutline, getPageBreak, getPageBreakMax, getPageBreakPage, getPageBreakPageMax, getPageShape, getParent, getParent, getPath, getPathInBounds, getPrefHeight, getPrefHeight, getPrefWidth, getPrefWidth, getPropertyNameMapped, getPropertyNames, getPropertyNames, getRoll, getRootShape, getRSS, getScaleX, getScaleY, getShapesToAncestor, getShapesToDescendant, getShapesToShape, getSize, getSkewX, getSkewY, getStroke, getStrokeColor, getStrokeStyle, getStrokeWidth, getTextColor, getTimeline, getTimeline, getTransform, getTransformFromShape, getTransformInverse, getTransformToShape, getUndoer, getURL, getVisbileBounds, getVisibleBounds, getVisibleBounds, getVisibleBounds, getWidth, getX, getXY, getXYP, getY, height, indexOf, intersects, isAncestor, isAnimProperty, isDeletable, isDescendant, isEditing, isEnabled, isFontSet, isHittable, isLocked, isMinHeightSet, isMinWidthSet, isPrefHeightSet, isPrefWidthSet, isRoot, isRSS, isShowing, isUnderlined, isUseFill, isUseStroke, isViewing, isVisible, mouseClicked, mouseDragged, mouseEntered, mouseExited, mouseMoved, mousePressed, mouseReleased, offsetXY, page, pageMax, paint, paintShape, paintShapeAll, paintShapeChildren, propertyChange, put, removeBinding, removeBinding, removeDeepChangeListener, removeFromParent, removeMouseListener, repaint, repaint, resolvePageReferences, rpgBindings, rpgShape, setAlignment, setAlignmentX, setAlignmentY, setAutosizing, setBestHeight, setBestSize, setBounds, setBounds, setColor, setDashArrayString, setDashPhase, setEffect, setEnabled, setFill, setFont, setFormat, setFrame, setFrame, setFrameSize, setFrameX, setFrameXY, setFrameXY, setFrameY, setHover, setLayoutInfo, setLocked, setMinHeight, setMinSize, setMinWidth, setName, setOpacity, setOutline, setParent, setPrefHeight, setPrefWidth, setRoll, setScaleX, setScaleXY, setScaleY, setShowing, setSize, setSize, setSkewX, setSkewXY, setSkewY, setStroke, setStrokeColor, setStrokeStyle, setStrokeWidth, setTextColor, setTime, setTimeline, setUnderlined, setURL, setUseFill, setUseStroke, setVisible, setX, setXY, setXY, setXYP, setY, shapeHidden, shapeShown, superSelectable, toString, undoerDisable, undoerEnable, undoerSetUndoTitle, width, x, y
-
Methods inherited from class com.inductiveautomation.rm.base.RMObject
addPropertyChangeListener, firePropertyChange, firePropertyChange, firePropertyChange, getPCEvent, removePropertyChangeListener, sendPropertyChange
-
Methods inherited from class com.inductiveautomation.rm.base.RMListenerList
addListener, getListener, getListenerCount, getListenerCount, getListenerList, getListeners, hasListeners, removeListener
-
-
-
-
Method Detail
-
getMainTable
public RMTable getMainTable()
Returns the currently selected table.
-
setMainTable
public void setMainTable(@Nullable RMTable aTable)
Sets the currently selected table.
-
getParentTable
@Nullable public RMTable getParentTable(RMTable aTable)
Returns the parent of the given table.
-
indexOf
public int indexOf(RMTable aTable)
Returns the index of the given table in its parent's child tables list. Returns -1 if not found
-
getPeerTables
public java.util.List<RMTable> getPeerTables(RMTable aTable)
Returns the list of peer tables for a given table.
-
getPeerTablePrevious
@Nullable public RMTable getPeerTablePrevious(RMTable aTable)
Returns the previous peer table of the given table.
-
getPeerTableNext
public RMTable getPeerTableNext(RMTable aTable)
Returns the next peer table of the given table.
-
getChildTableCount
public int getChildTableCount()
Returns the number of top level tables in this table group.
-
getChildTable
public RMTable getChildTable(int anIndex)
Returns the top level table at the given index for this table group.
-
getChildTables
public java.util.List<RMTable> getChildTables()
Returns the list of top level tables for this table group.
-
getChildTableCount
public int getChildTableCount(java.lang.Object aTable)
Returns the number of child tables for the given parent table.
-
getChildTable
public RMTable getChildTable(java.lang.Object aTable, int anIndex)
Returns the specific child table of the given table at the given index.
-
getChildTables
public java.util.List<RMTable> getChildTables(java.lang.Object aTable)
Returns the list of child tables for the given table.
-
getChildTables
public java.util.List<RMTable> getChildTables(java.lang.Object aTable, boolean create)
Returns the list of child tables for the given table, creating the list if requested.
-
getDatasetKey
public java.lang.String getDatasetKey()
Returns the complete dataset key for the current main table (pre-pending dataset keys of parents).- Overrides:
getDatasetKey
in classRMShape
-
addPeerTable
public void addPeerTable(RMTable aTable)
Adds the given table to the main table's list of peers.
-
addPeerTable
public void addPeerTable(RMTable aTable, RMTable afterThisTable)
Adds the given table as a peer, and just after, the second given table.
-
addChildTable
public void addChildTable(RMTable aTable)
Adds the given table as a child to the main table.
-
addChildTable
public void addChildTable(RMTable aTable, RMTable aParentTable)
Adds the given table as a child of the given parent table.
-
addChildTable
public void addChildTable(RMTable aTable, RMTable aParentTable, RMTable afterThisTable)
Adds the given table table as a child of the parent table (after the third given table).
-
moveTable
public void moveTable(RMTable aTable, int interval)
This method moves a given table up or down in its peer list (used for Move Up & Move Down menus).
-
makeTableChildOfTable
public void makeTableChildOfTable(RMTable aTable, java.lang.Object newParent)
This method moves a table to a new parent (used for Move In and Move Out menus).
-
removeTable
public void removeTable(RMTable aTable)
This method removes a table from the table group.
-
paintShapeOver
public void paintShapeOver(RMShapePainter aPntr)
Paints table group button after child table has been drawn.- Overrides:
paintShapeOver
in classRMShape
-
getStrokeOnTop
public boolean getStrokeOnTop()
Override to paint table stroke on top.- Overrides:
getStrokeOnTop
in classRMShape
-
layoutChildren
protected void layoutChildren()
Override to reset child in bounds.- Overrides:
layoutChildren
in classRMParentShape
-
rpgAll
public RMShape rpgAll(ReportOwner anRptOwner, RMShape aParent)
Override to set main table to first child table.- Overrides:
rpgAll
in classRMParentShape
-
clone
public RMTableGroup clone()
Standard clone implementation.- Overrides:
clone
in classRMParentShape
-
cloneDeep
public RMTableGroup cloneDeep()
Override to clone child tables.- Overrides:
cloneDeep
in classRMParentShape
-
toXMLShape
protected RXElement toXMLShape(RXArchiver anArchiver)
XML archival.- Overrides:
toXMLShape
in classRMParentShape
-
toXMLChildren
protected void toXMLChildren(RXArchiver anArchiver, RXElement anElement)
XML archival - override to archive all child tables (not just visible one), recursively.- Overrides:
toXMLChildren
in classRMParentShape
-
toXMLChildTables
protected void toXMLChildTables(RXArchiver anArchiver, RXElement anElement, RMTable aParentTable)
XML archival to recursively archive table group hierarchy.
-
fromXMLChildren
protected void fromXMLChildren(RXArchiver anArchiver, RXElement anElement)
XML unarchival - overridden to unarchive all child tables, recursively.- Overrides:
fromXMLChildren
in classRMParentShape
-
fromXMLChildTables
protected void fromXMLChildTables(RXArchiver anArchiver, RXElement anElement, RMTable aParentTable)
XML archival to recursively unarchive table group hierarchy.
-
childrenSuperSelectImmediately
public boolean childrenSuperSelectImmediately()
Editor method - indicates that table group children (tables) super select immediately.- Overrides:
childrenSuperSelectImmediately
in classRMShape
-
-