echopointng.model
Class ExpansionGroup

java.lang.Object
  extended by echopointng.model.ExpansionGroup
All Implemented Interfaces:
java.io.Serializable, RenderIdSupport

public class ExpansionGroup
extends java.lang.Object
implements java.io.Serializable, RenderIdSupport

ExpansionGroup is a collection of Expandable's which allows the expansion of only one Expandable at a time.

The accordion mode is a more restrictive form of this in that it allows on only one Expandable to be expanded at one time and it also requires at least one Expandable to be expanded.

See Also:
Serialized Form

Constructor Summary
ExpansionGroup()
          Constructs an ExpansionGroup
 
Method Summary
 void addExpandable(Expandable expandable)
          Adds a Expandable to the group.
 Expandable[] getExpandables()
          Returns all Expandables in the group.
 java.lang.String getRenderId()
          Returns an identifier that is unique within the ApplicationInstance with which the implementor will be used.
 boolean isAccordionMode()
           
 void removeExpandable(Expandable expandable)
          Removes a Expandable from the group.
 void setAccordionMode(boolean newValue)
          Controls whether the ExpansionGroup is in accordion mode.
 void validate()
          This will validate that the Expandables in the in the right state.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ExpansionGroup

public ExpansionGroup()
Constructs an ExpansionGroup

Method Detail

addExpandable

public void addExpandable(Expandable expandable)
Adds a Expandable to the group.

Parameters:
expandable - the Expandable to add

getExpandables

public Expandable[] getExpandables()
Returns all Expandables in the group.

Returns:
all Expandables in the group.

getRenderId

public java.lang.String getRenderId()
Description copied from interface: RenderIdSupport
Returns an identifier that is unique within the ApplicationInstance with which the implementor will be used.

Specified by:
getRenderId in interface RenderIdSupport
See Also:
RenderIdSupport.getRenderId()

removeExpandable

public void removeExpandable(Expandable expandable)
Removes a Expandable from the group.

Parameters:
expandable - the Expandable to remove

isAccordionMode

public boolean isAccordionMode()
Returns:
true if the ExpansionGroup is in accordion mode.

setAccordionMode

public void setAccordionMode(boolean newValue)
Controls whether the ExpansionGroup is in accordion mode. If it is in accordion mode, the at least one of the Expanables is required to be opened at all times.


validate

public void validate()
This will validate that the Expandables in the in the right state. If multiple Expandables in the group are expanded then the first one will be left expanded and all the rest will be collapsed.