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,PropertyChangeListener,Cloneable,EventListener
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.RMTypes
RMTypes.Align, RMTypes.AlignX, RMTypes.AlignY -
Field Summary
FieldsFields inherited from class com.inductiveautomation.rm.shape.RMShape
BINDING_PROP_NAME, STROKE_BORDER, STROKE_DOUBLE, STROKE_HIDDEN, STROKE_SHAPE -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddChildWithTitle(RMTableRow aChild, int anIndex, String aTitle) Convenience to set a child title and add to the table.addDetails(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(String aKey, int anIndex) Adds a grouping to the table for the given key string at the given grouping index.Convenience to add header for grouping key.addSummary(String aKey) Convenience to add summary for grouping key.booleanEditor method - indicates that children should super select immediately when split shape is super selected.clone()Standard clone implementation.protected voidfromXMLChildren(RXArchiver anArchiver, RXElement anElement) XML unarchival for shape children.protected voidfromXMLShape(RXArchiver anArchiver, RXElement anElement) XML unarchival.getChildWithTitle(String aTitle) Returns a specific child with the given name.intReturns the number of columns that this table should be repeated over on the same page before paginating.doubleReturns the space between a table that has more than one column (int printer points).Returns the dataset key associated with the table.Returns the optional key chain expression string used to prune the table list derived from dataset key.Returns the grouper associated with the table.getGrouping(int anIndex) Returns the individual grouping at the given index.getGrouping(String aKey) Returns the individual grouping that has the same key as the one given.getGrouping(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.intReturns the number of groups in this table.intReturns 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.getResizeBarBounds(int anIndex) Returns the bounds rect of the resize bar for the child at the given index.getRow(int anIndex) Returns the specific table row at the given index.Returns the specific table row with the given name.booleanReturns whether this table should always start on a new page (if in table group).booleanReturns whether each row should always start on a new page (if in a table group).booleanOverride to paint table stroke on top.protected voidCalled when there is a grouper change to ensure that table rows match groupings.protected voidPerforms 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(PropertyChangeEvent anEvent) Override to update rows when grouper changes and revalidate when child height changes.voidremoveGrouping(RMGrouping aGrouping) Removes the given grouping.rpgAll(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(String aKeyPath) Sets the dataset key associated with the table.voidsetFilterKey(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(String aNm1, String aNm2) Sets title for child of given name to new name.toString()Standard to string implementation (prints class name and shape bounds).protected RXElementtoXMLShape(RXArchiver anArchiver) XML archival.Methods inherited from class com.inductiveautomation.rm.shape.RMParentShape
addChild, 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, toXMLChildrenMethods 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, 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, yMethods inherited from class com.inductiveautomation.rm.base.RMObject
addPropertyChangeListener, firePropertyChange, firePropertyChange, firePropertyChange, getPCEvent, removePropertyChangeListener, sendPropertyChangeMethods inherited from class com.inductiveautomation.rm.base.RMListenerList
addListener, getListener, getListenerCount, getListenerCount, getListenerList, getListeners, hasListeners, removeListener
-
Field Details
-
DEFAULT_TABLE_DATAKEY
- See Also:
-
-
Constructor Details
-
RMTable
public RMTable()Creates a plain table. -
RMTable
Creates a table with given dataset key (and corresponding default grouping and details row).
-
-
Method Details
-
selfInit
public void selfInit()- Specified by:
selfInitin interfaceRMShapeSelfInit
-
getDatasetKey
Returns the dataset key associated with the table.- Overrides:
getDatasetKeyin classRMShape
-
setDatasetKey
Sets the dataset key associated with the table. -
getFilterKey
Returns the optional key chain expression string used to prune the table list derived from dataset key. -
setFilterKey
Sets the optional key chain expression string used to prune the table list derived from dataset key. -
getGrouper
Returns the grouper associated with the table. -
setGrouper
Sets the grouper associated with the table. -
getGroupingCount
public int getGroupingCount()Returns the number of groups in this table. -
getGrouping
Returns the individual grouping at the given index. -
getGrouping
Returns the individual grouping that has the same key as the one given. -
getGrouping
Returns the individual grouping that has the same key as the one given, with option to create at index if missing. -
addGroupingKey
Adds a grouping to the table for the given key string at the given grouping index. -
addGrouping
Adds a given grouping to the table at the given grouping index. -
removeGrouping
Removes the given grouping. -
moveGrouping
public void moveGrouping(int fromIndex, int toIndex) Moves the grouping at the first index so that it resides at the second index. -
addHeader
Convenience to add header for grouping key. -
addDetails
Convenience to add details for grouping key. -
addSummary
Convenience to add summary for grouping key. -
propertyChange
Override to update rows when grouper changes and revalidate when child height changes.- Specified by:
propertyChangein interfacePropertyChangeListener- Overrides:
propertyChangein classRMShape
-
grouperChanged
protected void grouperChanged()Called when there is a grouper change to ensure that table rows match groupings. -
getPageBreakGroupIndex
public int getPageBreakGroupIndex()Returns the index of the grouping in the grouper at which an explicit. -
setPageBreakGroupIndex
public void setPageBreakGroupIndex(int aValue) Returns the index of the grouping in the grouper at which an explicit. -
getStartingPageBreak
public boolean getStartingPageBreak()Returns whether this table should always start on a new page (if in table group). -
getStartingRowPageBreak
public boolean getStartingRowPageBreak()Returns whether each row should always start on a new page (if in a table group). -
setStartingPageBreak
public void setStartingPageBreak(boolean aFlag) Sets whether this table should always start on a new page (if in table group). -
setStartingRowPageBreak
public void setStartingRowPageBreak(boolean aFlag) Sets whether this table's rows should always start on a new page (if in table group). -
getColumnCount
public int getColumnCount()Returns the number of columns that this table should be repeated over on the same page before paginating. -
setColumnCount
public void setColumnCount(int aValue) Sets the number of columns that this table should be repeated over on the same page before paginating. -
getColumnSpacing
public double getColumnSpacing()Returns the space between a table that has more than one column (int printer points). -
setColumnSpacing
public void setColumnSpacing(double aValue) Sets the space between a table that has more than one column (int printer points). -
getRow
Returns the specific table row at the given index. -
getRow
Returns the specific table row with the given name. -
getChildWithTitle
Returns a specific child with the given name. -
setTitleForChild
Sets title for child of given name to new name. -
addChildWithTitle
Convenience to set a child title and add to the table. -
getResizeBarBounds
Returns the bounds rect of the resize bar for the child at the given index. -
getResizeBarAtPoint
Returns the index of the resize bar that is hit by the given point. -
childrenSuperSelectImmediately
public boolean childrenSuperSelectImmediately()Editor method - indicates that children should super select immediately when split shape is super selected.- Overrides:
childrenSuperSelectImmediatelyin classRMShape
-
layoutChildren
protected void layoutChildren()Performs layout.- Overrides:
layoutChildrenin classRMParentShape
-
rpgAll
Report generation for table.- Overrides:
rpgAllin classRMParentShape
-
paintShape
Paints a table shape.- Overrides:
paintShapein classRMShape
-
paintShapeOver
Paints stroke around table after all children have drawn.- Overrides:
paintShapeOverin classRMShape
-
getStrokeOnTop
public boolean getStrokeOnTop()Override to paint table stroke on top.- Overrides:
getStrokeOnTopin classRMShape
-
clone
Standard clone implementation.- Overrides:
clonein classRMParentShape
-
toXMLShape
XML archival.- Overrides:
toXMLShapein classRMParentShape
-
fromXMLShape
XML unarchival.- Overrides:
fromXMLShapein classRMParentShape
-
fromXMLChildren
XML unarchival for shape children.- Overrides:
fromXMLChildrenin classRMParentShape
-
toString
Standard to string implementation (prints class name and shape bounds).
-