ReportMill 8.0 API

com.reportmill.shape
Class RMTable

java.lang.Object
  extended bycom.reportmill.base.RMObject
      extended bycom.reportmill.shape.RMShape
          extended bycom.reportmill.shape.RMSplitShape
              extended bycom.reportmill.shape.RMTable
All Implemented Interfaces:
java.lang.Cloneable, com.reportmill.base.RMArchiver.Archiving

public class RMTable
extends com.reportmill.shape.RMSplitShape

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.


Field Summary
static int DetailsPart
           
static int HeaderPart
           
static int SummaryPart
           
 
Fields inherited from class com.reportmill.shape.RMShape
HandleMaxXMaxY, HandleMaxXMidY, HandleMaxXMinY, HandleMidXMaxY, HandleMidXMinY, HandleMinXMaxY, HandleMinXMidY, HandleMinXMinY, HandleWidth, WRAP_TYPE_BOTH, WRAP_TYPE_NONE
 
Constructor Summary
RMTable()
          Creates a plain table.
 
Method Summary
 RMTableRow addDetails(java.lang.String aKey)
          Adds a details row for the given grouping key.
 void addGrouping(RMGrouping aGrouping, int anIndex, RMShape aHeader, RMShape aDetails, RMShape aSummary)
          Adds a given grouping to the table at the givein grouping index.
 void addGroupingKey(java.lang.String aKey)
          Adds a grouping to the table for the given key string.
 void addGroupingKey(java.lang.String aKey, int anIndex, RMShape aHeader, RMShape aDetails, RMShape aSummary)
          Adds a grouping to the table for the given key string at the given grouping index.
 RMTableRow addHeader(java.lang.String aKey)
          Adds a header row for the given grouping key.
 RMTableRow addSummary(java.lang.String aKey)
          Adds a summary row for the given grouping key.
 java.lang.Object clone()
          Standard clone implementation.
 void copy(java.lang.Object anObj)
          Standard copy implementation.
 boolean equals(java.lang.Object anObj)
          Standard equals implementation.
 java.lang.Object fromXML(com.ribs.RXArchiver anArchiver, com.ribs.RXElement anElement)
          XML unarchival.
 void fromXMLDeep(com.ribs.RXArchiver anArchiver, com.ribs.RXElement anElement)
          XML unarchival for shape children
 float getColumnSpacing()
          Returns the space between a table that has more than one column (int printer points).
 java.lang.String getFilterKey()
          Returns the optional key chain (expression) used to limit the table list derived from list key.
 com.reportmill.base.RMGrouper getGrouper()
          Returns the grouper associated with the table.
 RMGrouping getGrouping(int anIndex)
          Returns the individual grouping at the given index.
 RMGrouping getGrouping(java.lang.String aKey)
          Returns the individual grouping that has the same key as the one given.
 int getGroupingCount()
          Returns the number of groups in this table.
 int getHandleAtPoint(RMPoint point, boolean isSuperSelected)
          Returns the index for the handle at the given point.
 java.lang.String getListKey()
          Returns the list key associated with the table.
 int getNumberOfColumns()
          Returns the number of columns that this table should be repeated over on the same page before paginating.
 int getPageBreakGroupIndex()
          Returns the index of the grouping in the grouper at which an explicit.
 java.lang.Boolean getPaginate()
          Returns whether the table is supposed to be paginated.
 RMTableRow getRow(int anIndex)
          Returns the specific table row at the given index.
 RMGrouping getSelectedGrouping()
          Returns the currently selected grouping (while editing only).
 int getSelectedGroupingIndex()
          Returns the currently selected grouping's index (for editing, mostly).
 RMSort getSelectedSort()
          Returns the currently selected grouping's sort (while editing only).
 int getSelectedSortIndex()
          Returns the currently selected grouping's currently selected sort (for editing, mostly).
 boolean getStartingPageBreak()
          Returns whether this table should always start on a new page (if in table group).
 void grouperWillChange()
          Called whenever grouper will be changed to handle undo.
 java.lang.Object initWithArchiver(com.reportmill.base.RMArchiver anArchiver)
          Legacy unarchival.
 void moveGrouping(int index1, int index2)
          Moves the grouping at the first index so that it resides at the second index.
 RMTableRow removeDetails(java.lang.String aKey)
          Removes the details row for the given grouping key.
 void removeGrouping(RMGrouping aGrouping)
          Removes the given grouping.
 RMTableRow removeHeader(java.lang.String aKey)
          Removes the header row for the given grouping key.
 RMTableRow removeSummary(java.lang.String aKey)
          Removes the details row for the given grouping key.
 RMShape rpgClone(com.reportmill.base.ReportMill aReportMill)
          Report generation method.
 void rpgClonePreprocess(com.reportmill.base.ReportMill aReportMill)
          Report generation method.
 void setColumnSpacing(float aValue)
          Sets the space between a table that has more than one column (int printer points).
 void setFilterKey(java.lang.String aKeyExpr)
          Returns the optional key chain (expression) used to limit the table list derived from list key.
 void setListKey(java.lang.String aKeyPath)
          Sets the list key associated with the table.
 void setNumberOfColumns(int aValue)
          Sets the number of columns that this table should be repeated over on the same page before paginating.
 void setPageBreakGroupIndex(int aValue)
          Returns the index of the grouping in the grouper at which an explicit.
 void setPaginate(java.lang.Boolean aValue)
          Sets whether the table is supposed to be paginated.
 void setSelectedGroupingIndex(int anIndex)
          Sets the currently selected grouping by index (for editing, mostly).
 void setSelectedSortIndex(int anIndex)
          Sets the currently selected grouping's currently selected sort (for editing, mostly).
 RMTableRow setShowGroupPart(int part, int index, boolean add)
          Adds or removes header/details/summary row for a givein grouping index.
 RMTableRow setShowGroupPart(int part, java.lang.String aKey, boolean add)
          Adds or removes header/detail/summary rows for a given grouping key.
 void setStartingPageBreak(boolean aFlag)
          Sets whether this table should always start on a new page (if in table group).
 java.lang.String toString()
          Standard to string implementation (prints class name and shape bounds).
 com.ribs.RXElement toXML(com.ribs.RXArchiver anArchiver)
          XML archival.
 
Methods inherited from class com.reportmill.shape.RMSplitShape
acceptsEvents, addChild, addChildWithTitle, arrangeChildren, canBeUngrouped, childrenSuperSelectImmediately, getChildWithTitle, getResizeBarAtPoint, getResizeBarBounds, getTitleForChild, removeChild, setHeightDeep, setWidthDeep
 
Methods inherited from class com.reportmill.shape.RMShape
acceptsChildren, acceptsDragKeys, acceptsFirstEvent, acceptsFormat, acceptsMouse, addChild, addChildBelowLastChild, bounds, boundsChanged, boundsChanged, bringShapesToFront, childrenHitByPath, cloneDeep, convertedPointFromShape, convertedPointToShape, convertedRectFromShape, convertedRectToShape, convertedSizeFromShape, convertedSizeToShape, convertedVectorFromShape, convertedVectorToShape, convertFromShape, convertPathFromShape, convertPathToShape, convertPointFromShape, convertPointToShape, convertRectFromShape, convertRectToShape, convertSizeFromShape, convertSizeToShape, convertToShape, convertVectorFromShape, convertVectorToShape, copyShape, delete, didChange, divideShapeFromEdge, divideShapeFromTop, dragExit, dragKeyAtPoint, dropKeyAtPoint, get, getActionScript, getAnim, getAnim, getAnimator, getAnimator, getAutosizeHeight, getAutosizing, getBounds, getBoundsInside, getBoundsMarked, getBoundsOfChildren, getBoundsOfChildren, getBoundsSuperSelected, getCausesWrap, getCausesWrapType, getChild, getChildAnimator, getChildAnimator, getChildCount, getChildHitByPoint, getChildLast, getChildren, getChildrenWhoCauseWrap, getChildrenWhoDraw, getChildrenWhoHitTest, getChildSortedByX, getChildWithClass, getChildWithName, getColor, getCommonAncestor, getDocument, getFill, getFill, getFill, getFillCount, getFills, getFont, getFormat, getFrame, getFrame, getFrameMaxX, getFrameMaxY, getFrameX, getFrameXY, getFrameY, getGroupShape, getHandleCount, getHandleOpposing, getHandlePoint, getHandleRect, getHeight, getHeightToFit, getImageFill, getLineWidth, getListKeyDeep, getListKeyShape, getMaxX, getMaxY, getName, getOpacity, getOpacityDeep, getOutline, getPageCount, getPageShape, getParent, getParentCount, getParents, getPath, getPathInBounds, getRoll, getRootShape, getScaleX, getScaleY, getShapesToAncestor, getShapesToDescendant, getShapesToShape, getSize, getSizeP, getSkewX, getSkewY, getStroke, getStrokeColor, getTextColor, getToolClassName, getTransform, getTransformFromShape, getTransformInverse, getTransformToShape, getUndoer, getUrl, getWidth, getWidthToFit, getX, getXY, getXYP, getY, groupShapes, hasPageBreaks, height, hitByPath, hitByPoint, indexOf, indexOf, isAncestor, isDescendant, isLocked, isRoot, isUnderlined, mouseDragged, mouseEntered, mouseExited, mouseMoved, mousePressed, mouseReleased, moveHandleToPoint, notRSS, offsetChildrenXY, offsetXY, page, pageBreakMax, pageBreakPageMax, pageMax, put, reclaimChildren, removeChild, removeChildren, removeChildren, removeFromParent, resolvePageReferences, rpgCloneBase, rpgCloneChildren, rpgCloneConclude, rpgCloneNotification, rpgClonePrepare, rpgCloneUrl, sendShapesToBack, setActionScript, setAnim, setAutosizeHeight, setAutosizing, setBounds, setBounds, setCausesWrapType, setChildAnimator, setChildren, setColor, setFill, setFont, setFormat, setFrame, setFrame, setFrameSize, setFrameX, setFrameXY, setFrameXY, setFrameY, setHeight, setHeightDeep, setHeightToFit, setLineWidth, setLocked, setName, setNeedsRepaint, setNeedsRepaint, setOpacity, setOutline, setParent, setRoll, setScaleX, setScaleXY, setScaleY, setSize, setSize, setSizeDeep, setSizeP, setSizeToFit, setSizeToFit, setSkewX, setSkewXY, setSkewY, setStroke, setStrokeColor, setTextColor, setTime, setUnderlined, setUrl, setWidth, setWidthDeep, setWidthToFit, setX, setXY, setXY, setXYP, setY, sizesToFitChildren, superSelectable, superSelectImmediately, undoClone, undoCopy, undoEquals, undoerAddDirtyObject, undoerDisable, undoerEnable, undoerSetUndoTitle, width, willChange, willChange, x, y
 
Methods inherited from class com.reportmill.base.RMObject
didUndo, getAnimAttribute, getClassNameShort
 
Methods inherited from class java.lang.Object
getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

HeaderPart

public static final int HeaderPart
See Also:
Constant Field Values

DetailsPart

public static final int DetailsPart
See Also:
Constant Field Values

SummaryPart

public static final int SummaryPart
See Also:
Constant Field Values
Constructor Detail

RMTable

public RMTable()
Creates a plain table.

Method Detail

getListKey

public java.lang.String getListKey()
Returns the list key associated with the table.

Overrides:
getListKey in class RMShape

setListKey

public void setListKey(java.lang.String aKeyPath)
Sets the list key associated with the table.

Overrides:
setListKey in class RMShape

getFilterKey

public java.lang.String getFilterKey()
Returns the optional key chain (expression) used to limit the table list derived from list key.


setFilterKey

public void setFilterKey(java.lang.String aKeyExpr)
Returns the optional key chain (expression) used to limit the table list derived from list key.


getGrouper

public com.reportmill.base.RMGrouper getGrouper()
Returns the grouper associated with the table.


getPaginate

public java.lang.Boolean getPaginate()
Returns whether the table is supposed to be paginated.


setPaginate

public void setPaginate(java.lang.Boolean aValue)
Sets whether the table is supposed to be paginated.


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).


setStartingPageBreak

public void setStartingPageBreak(boolean aFlag)
Sets whether this table should always start on a new page (if in table group).


getNumberOfColumns

public int getNumberOfColumns()
Returns the number of columns that this table should be repeated over on the same page before paginating.


setNumberOfColumns

public void setNumberOfColumns(int aValue)
Sets the number of columns that this table should be repeated over on the same page before paginating.


getColumnSpacing

public float getColumnSpacing()
Returns the space between a table that has more than one column (int printer points).


setColumnSpacing

public void setColumnSpacing(float aValue)
Sets the space between a table that has more than one column (int printer points).


getGroupingCount

public int getGroupingCount()
Returns the number of groups in this table.


getGrouping

public RMGrouping getGrouping(int anIndex)
Returns the individual grouping at the given index.


getGrouping

public RMGrouping getGrouping(java.lang.String aKey)
Returns the individual grouping that has the same key as the one given.


getSelectedGrouping

public RMGrouping getSelectedGrouping()
Returns the currently selected grouping (while editing only).


getSelectedSort

public RMSort getSelectedSort()
Returns the currently selected grouping's sort (while editing only).


addGroupingKey

public void addGroupingKey(java.lang.String aKey)
Adds a grouping to the table for the given key string.


addGroupingKey

public void addGroupingKey(java.lang.String aKey,
                           int anIndex,
                           RMShape aHeader,
                           RMShape aDetails,
                           RMShape aSummary)
Adds a grouping to the table for the given key string at the given grouping index. You can also supply specific table rows for headers, details and/or summary.


addGrouping

public void addGrouping(RMGrouping aGrouping,
                        int anIndex,
                        RMShape aHeader,
                        RMShape aDetails,
                        RMShape aSummary)
Adds a given grouping to the table at the givein grouping index. You can also supply specific table rows for headers, details and/or summary.


removeGrouping

public void removeGrouping(RMGrouping aGrouping)
Removes the given grouping.


moveGrouping

public void moveGrouping(int index1,
                         int index2)
Moves the grouping at the first index so that it resides at the second index.


getRow

public RMTableRow getRow(int anIndex)
Returns the specific table row at the given index.


addHeader

public RMTableRow addHeader(java.lang.String aKey)
Adds a header row for the given grouping key.


removeHeader

public RMTableRow removeHeader(java.lang.String aKey)
Removes the header row for the given grouping key.


addDetails

public RMTableRow addDetails(java.lang.String aKey)
Adds a details row for the given grouping key.


removeDetails

public RMTableRow removeDetails(java.lang.String aKey)
Removes the details row for the given grouping key.


addSummary

public RMTableRow addSummary(java.lang.String aKey)
Adds a summary row for the given grouping key.


removeSummary

public RMTableRow removeSummary(java.lang.String aKey)
Removes the details row for the given grouping key.


setShowGroupPart

public RMTableRow setShowGroupPart(int part,
                                   java.lang.String aKey,
                                   boolean add)
Adds or removes header/detail/summary rows for a given grouping key.


setShowGroupPart

public RMTableRow setShowGroupPart(int part,
                                   int index,
                                   boolean add)
Adds or removes header/details/summary row for a givein grouping index.


grouperWillChange

public void grouperWillChange()
Called whenever grouper will be changed to handle undo.


getSelectedGroupingIndex

public int getSelectedGroupingIndex()
Returns the currently selected grouping's index (for editing, mostly).


setSelectedGroupingIndex

public void setSelectedGroupingIndex(int anIndex)
Sets the currently selected grouping by index (for editing, mostly).


getSelectedSortIndex

public int getSelectedSortIndex()
Returns the currently selected grouping's currently selected sort (for editing, mostly).


setSelectedSortIndex

public void setSelectedSortIndex(int anIndex)
Sets the currently selected grouping's currently selected sort (for editing, mostly).


getHandleAtPoint

public int getHandleAtPoint(RMPoint point,
                            boolean isSuperSelected)
Returns the index for the handle at the given point.

Overrides:
getHandleAtPoint in class RMShape

rpgClonePreprocess

public void rpgClonePreprocess(com.reportmill.base.ReportMill aReportMill)
Report generation method.

Overrides:
rpgClonePreprocess in class RMShape

rpgClone

public RMShape rpgClone(com.reportmill.base.ReportMill aReportMill)
Report generation method.

Overrides:
rpgClone in class RMShape

equals

public boolean equals(java.lang.Object anObj)
Standard equals implementation.

Overrides:
equals in class RMShape

clone

public java.lang.Object clone()
Standard clone implementation.


copy

public void copy(java.lang.Object anObj)
Standard copy implementation.

Overrides:
copy in class RMShape

initWithArchiver

public java.lang.Object initWithArchiver(com.reportmill.base.RMArchiver anArchiver)
Legacy unarchival.


toXML

public com.ribs.RXElement toXML(com.ribs.RXArchiver anArchiver)
XML archival.

Overrides:
toXML in class RMShape

fromXML

public java.lang.Object fromXML(com.ribs.RXArchiver anArchiver,
                                com.ribs.RXElement anElement)
XML unarchival.

Overrides:
fromXML in class RMShape

fromXMLDeep

public void fromXMLDeep(com.ribs.RXArchiver anArchiver,
                        com.ribs.RXElement anElement)
XML unarchival for shape children

Overrides:
fromXMLDeep in class RMShape

toString

public java.lang.String toString()
Standard to string implementation (prints class name and shape bounds).

Overrides:
toString in class RMShape

ReportMill 8.0 API