org.pentaho.reporting.engine.classic.core.function
Class ElementVisibilitySwitchFunction

java.lang.Object
  extended by org.pentaho.reporting.engine.classic.core.function.AbstractExpression
      extended by org.pentaho.reporting.engine.classic.core.function.AbstractFunction
          extended by org.pentaho.reporting.engine.classic.core.function.ElementVisibilitySwitchFunction
All Implemented Interfaces:
Serializable, Cloneable, EventListener, PageEventListener, ReportListener, Expression, Function, LayoutProcessorFunction

Deprecated. Use the RowBandingFunction to modify the band's background color directly.

public class ElementVisibilitySwitchFunction
extends AbstractFunction
implements PageEventListener, LayoutProcessorFunction

A function that alternates between true and false for each item within a group. The functions value affects a defined elements visibility. If the function evaluates to true, the named element is visible, else the element is invisible.

Prior to Version 0.8.9, Elements in the Classic Engine did not define their own background color attribute. To create a background, one had to place a rectangle shape element behind the element. To modify the band's background directly, use the RowBandingFunction.

The ElementVisibilitySwitchFunction is used to trigger the visibility of an named element. If the element is your background, you will get the alternating effect.

The ElementVisibilitySwitchFunction defines two parameters:

Author:
Thomas Morgner, Michael D'Amour
See Also:
Serialized Form

Constructor Summary
ElementVisibilitySwitchFunction()
          Deprecated. Default constructor.
 
Method Summary
 String getElement()
          Deprecated. Returns the element name.
 boolean getInitialState()
          Deprecated. Returns the initial visibility that is used on the start of a new report, a new group or a new page.
 boolean getInitialTriggerValue()
          Deprecated. use getInitialState instead.
 Boolean getNewPageState()
          Deprecated. Returns the visibility state that should be used on new pages.
 int getNumberOfElements()
          Deprecated. Returns the number of rows that must be processed before the visibility can switch again.
 Object getValue()
          Deprecated. Returns the defined visibility of the element.
 void itemsAdvanced(ReportEvent event)
          Deprecated. Triggers the visibility of an element.
 void itemsStarted(ReportEvent event)
          Deprecated. Receives notification that the items are being processed.
 void pageFinished(ReportEvent event)
          Deprecated. Receives notification that a page is completed.
 void pageStarted(ReportEvent event)
          Deprecated. Receives notification that a page has started.
 void reportInitialized(ReportEvent event)
          Deprecated. Receives notification that report generation initializes the current run.
 void setElement(String name)
          Deprecated. Sets the element name.
 void setInitialState(boolean initialState)
          Deprecated. Defines the initial visibility that is used on the start of a new report, a new group or a new page.
 void setNewPageState(Boolean newPageState)
          Deprecated. Defines the visibility state that should be used on new pages.
 void setNumberOfElements(int numberOfElements)
          Deprecated. Defines the number of rows that must be processed before the visibility can switch again.
 
Methods inherited from class org.pentaho.reporting.engine.classic.core.function.AbstractFunction
groupFinished, groupStarted, itemsFinished, reportDone, reportFinished, reportStarted
 
Methods inherited from class org.pentaho.reporting.engine.classic.core.function.AbstractExpression
clone, getDataRow, getDependencyLevel, getInstance, getName, getReportConfiguration, getResourceBundleFactory, getRuntime, isActive, isDeepTraversing, isPreserve, setActive, setDependencyLevel, setName, setPreserve, setRuntime
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.pentaho.reporting.engine.classic.core.event.ReportListener
groupFinished, groupStarted, itemsFinished, reportDone, reportFinished, reportStarted
 
Methods inherited from interface org.pentaho.reporting.engine.classic.core.function.Expression
clone, getDataRow, getDependencyLevel, getInstance, getName, getReportConfiguration, getResourceBundleFactory, getRuntime, isActive, isDeepTraversing, isPreserve, setDependencyLevel, setName, setRuntime
 

Constructor Detail

ElementVisibilitySwitchFunction

public ElementVisibilitySwitchFunction()
Deprecated. 
Default constructor.

Method Detail

pageStarted

public void pageStarted(ReportEvent event)
Deprecated. 
Receives notification that a page has started.

Specified by:
pageStarted in interface PageEventListener
Parameters:
event - the event.

pageFinished

public void pageFinished(ReportEvent event)
Deprecated. 
Receives notification that a page is completed.

Specified by:
pageFinished in interface PageEventListener
Parameters:
event - The event.

reportInitialized

public void reportInitialized(ReportEvent event)
Deprecated. 
Receives notification that report generation initializes the current run.

The event carries a ReportState.Started state. Use this to initialize the report.

Specified by:
reportInitialized in interface ReportListener
Overrides:
reportInitialized in class AbstractFunction
Parameters:
event - The event.

itemsStarted

public void itemsStarted(ReportEvent event)
Deprecated. 
Receives notification that the items are being processed. Sets the function value to false.

Following this event, there will be a sequence of itemsAdvanced events until the itemsFinished event is raised.

Specified by:
itemsStarted in interface ReportListener
Overrides:
itemsStarted in class AbstractFunction
Parameters:
event - Information about the event.

itemsAdvanced

public void itemsAdvanced(ReportEvent event)
Deprecated. 
Triggers the visibility of an element. If the named element was visible at the last itemsAdvanced call, it gets now invisible and vice versa. This creates the effect, that an element is printed every other line.

Specified by:
itemsAdvanced in interface ReportListener
Overrides:
itemsAdvanced in class AbstractFunction
Parameters:
event - the report event.

getNumberOfElements

public int getNumberOfElements()
Deprecated. 
Returns the number of rows that must be processed before the visibility can switch again.

Returns:
a row count.

setNumberOfElements

public void setNumberOfElements(int numberOfElements)
Deprecated. 
Defines the number of rows that must be processed before the visibility can switch again.

Parameters:
numberOfElements - a row count.

getInitialTriggerValue

public boolean getInitialTriggerValue()
Deprecated. use getInitialState instead.

Gets the initial value for the visible trigger, either "true" or "false".

Returns:
the initial value for the trigger.

getInitialState

public boolean getInitialState()
Deprecated. 
Returns the initial visibility that is used on the start of a new report, a new group or a new page.

Returns:
the initial value for the trigger.

setInitialState

public void setInitialState(boolean initialState)
Deprecated. 
Defines the initial visibility that is used on the start of a new report, a new group or a new page.

Parameters:
initialState - the initial value for the trigger.

setElement

public void setElement(String name)
Deprecated. 
Sets the element name. The name denotes an element or band within the root-band or the root-band itself. It is possible to define multiple elements with the same name to apply the modification to all of these elements.

Parameters:
name - The element name.
See Also:
FunctionUtilities.findAllElements(org.pentaho.reporting.engine.classic.core.Band,String)

getElement

public String getElement()
Deprecated. 
Returns the element name.

Returns:
The element name.
See Also:
setElement(String)

getNewPageState

public Boolean getNewPageState()
Deprecated. 
Returns the visibility state that should be used on new pages. This is only used if resetOnPageStart is set to true. If this value is not defined, the initialState is used.

Returns:
the state on new pages.

setNewPageState

public void setNewPageState(Boolean newPageState)
Deprecated. 
Defines the visibility state that should be used on new pages. This is only used if resetOnPageStart is set to true. If this value is not defined, the initialState is used.

Parameters:
newPageState - the state on new pages or null to use the initialState.

getValue

public Object getValue()
Deprecated. 
Returns the defined visibility of the element. Returns either true or false as java.lang.Boolean.

Specified by:
getValue in interface Expression
Returns:
the visibility of the element, either Boolean.TRUE or Boolean.FALSE.