ca.sqlpower.wabit.report
Class ContentBox

java.lang.Object
  extended by ca.sqlpower.wabit.AbstractWabitObject
      extended by ca.sqlpower.wabit.report.ContentBox
All Implemented Interfaces:
WabitObject

public class ContentBox
extends AbstractWabitObject

Represents a box on the page which has an absolute position and size. The content of the box is provided by a ContentRenderer implementation. Whenever the content renderer's appearance changes, this box will fire a PropertyChangeEvent with the property name "content". The old and new values will


Constructor Summary
ContentBox()
           
ContentBox(ContentBox contentBox)
          Copy Constructor
 
Method Summary
protected  void addChildImpl(WabitObject child, int index)
          This is the object specific implementation of #addChild(WabitObject).
 void addRepaintListener(RepaintListener listener)
          Adds a listener to this object that will be notified when the object wants to repaint.
 boolean allowsChildren()
          Returns true if this object may contain children.
 int childPositionOffset(java.lang.Class<? extends WabitObject> childType)
          Returns the position in the list that would be returned by getChildren() that the first object of type childClass is, or where it would be if there were any children of that type.
 java.awt.geom.Rectangle2D getBounds()
           
 java.util.List<WabitObject> getChildren()
          Included to complete the WabitObject implementation.
 ReportContentRenderer getContentRenderer()
           
 java.util.List<WabitObject> getDependencies()
          Returns a list of all WabitObjects that this Wabit object is dependent on.
 java.awt.Font getFont()
           
 double getHeight()
           
 Page getParent()
          Returns the parent of this WabitObject.
 double getWidth()
           
 double getX()
           
 double getY()
           
protected  boolean removeChildImpl(WabitObject child)
          This is the object specific implementation of removeChild.
 void removeDependency(WabitObject dependency)
          Removes the given object as a dependency of this object.
 void removeRepaintListener(RepaintListener listener)
           
 void repaint()
           
 void setContentRenderer(ReportContentRenderer contentRenderer)
          Sets the given content renderer as this box's provider of rendered content.
 void setFont(java.awt.Font font)
           
 void setHeight(double height)
           
 void setWidth(double width)
           
 void setX(double x)
           
 void setY(double y)
           
 
Methods inherited from class ca.sqlpower.wabit.AbstractWabitObject
addChild, addWabitListener, begin, beginTransaction, cleanup, commit, commitTransaction, equals, fireChildAdded, fireChildRemoved, firePropertyChange, firePropertyChange, firePropertyChange, fireTransactionEnded, fireTransactionRollback, fireTransactionStarted, generateNewUUID, getChildren, getName, getSession, getUUID, isForegroundThread, removeChild, removeWabitListener, rollback, rollbackTransaction, runInBackground, runInForeground, setName, setParent, setUUID, toString
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ContentBox

public ContentBox()

ContentBox

public ContentBox(ContentBox contentBox)
Copy Constructor

Parameters:
contentBox -
Method Detail

setContentRenderer

public void setContentRenderer(ReportContentRenderer contentRenderer)
Sets the given content renderer as this box's provider of rendered content.

Although content renderers are considered children of the content box (and this method does cause child added/removed events), a content box can only have one content renderer at a time, so if you call this method when the current content renderer is non-null, the old renderer will be replaced by the new one.

Parameters:
contentRenderer - The new content renderer to use. Can be null, which means to remove the content render and render this content box incontent.

getContentRenderer

public ReportContentRenderer getContentRenderer()

getParent

public Page getParent()
Description copied from interface: WabitObject
Returns the parent of this WabitObject. This will be null when the object is first created until it is added as a child to another object. If this object is never added as a child to another object this will remain null and the object may be treated as the root node of a WabitObject tree.

Specified by:
getParent in interface WabitObject
Overrides:
getParent in class AbstractWabitObject
Returns:
The parent of this object.

getX

public double getX()

setX

public void setX(double x)

getY

public double getY()

setY

public void setY(double y)

getWidth

public double getWidth()

setWidth

public void setWidth(double width)

getHeight

public double getHeight()

setHeight

public void setHeight(double height)

allowsChildren

public boolean allowsChildren()
Description copied from interface: WabitObject
Returns true if this object may contain children. Not all types of WabitObjects can be a child to any WabitObject.

See Also:
WabitObject.childPositionOffset(Class)

childPositionOffset

public int childPositionOffset(java.lang.Class<? extends WabitObject> childType)
Description copied from interface: WabitObject
Returns the position in the list that would be returned by getChildren() that the first object of type childClass is, or where it would be if there were any children of that type.


getChildren

public java.util.List<WabitObject> getChildren()
Included to complete the WabitObject implementation. For direct use of this class, it's usually better to use getContentRenderer() because there can only ever be 0 or 1 children.


getFont

public java.awt.Font getFont()

setFont

public void setFont(java.awt.Font font)

getBounds

public java.awt.geom.Rectangle2D getBounds()

getDependencies

public java.util.List<WabitObject> getDependencies()
Description copied from interface: WabitObject
Returns a list of all WabitObjects that this Wabit object is dependent on. Children of a WabitObject are not dependencies and will not be returned in this list. If there are no objects this Wabit object is dependent on an empty list should be returned. These are only the immediate dependencies of this object. If you want to find the dependencies of this object's dependencies as well it may be useful to look at WorkspaceGraphModel to make a full graph of all of the dependencies.


removeDependency

public void removeDependency(WabitObject dependency)
Description copied from interface: WabitObject
Removes the given object as a dependency of this object. For this object to no longer be dependent on the given dependency all of its children must also not be dependent on the given dependency when this method returns. This may remove this object from its parent if necessary.


removeChildImpl

protected boolean removeChildImpl(WabitObject child)
Description copied from class: AbstractWabitObject
This is the object specific implementation of removeChild. There are checks in the removeChild method to ensure the child being removed has no dependencies and is a child of this object.

Specified by:
removeChildImpl in class AbstractWabitObject
See Also:
AbstractWabitObject.removeChild(WabitObject)

addChildImpl

protected void addChildImpl(WabitObject child,
                            int index)
Description copied from class: AbstractWabitObject
This is the object specific implementation of #addChild(WabitObject). There are checks in the #addChild(WabitObject) method to ensure that the object given here is a valid child type of this object.

This method should be overwritten if children are allowed.

Overrides:
addChildImpl in class AbstractWabitObject
Parameters:
child - The child to add to this object.
index - The index to add the child at.

addRepaintListener

public void addRepaintListener(RepaintListener listener)
Adds a listener to this object that will be notified when the object wants to repaint.


removeRepaintListener

public void removeRepaintListener(RepaintListener listener)

repaint

public void repaint()


Copyright © 2009. All Rights Reserved.