Package com.inductiveautomation.rm.shape
Class RMTable
- 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.RMTable
 
 
 
 
 
- 
- All Implemented Interfaces:
- Archivable,- DeepChangeListener,- RMPropertyChanger,- RMTypes,- RMShapeSelfInit,- java.beans.PropertyChangeListener,- java.lang.Cloneable,- java.util.EventListener
 
 public class RMTable extends RMParentShape implements RMShapeSelfInit This RMShape subclass provides functionality to graphically represent a list of data in a ReportMill report. It also supports data manipulation such as grouping and sorting.
- 
- 
Nested Class Summary- 
Nested classes/interfaces inherited from interface com.inductiveautomation.rm.base.RMTypesRMTypes.Align, RMTypes.AlignX, RMTypes.AlignY
 
- 
 - 
Field SummaryFields Modifier and Type Field Description static java.lang.StringDEFAULT_TABLE_DATAKEY- 
Fields inherited from class com.inductiveautomation.rm.shape.RMShapeBINDING_PROP_NAME, STROKE_BORDER, STROKE_DOUBLE, STROKE_HIDDEN, STROKE_SHAPE
 
- 
 - 
Method SummaryAll Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddChildWithTitle(RMTableRow aChild, int anIndex, java.lang.String aTitle)Convenience to set a child title and add to the table.RMTableRowaddDetails(java.lang.String aKey)Convenience to add details for grouping key.voidaddGrouping(RMGrouping aGrouping, int anIndex)Adds a given grouping to the table at the given grouping index.voidaddGroupingKey(java.lang.String aKey, int anIndex)Adds a grouping to the table for the given key string at the given grouping index.RMTableRowaddHeader(java.lang.String aKey)Convenience to add header for grouping key.RMTableRowaddSummary(java.lang.String aKey)Convenience to add summary for grouping key.booleanchildrenSuperSelectImmediately()Editor method - indicates that children should super select immediately when split shape is super selected.RMTableclone()Standard clone implementation.protected voidfromXMLChildren(RXArchiver anArchiver, RXElement anElement)XML unarchival for shape children.protected voidfromXMLShape(RXArchiver anArchiver, RXElement anElement)XML unarchival.RMShapegetChildWithTitle(java.lang.String aTitle)Returns a specific child with the given name.intgetColumnCount()Returns the number of columns that this table should be repeated over on the same page before paginating.doublegetColumnSpacing()Returns the space between a table that has more than one column (int printer points).java.lang.StringgetDatasetKey()Returns the dataset key associated with the table.java.lang.StringgetFilterKey()Returns the optional key chain expression string used to prune the table list derived from dataset key.RMGroupergetGrouper()Returns the grouper associated with the table.RMGroupinggetGrouping(int anIndex)Returns the individual grouping at the given index.RMGroupinggetGrouping(java.lang.String aKey)Returns the individual grouping that has the same key as the one given.RMGroupinggetGrouping(java.lang.String aKey, boolean doCreate, int anIndex)Returns the individual grouping that has the same key as the one given, with option to create at index if missing.intgetGroupingCount()Returns the number of groups in this table.intgetPageBreakGroupIndex()Returns the index of the grouping in the grouper at which an explicit.intgetResizeBarAtPoint(RMPoint aPoint)Returns the index of the resize bar that is hit by the given point.RMRectgetResizeBarBounds(int anIndex)Returns the bounds rect of the resize bar for the child at the given index.RMTableRowgetRow(int anIndex)Returns the specific table row at the given index.RMTableRowgetRow(java.lang.String aName)Returns the specific table row with the given name.booleangetStartingPageBreak()Returns whether this table should always start on a new page (if in table group).booleangetStartingRowPageBreak()Returns whether each row should always start on a new page (if in a table group).booleangetStrokeOnTop()Override to paint table stroke on top.protected voidgrouperChanged()Called when there is a grouper change to ensure that table rows match groupings.protected voidlayoutChildren()Performs layout.voidmoveGrouping(int fromIndex, int toIndex)Moves the grouping at the first index so that it resides at the second index.voidpaintShape(RMShapePainter aPntr)Paints a table shape.voidpaintShapeOver(RMShapePainter aPntr)Paints stroke around table after all children have drawn.voidpropertyChange(java.beans.PropertyChangeEvent anEvent)Override to update rows when grouper changes and revalidate when child height changes.voidremoveGrouping(RMGrouping aGrouping)Removes the given grouping.RMShaperpgAll(ReportOwner anOwner, RMShape aParent)Report generation for table.voidselfInit()voidsetColumnCount(int aValue)Sets the number of columns that this table should be repeated over on the same page before paginating.voidsetColumnSpacing(double aValue)Sets the space between a table that has more than one column (int printer points).voidsetDatasetKey(java.lang.String aKeyPath)Sets the dataset key associated with the table.voidsetFilterKey(java.lang.String aKeyExpr)Sets the optional key chain expression string used to prune the table list derived from dataset key.voidsetGrouper(RMGrouper aGrouper)Sets the grouper associated with the table.voidsetPageBreakGroupIndex(int aValue)Returns the index of the grouping in the grouper at which an explicit.voidsetStartingPageBreak(boolean aFlag)Sets whether this table should always start on a new page (if in table group).voidsetStartingRowPageBreak(boolean aFlag)Sets whether this table's rows should always start on a new page (if in table group).voidsetTitleForChild(java.lang.String aNm1, java.lang.String aNm2)Sets title for child of given name to new name.java.lang.StringtoString()Standard to string implementation (prints class name and shape bounds).protected RXElementtoXMLShape(RXArchiver anArchiver)XML archival.- 
Methods inherited from class com.inductiveautomation.rm.shape.RMParentShapeaddChild, addChild, addChild, addChild, addLayoutChild, bringShapesToFront, cloneDeep, computePrefHeight, computePrefWidth, divideShapeFromTop, fromXML, 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, toXMLChildren
 - 
Methods inherited from class com.inductiveautomation.rm.shape.RMShapeacceptsChildren, 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, paintShapeAll, paintShapeChildren, 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, undoerDisable, undoerEnable, undoerSetUndoTitle, width, x, y
 - 
Methods inherited from class com.inductiveautomation.rm.base.RMObjectaddPropertyChangeListener, firePropertyChange, firePropertyChange, firePropertyChange, getPCEvent, removePropertyChangeListener, sendPropertyChange
 - 
Methods inherited from class com.inductiveautomation.rm.base.RMListenerListaddListener, getListener, getListenerCount, getListenerCount, getListenerList, getListeners, hasListeners, removeListener
 
- 
 
- 
- 
- 
Field Detail- 
DEFAULT_TABLE_DATAKEYpublic static final java.lang.String DEFAULT_TABLE_DATAKEY - See Also:
- Constant Field Values
 
 
- 
 - 
Method Detail- 
selfInitpublic void selfInit() - Specified by:
- selfInitin interface- RMShapeSelfInit
 
 - 
getDatasetKeypublic java.lang.String getDatasetKey() Returns the dataset key associated with the table.- Overrides:
- getDatasetKeyin class- RMShape
 
 - 
setDatasetKeypublic void setDatasetKey(java.lang.String aKeyPath) Sets the dataset key associated with the table.
 - 
getFilterKeypublic java.lang.String getFilterKey() Returns the optional key chain expression string used to prune the table list derived from dataset key.
 - 
setFilterKeypublic void setFilterKey(java.lang.String aKeyExpr) Sets the optional key chain expression string used to prune the table list derived from dataset key.
 - 
getGrouperpublic RMGrouper getGrouper() Returns the grouper associated with the table.
 - 
setGrouperpublic void setGrouper(RMGrouper aGrouper) Sets the grouper associated with the table.
 - 
getGroupingCountpublic int getGroupingCount() Returns the number of groups in this table.
 - 
getGroupingpublic RMGrouping getGrouping(int anIndex) Returns the individual grouping at the given index.
 - 
getGroupingpublic RMGrouping getGrouping(java.lang.String aKey) Returns the individual grouping that has the same key as the one given.
 - 
getGroupingpublic RMGrouping getGrouping(java.lang.String aKey, boolean doCreate, int anIndex) Returns the individual grouping that has the same key as the one given, with option to create at index if missing.
 - 
addGroupingKeypublic void addGroupingKey(java.lang.String aKey, int anIndex)Adds a grouping to the table for the given key string at the given grouping index.
 - 
addGroupingpublic void addGrouping(RMGrouping aGrouping, int anIndex) Adds a given grouping to the table at the given grouping index.
 - 
removeGroupingpublic void removeGrouping(RMGrouping aGrouping) Removes the given grouping.
 - 
moveGroupingpublic void moveGrouping(int fromIndex, int toIndex)Moves the grouping at the first index so that it resides at the second index.
 - 
addHeaderpublic RMTableRow addHeader(java.lang.String aKey) Convenience to add header for grouping key.
 - 
addDetailspublic RMTableRow addDetails(java.lang.String aKey) Convenience to add details for grouping key.
 - 
addSummarypublic RMTableRow addSummary(java.lang.String aKey) Convenience to add summary for grouping key.
 - 
propertyChangepublic void propertyChange(java.beans.PropertyChangeEvent anEvent) Override to update rows when grouper changes and revalidate when child height changes.- Specified by:
- propertyChangein interface- java.beans.PropertyChangeListener
- Overrides:
- propertyChangein class- RMShape
 
 - 
grouperChangedprotected void grouperChanged() Called when there is a grouper change to ensure that table rows match groupings.
 - 
getPageBreakGroupIndexpublic int getPageBreakGroupIndex() Returns the index of the grouping in the grouper at which an explicit.
 - 
setPageBreakGroupIndexpublic void setPageBreakGroupIndex(int aValue) Returns the index of the grouping in the grouper at which an explicit.
 - 
getStartingPageBreakpublic boolean getStartingPageBreak() Returns whether this table should always start on a new page (if in table group).
 - 
getStartingRowPageBreakpublic boolean getStartingRowPageBreak() Returns whether each row should always start on a new page (if in a table group).
 - 
setStartingPageBreakpublic void setStartingPageBreak(boolean aFlag) Sets whether this table should always start on a new page (if in table group).
 - 
setStartingRowPageBreakpublic void setStartingRowPageBreak(boolean aFlag) Sets whether this table's rows should always start on a new page (if in table group).
 - 
getColumnCountpublic int getColumnCount() Returns the number of columns that this table should be repeated over on the same page before paginating.
 - 
setColumnCountpublic void setColumnCount(int aValue) Sets the number of columns that this table should be repeated over on the same page before paginating.
 - 
getColumnSpacingpublic double getColumnSpacing() Returns the space between a table that has more than one column (int printer points).
 - 
setColumnSpacingpublic void setColumnSpacing(double aValue) Sets the space between a table that has more than one column (int printer points).
 - 
getRowpublic RMTableRow getRow(int anIndex) Returns the specific table row at the given index.
 - 
getRowpublic RMTableRow getRow(java.lang.String aName) Returns the specific table row with the given name.
 - 
getChildWithTitlepublic RMShape getChildWithTitle(java.lang.String aTitle) Returns a specific child with the given name.
 - 
setTitleForChildpublic void setTitleForChild(java.lang.String aNm1, java.lang.String aNm2)Sets title for child of given name to new name.
 - 
addChildWithTitlepublic void addChildWithTitle(RMTableRow aChild, int anIndex, java.lang.String aTitle) Convenience to set a child title and add to the table.
 - 
getResizeBarBoundspublic RMRect getResizeBarBounds(int anIndex) Returns the bounds rect of the resize bar for the child at the given index.
 - 
getResizeBarAtPointpublic int getResizeBarAtPoint(RMPoint aPoint) Returns the index of the resize bar that is hit by the given point.
 - 
childrenSuperSelectImmediatelypublic boolean childrenSuperSelectImmediately() Editor method - indicates that children should super select immediately when split shape is super selected.- Overrides:
- childrenSuperSelectImmediatelyin class- RMShape
 
 - 
layoutChildrenprotected void layoutChildren() Performs layout.- Overrides:
- layoutChildrenin class- RMParentShape
 
 - 
rpgAllpublic RMShape rpgAll(ReportOwner anOwner, RMShape aParent) Report generation for table.- Overrides:
- rpgAllin class- RMParentShape
 
 - 
paintShapepublic void paintShape(RMShapePainter aPntr) Paints a table shape.- Overrides:
- paintShapein class- RMShape
 
 - 
paintShapeOverpublic void paintShapeOver(RMShapePainter aPntr) Paints stroke around table after all children have drawn.- Overrides:
- paintShapeOverin class- RMShape
 
 - 
getStrokeOnToppublic boolean getStrokeOnTop() Override to paint table stroke on top.- Overrides:
- getStrokeOnTopin class- RMShape
 
 - 
clone@Nullable public RMTable clone() Standard clone implementation.- Overrides:
- clonein class- RMParentShape
 
 - 
toXMLShapeprotected RXElement toXMLShape(RXArchiver anArchiver) XML archival.- Overrides:
- toXMLShapein class- RMParentShape
 
 - 
fromXMLShapeprotected void fromXMLShape(RXArchiver anArchiver, RXElement anElement) XML unarchival.- Overrides:
- fromXMLShapein class- RMParentShape
 
 - 
fromXMLChildrenprotected void fromXMLChildren(RXArchiver anArchiver, RXElement anElement) XML unarchival for shape children.- Overrides:
- fromXMLChildrenin class- RMParentShape
 
 
- 
 
-