Package com.inductiveautomation.rm.shape
Class RMTableRPG
- 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.RMTableRPG
-
- All Implemented Interfaces:
Archivable
,DeepChangeListener
,RMPropertyChanger
,RMTypes
,java.beans.PropertyChangeListener
,java.lang.Cloneable
,java.util.EventListener
public class RMTableRPG extends RMParentShape
Performs RPG for a table.
-
-
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 RMTableRPG(ReportOwner anRptOwner, RMTable aTable)
Creates a new RMTableRPG for ReportOwner and Table.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected RMTableRPG
addPage()
Adds a new page.protected boolean
addRows(RMGroup aGroup, RMTableRowRPG aParentRPG, RMTableRowRPG theLastRow)
Adds table rows for a group.protected boolean
addRowsExtra(RMGroup aGroup, RMTableRowRPG aParentRPG, RMTableRowRPG theLastRow)
A hook to add extra rows or such at bottom of table.protected double
computePrefHeight(double aWidth)
Override to return PrefHeight is not paginating.protected RMTableRPG
createPage()
Creates a page.int
getColumnCount()
double
getColumnSpacing()
protected RMGroup
getGroup(RMTable aTable)
Returns the group for a given table.int
getPageBreak()
Returns the page breakint
getPageBreakMax()
Returns the page break max.int
getPageBreakPage()
Returns the page break page.int
getPageBreakPageMax()
Returns the page break page max.RMTableRPG
getPageLast()
Returns the last page.boolean
getStrokeOnTop()
Override to paint table stroke on top.protected RMTableRPG
makeColumns()
This method moves each groups the resulting set of table pages into a parent shape to accommodate aTable's getNumberOfColumns (spaced by its getColumnSpacing).protected void
moveRowsToBottom()
Scoots any rows that request it to the bottom of the page.RMShape
rpgAll()
Do RPG.protected java.lang.String
rpgTable(RMTable aTable)
Performs RPG.void
setColumnCount(int aValue)
void
setColumnSpacing(double aValue)
boolean
superSelectable()
Override to make selectable.-
Methods inherited from class com.inductiveautomation.rm.shape.RMParentShape
addChild, addChild, addChild, addChild, addLayoutChild, bringShapesToFront, clone, cloneDeep, computePrefWidth, divideShapeFromTop, fromXML, fromXMLChildren, fromXMLShape, getBoundsOfChildren, getChild, getChildArray, getChildContaining, getChildCount, getChildLast, getChildren, getChildrenIntersecting, getChildrenWithClass, getChildrenWithClass, getChildWithClass, getChildWithName, getLayout, getNeedsLayout, getSourceURL, indexOfChild, isHittable, isShowing, isSourceURLSet, layout, layoutChildren, relayout, removeChild, removeChild, removeChildren, removeLayoutChild, rpgAll, rpgChildren, sendShapesToBack, setHeight, setLayout, setNeedsLayout, setSourceURL, setWidth, toXML, toXMLChildren, toXMLShape
-
Methods inherited from class com.inductiveautomation.rm.shape.RMShape
acceptsChildren, acceptsMouse, addBinding, addBinding, addDeepChangeListener, addMouseListener, animUpdate, bounds, childrenSuperSelectImmediately, 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, getDatasetKey, 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, 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, paintShapeOver, 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, 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
-
-
-
-
Constructor Detail
-
RMTableRPG
public RMTableRPG(ReportOwner anRptOwner, RMTable aTable)
Creates a new RMTableRPG for ReportOwner and Table.
-
-
Method Detail
-
rpgAll
public RMShape rpgAll()
Do RPG.- Returns:
- the RMShape or
ReportOwner.ShapeList
that contains the Table's shapes after generation. Will not be null
-
rpgTable
protected java.lang.String rpgTable(RMTable aTable)
Performs RPG. Returns the string of a failed table row or an empty string if successful. Table rows will fail if they cannot be successfully split or there is no available room left on the page or table to squeeze even one details row in. This is usually due to a poorly designed table on the users part, but it is accounted for anyways.- Parameters:
aTable
- the RMTable object to rpg. Must not be null- Returns:
- the failed row's title (ex:
static_data Header
) or "" if successful
-
getPageLast
public RMTableRPG getPageLast()
Returns the last page.
-
addPage
protected RMTableRPG addPage()
Adds a new page.
-
createPage
protected RMTableRPG createPage()
Creates a page.
-
addRows
protected boolean addRows(RMGroup aGroup, RMTableRowRPG aParentRPG, RMTableRowRPG theLastRow)
Adds table rows for a group.
-
addRowsExtra
protected boolean addRowsExtra(RMGroup aGroup, RMTableRowRPG aParentRPG, RMTableRowRPG theLastRow)
A hook to add extra rows or such at bottom of table.
-
moveRowsToBottom
protected void moveRowsToBottom()
Scoots any rows that request it to the bottom of the page.
-
makeColumns
protected RMTableRPG makeColumns()
This method moves each groups the resulting set of table pages into a parent shape to accommodate aTable's getNumberOfColumns (spaced by its getColumnSpacing). tables for each explicit page break into encompassing shapes that hold numberOfColumns tables (spaced apart by _columnSpacing).
-
getPageBreak
public int getPageBreak()
Returns the page break- Overrides:
getPageBreak
in classRMShape
-
getPageBreakMax
public int getPageBreakMax()
Returns the page break max.- Overrides:
getPageBreakMax
in classRMShape
-
getPageBreakPage
public int getPageBreakPage()
Returns the page break page.- Overrides:
getPageBreakPage
in classRMShape
-
getPageBreakPageMax
public int getPageBreakPageMax()
Returns the page break page max.- Overrides:
getPageBreakPageMax
in classRMShape
-
getColumnCount
public int getColumnCount()
-
setColumnCount
public void setColumnCount(int aValue)
-
getColumnSpacing
public double getColumnSpacing()
-
setColumnSpacing
public void setColumnSpacing(double aValue)
-
computePrefHeight
protected double computePrefHeight(double aWidth)
Override to return PrefHeight is not paginating.- Overrides:
computePrefHeight
in classRMParentShape
-
getStrokeOnTop
public boolean getStrokeOnTop()
Override to paint table stroke on top.- Overrides:
getStrokeOnTop
in classRMShape
-
superSelectable
public boolean superSelectable()
Override to make selectable.- Overrides:
superSelectable
in classRMShape
-
-