org.jfree.report.structure
Class Element

java.lang.Object
  extended by org.jfree.report.structure.Node
      extended by org.jfree.report.structure.Element
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable
Direct Known Subclasses:
AutoTableCellContent, AutoTableElement, ContentElement, Section

public abstract class Element
extends Node

An element is a node that can have attributes. The 'id' and the 'name' attribute is defined for all elements.

Both the name and the id attribute may be null.

Properties in the 'http://jfreereport.sourceforge.net/namespaces/engine/flow' namespace and in the 'http://jfreereport.sourceforge.net/namespaces/engine/compatibility' namespace are considered internal. You should only touch them, if you really know what you are doing.

Author:
Thomas Morgner
See Also:
Serialized Form

Field Summary
static java.lang.String ID_ATTRIBUTE
           
static java.lang.String NAME_ATTRIBUTE
           
static java.lang.String NAMESPACE_ATTRIBUTE
          See XML-Namespaces for the idea of that one ...
static java.lang.String TYPE_ATTRIBUTE
          The type corresponds (somewhat) to the tagname of HTML.
static java.lang.String VIRTUAL_ATTRIBUTE
           
 
Constructor Summary
protected Element()
          Constructs an element.
 
Method Summary
 void addExpression(Expression function)
          Adds a function to the report's collection of expressions.
 java.lang.Object clone()
           
 java.lang.Object getAttribute(java.lang.String name)
           
 java.lang.Object getAttribute(java.lang.String namespace, java.lang.String name)
           
 Expression getAttributeExpression(java.lang.String attr)
          Returns the expressions for the report.
 Expression getAttributeExpression(java.lang.String namespace, java.lang.String attr)
           
 org.jfree.layouting.util.AttributeMap getAttributeExpressionMap()
           
 java.util.Map getAttributeExpressions(java.lang.String namespace)
           
 org.jfree.layouting.util.AttributeMap getAttributeMap()
           
 Expression getDisplayCondition()
           
 Expression[] getExpressions()
          Returns the expressions for the report.
 java.lang.String getId()
           
 java.util.Locale getLocale()
           
protected  java.util.Locale getLocaleFromAttributes()
           
 java.lang.String getName()
          Returns the name of the Element.
 java.lang.String getNamespace()
           
 org.jfree.layouting.input.style.CSSStyleRule getStyle()
          Returns this elements private stylesheet.
 Expression getStyleExpression(java.lang.String property)
          Returns the expressions for the report.
 java.util.Map getStyleExpressions()
           
 java.lang.String getType()
           
 org.jfree.layouting.input.style.values.CSSConstant getVisibility()
           
 boolean isEnabled()
          Returns true, if the element is enabled.
 boolean isVirtual()
           
 void setAttribute(java.lang.String name, java.lang.Object value)
           
 void setAttribute(java.lang.String namespace, java.lang.String name, java.lang.Object value)
           
 void setAttributeExpression(java.lang.String attr, Expression function)
           
 void setAttributeExpression(java.lang.String namespace, java.lang.String attr, Expression function)
          Adds a function to the report's collection of expressions.
 void setDisplayCondition(Expression displayCondition)
           
 void setEnabled(boolean enabled)
          Defines whether the element is enabled.
 void setExpressions(Expression[] expressions)
          Sets the expressions for the report.
 void setId(java.lang.String id)
           
 void setName(java.lang.String name)
          Defines the name for this Element.
 void setNamespace(java.lang.String id)
           
 void setStyleExpression(java.lang.String property, Expression function)
          Adds a function to the report's collection of expressions.
 void setType(java.lang.String type)
           
 void setVirtual(boolean virtual)
           
 void setVisibility(org.jfree.layouting.input.style.values.CSSConstant v)
           
 
Methods inherited from class org.jfree.report.structure.Node
getGroup, getParent, getReport, getRootReport, setParent, updateParent
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

NAME_ATTRIBUTE

public static final java.lang.String NAME_ATTRIBUTE
See Also:
Constant Field Values

ID_ATTRIBUTE

public static final java.lang.String ID_ATTRIBUTE
See Also:
Constant Field Values

TYPE_ATTRIBUTE

public static final java.lang.String TYPE_ATTRIBUTE
The type corresponds (somewhat) to the tagname of HTML.

See Also:
Constant Field Values

NAMESPACE_ATTRIBUTE

public static final java.lang.String NAMESPACE_ATTRIBUTE
See XML-Namespaces for the idea of that one ...

See Also:
Constant Field Values

VIRTUAL_ATTRIBUTE

public static final java.lang.String VIRTUAL_ATTRIBUTE
See Also:
Constant Field Values
Constructor Detail

Element

protected Element()
Constructs an element.

The element inherits the element's defined default ElementStyleSheet to provide reasonable default values for common stylekeys. When the element is added to the band, the bands stylesheet is set as parent to the element's stylesheet.

A datasource is assigned with this element is set to a default source, which always returns null.

Method Detail

getNamespace

public java.lang.String getNamespace()

setNamespace

public void setNamespace(java.lang.String id)

getId

public java.lang.String getId()

setId

public void setId(java.lang.String id)

getType

public java.lang.String getType()

setType

public void setType(java.lang.String type)

setName

public void setName(java.lang.String name)
Defines the name for this Element. The name must not be empty, or a NullPointerException is thrown.

Names can be used to lookup an element within a band. There is no requirement for element names to be unique.

Parameters:
name - the name of this element

getName

public java.lang.String getName()
Returns the name of the Element. The name of the Element is never null.

Returns:
the name.

setAttribute

public void setAttribute(java.lang.String name,
                         java.lang.Object value)

setAttribute

public void setAttribute(java.lang.String namespace,
                         java.lang.String name,
                         java.lang.Object value)

getAttribute

public java.lang.Object getAttribute(java.lang.String name)

getAttribute

public java.lang.Object getAttribute(java.lang.String namespace,
                                     java.lang.String name)

getAttributeMap

public org.jfree.layouting.util.AttributeMap getAttributeMap()

getStyle

public org.jfree.layouting.input.style.CSSStyleRule getStyle()
Returns this elements private stylesheet. This sheet can be used to override the default values set in one of the parent-stylesheets.

Returns:
the Element's stylesheet

setVisibility

public void setVisibility(org.jfree.layouting.input.style.values.CSSConstant v)

getVisibility

public org.jfree.layouting.input.style.values.CSSConstant getVisibility()

setAttributeExpression

public void setAttributeExpression(java.lang.String attr,
                                   Expression function)

setAttributeExpression

public void setAttributeExpression(java.lang.String namespace,
                                   java.lang.String attr,
                                   Expression function)
Adds a function to the report's collection of expressions.

Parameters:
namespace -
attr -
function - the function.

getAttributeExpression

public Expression getAttributeExpression(java.lang.String attr)
Returns the expressions for the report.

Parameters:
attr -
Returns:
the expressions.

getAttributeExpression

public Expression getAttributeExpression(java.lang.String namespace,
                                         java.lang.String attr)

getAttributeExpressions

public java.util.Map getAttributeExpressions(java.lang.String namespace)

getAttributeExpressionMap

public org.jfree.layouting.util.AttributeMap getAttributeExpressionMap()

setStyleExpression

public void setStyleExpression(java.lang.String property,
                               Expression function)
Adds a function to the report's collection of expressions.

Parameters:
function - the function.
property -

getStyleExpression

public Expression getStyleExpression(java.lang.String property)
Returns the expressions for the report.

Parameters:
property -
Returns:
the expressions.

getStyleExpressions

public java.util.Map getStyleExpressions()

addExpression

public void addExpression(Expression function)
Adds a function to the report's collection of expressions.

Parameters:
function - the function.

getExpressions

public Expression[] getExpressions()
Returns the expressions for the report.

Returns:
the expressions.

setExpressions

public void setExpressions(Expression[] expressions)
Sets the expressions for the report.

Parameters:
expressions - the expressions (null not permitted).

isEnabled

public boolean isEnabled()
Returns true, if the element is enabled.

Overrides:
isEnabled in class Node
Returns:
true or false

setEnabled

public void setEnabled(boolean enabled)
Defines whether the element is enabled. Disabled elements will be fully ignored by the report processor. This is a design time property to exclude elements from the processing without actually having to deal with the other complex properties.

Parameters:
enabled -

getDisplayCondition

public Expression getDisplayCondition()
Overrides:
getDisplayCondition in class Node

setDisplayCondition

public void setDisplayCondition(Expression displayCondition)

getLocale

public java.util.Locale getLocale()
Overrides:
getLocale in class Node

getLocaleFromAttributes

protected java.util.Locale getLocaleFromAttributes()

isVirtual

public boolean isVirtual()

setVirtual

public void setVirtual(boolean virtual)

clone

public java.lang.Object clone()
                       throws java.lang.CloneNotSupportedException
Overrides:
clone in class Node
Throws:
java.lang.CloneNotSupportedException