Package com.reportmill.shape
Class RMPage
- java.lang.Object
-
- com.reportmill.base.RMObject
-
- com.reportmill.shape.RMShape
-
- com.reportmill.shape.RMPage
-
- All Implemented Interfaces:
RMArchiver.Archiving,java.lang.Cloneable
- Direct Known Subclasses:
RBPage
public class RMPage extends RMShape
The RMPage class represents an individual page in an RMDocument. For the most part, it's like every other RMShape, except that it has the ability to break children into "layers" for more convenient editing. Layers are sub-ranges of children that can be set to be invisible or locked. An RMPage also has its own child animator.It's not common for developers to use much or RMPage's unique functionality programmatically, however, you might use it briefly when disecting a template like this:
RMDocument template = new RMDocument(aSource); RMPage page = template.getPage(0); RMTable table = page.getChildWithName("MyTable"); ...Or you might use it briefly when adding pages to a document (which comes with one by default):
RMDocument template = new RMDocument(612, 792); template.getPage(0).addChild(new RMText(new RXString("Hello Page 1!", RMFont("Arial", 100)))); template.addPage(new RMPage()); template.getPage(1).addChild(new RMText(new RXString("Hello Page 2!", RMFont("Arial", 100))));
-
-
Field Summary
-
Fields inherited from class com.reportmill.shape.RMShape
WRAP_TYPE_BOTH, WRAP_TYPE_NONE
-
-
Constructor Summary
Constructors Constructor Description RMPage()Creates a plain empty page.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanacceptsChildren()Editor method - indicates that page supports added children.voidaddChild(RMShape child, int index)Add the given child at the given index (over-rides RMShape version to propogate to RMPageLayer).voidaddLayerNamed(java.lang.String aString)Creates a new layer with the given name and adds it to this page's layer list.voidbringShapesToFront(java.util.List shapes)Overrides shape implementation to keep shapes in their proper layers.java.lang.Objectclone()Standard clone method.voidcopy(java.lang.Object anObj)Copies the attributes from the given object.booleanequals(java.lang.Object anObj)Standard equals method.java.lang.ObjectfromXML(RXArchiver anArchiver, RXElement anElement)XML unarchival.RMAnimatorgetChildAnimator(boolean create)Returns the child animator associated with this page, creating one if it doesn't exist (if requested).java.util.ListgetChildrenWhoDraw()Returns a list of children which should be drawn (since page layers can be configured to prevent chilren on individual layers from being visible).java.util.ListgetChildrenWhoHitTest()Returns a list of children which should be checked during shape hit detection (since page layers can be configured to prevent chilren on individual layers from being selected).RMPageLayergetLayer(int index)Returns the layer at the given index.RMPageLayergetLayer(java.lang.String aString)Returns the layer with the given name.intgetLayerCount()Returns the number of layers associated with this page.RMShapegetPageShape()Overrides shape implementation to return this page, since it is the page shape.RMPageLayergetSelectedLayer()Returns the selected layer.intgetSelectedLayerIndex()Returns the index of the selected layer.java.lang.ObjectinitWithArchiver(RMArchiver anArchiver)Legacy unarchival.voidmoveLayer(int fromIndex, int toIndex)Moves the layer at fromIndex to toIndex.voidmoveToNewLayer(java.util.List shapes)Creates a new layer and adds the shapes in the given list to it.intpage()Returns the "Page" number of this page (used to resolve @Page@ key references).intpageBreakMax()Returns "PageBreakMax" (used to resolve PageBreakMax key references).intpageBreakPageMax()Returns "PageBreakPageMax" for all children on this page (used to resolve PageBreakPageMax key references).intpageMax()Returns the "PageMax" of the document associated with this page (used to resolve @PageMax@ key references).voidremoveChild(int index)Removes the child at the given index (over-rides RMShape version to propogate to RMPageLayer).voidremoveLayer(RMPageLayer aLayer)Removes the given layer (and dumps its children into the preceeding layer).voidresetLayers()Resets this page's list of layers to a single, selecctable layer named "Layer 1".RMShaperpgClone(ReportMill rm)A custom version of the clone method, which returns a report generated clone.voidselectLayer(RMPageLayer aLayer)Selects the given layer.voidselectLayer(java.lang.String aString)Selects the layer with the given name.voidsendShapesToBack(java.util.List shapes)Overrides shape implementation to keep shapes in their proper layers.booleansuperSelectable()Editor method - indicates that pages can be super-selected.RXElementtoXML(RXArchiver anArchiver)XML archival.RMObjectundoClone()A custom version of the clone method, specific for undo tracking.-
Methods inherited from class com.reportmill.shape.RMShape
acceptsDragKeys, acceptsFormat, acceptsMouse, addChild, addChildBelowLastChild, bounds, boundsChanged, boundsChanged, canBeUngrouped, childrenSuperSelectImmediately, cloneDeep, contains, 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, fromXMLDeep, get, getActionScript, getAnim, getAnim, getAnimator, getAnimator, getAutosizeHeight, getAutosizing, getBounds, getBoundsInside, getBoundsMarked, getBoundsOfChildren, getBoundsOfChildren, getBoundsSuperSelected, getCausesWrap, getCausesWrapType, getChild, getChildAnimator, getChildContaining, getChildCount, getChildLast, getChildren, getChildrenIntersecting, getChildrenWhoCauseWrap, getChildSortedByX, getChildWithClass, getChildWithName, getColor, getCommonAncestor, getDocument, getFill, getFill, getFill, getFillCount, getFills, getFont, getFormat, getFrame, getFrame, getFrameMaxX, getFrameMaxY, getFrameX, getFrameXY, getFrameY, getGroupShape, getHeight, getHeightToFit, getImageFill, getLineWidth, getListKey, getListKeyDeep, getListKeyShape, getMaxX, getMaxY, getName, getOpacity, getOpacityDeep, getOutline, getPageCount, getParent, getParentCount, getParents, getPath, getPathInBounds, getPropertyKey, getPropertyKeyCount, getPropertyKeyName, 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, indexOf, indexOf, intersects, isAncestor, isDescendant, isLocked, isRoot, isUnderlined, mouseDragged, mouseEntered, mouseExited, mouseMoved, mousePressed, mouseReleased, notRSS, offsetChildrenXY, offsetXY, put, putPropertyKey, reclaimChildren, removeChild, removeChildren, removeChildren, removeFromParent, resolvePageReferences, rpgCloneBase, rpgCloneChildren, rpgCloneConclude, rpgCloneNotification, rpgClonePrepare, rpgClonePreprocess, rpgCloneUrl, setActionScript, setAnim, setAutosizeHeight, setAutosizing, setBounds, setBounds, setCausesWrapType, setChildren, setColor, setFill, setFont, setFormat, setFrame, setFrame, setFrameSize, setFrameX, setFrameXY, setFrameXY, setFrameY, setHeight, setHeightDeep, setHeightDeep, setHeightToFit, setLineWidth, setListKey, 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, setWidthDeep, setWidthToFit, setX, setXY, setXY, setXYP, setY, sizesToFitChildren, toString, undoCopy, undoEquals, undoerAddDirtyObject, undoerDisable, undoerEnable, undoerSetUndoTitle, width, willChange, willChange, x, y
-
Methods inherited from class com.reportmill.base.RMObject
didUndo, getAnimAttribute, getClassNameShort
-
-
-
-
Method Detail
-
getLayerCount
public int getLayerCount()
Returns the number of layers associated with this page.
-
getLayer
public RMPageLayer getLayer(int index)
Returns the layer at the given index.
-
getLayer
public RMPageLayer getLayer(java.lang.String aString)
Returns the layer with the given name.
-
addLayerNamed
public void addLayerNamed(java.lang.String aString)
Creates a new layer with the given name and adds it to this page's layer list.
-
removeLayer
public void removeLayer(RMPageLayer aLayer)
Removes the given layer (and dumps its children into the preceeding layer).
-
moveLayer
public void moveLayer(int fromIndex, int toIndex)Moves the layer at fromIndex to toIndex.
-
getSelectedLayerIndex
public int getSelectedLayerIndex()
Returns the index of the selected layer.
-
getSelectedLayer
public RMPageLayer getSelectedLayer()
Returns the selected layer.
-
selectLayer
public void selectLayer(RMPageLayer aLayer)
Selects the given layer.
-
selectLayer
public void selectLayer(java.lang.String aString)
Selects the layer with the given name.
-
resetLayers
public void resetLayers()
Resets this page's list of layers to a single, selecctable layer named "Layer 1".
-
addChild
public void addChild(RMShape child, int index)
Add the given child at the given index (over-rides RMShape version to propogate to RMPageLayer).
-
removeChild
public void removeChild(int index)
Removes the child at the given index (over-rides RMShape version to propogate to RMPageLayer).- Overrides:
removeChildin classRMShape
-
bringShapesToFront
public void bringShapesToFront(java.util.List shapes)
Overrides shape implementation to keep shapes in their proper layers.- Overrides:
bringShapesToFrontin classRMShape
-
sendShapesToBack
public void sendShapesToBack(java.util.List shapes)
Overrides shape implementation to keep shapes in their proper layers.- Overrides:
sendShapesToBackin classRMShape
-
moveToNewLayer
public void moveToNewLayer(java.util.List shapes)
Creates a new layer and adds the shapes in the given list to it.
-
getChildrenWhoDraw
public java.util.List getChildrenWhoDraw()
Returns a list of children which should be drawn (since page layers can be configured to prevent chilren on individual layers from being visible).- Overrides:
getChildrenWhoDrawin classRMShape
-
getChildrenWhoHitTest
public java.util.List getChildrenWhoHitTest()
Returns a list of children which should be checked during shape hit detection (since page layers can be configured to prevent chilren on individual layers from being selected).- Overrides:
getChildrenWhoHitTestin classRMShape
-
getPageShape
public RMShape getPageShape()
Overrides shape implementation to return this page, since it is the page shape.- Overrides:
getPageShapein classRMShape
-
getChildAnimator
public RMAnimator getChildAnimator(boolean create)
Returns the child animator associated with this page, creating one if it doesn't exist (if requested).- Overrides:
getChildAnimatorin classRMShape
-
rpgClone
public RMShape rpgClone(ReportMill rm)
A custom version of the clone method, which returns a report generated clone.
-
page
public int page()
Returns the "Page" number of this page (used to resolve @Page@ key references).
-
pageMax
public int pageMax()
Returns the "PageMax" of the document associated with this page (used to resolve @PageMax@ key references).
-
pageBreakMax
public int pageBreakMax()
Returns "PageBreakMax" (used to resolve PageBreakMax key references).- Overrides:
pageBreakMaxin classRMShape
-
pageBreakPageMax
public int pageBreakPageMax()
Returns "PageBreakPageMax" for all children on this page (used to resolve PageBreakPageMax key references).- Overrides:
pageBreakPageMaxin classRMShape
-
undoClone
public RMObject undoClone()
A custom version of the clone method, specific for undo tracking.
-
copy
public void copy(java.lang.Object anObj)
Copies the attributes from the given object.
-
equals
public boolean equals(java.lang.Object anObj)
Standard equals method.
-
toXML
public RXElement toXML(RXArchiver anArchiver)
XML archival.
-
fromXML
public java.lang.Object fromXML(RXArchiver anArchiver, RXElement anElement)
XML unarchival.
-
initWithArchiver
public java.lang.Object initWithArchiver(RMArchiver anArchiver)
Legacy unarchival.- Specified by:
initWithArchiverin interfaceRMArchiver.Archiving- Overrides:
initWithArchiverin classRMShape
-
acceptsChildren
public boolean acceptsChildren()
Editor method - indicates that page supports added children.- Overrides:
acceptsChildrenin classRMShape
-
superSelectable
public boolean superSelectable()
Editor method - indicates that pages can be super-selected.- Overrides:
superSelectablein classRMShape
-
-