Draw2D v2.0

org.eclipse.draw2d
Class ButtonGroup

java.lang.Object
  |
  +--org.eclipse.draw2d.ButtonGroup

public class ButtonGroup
extends Object

ButtonGroup - Holds a group of Clickable's models and provides unique selection in them. There is capability to add a default selection. Models who want to belong to the group should just add themselves to this group. By doing so they listen to this group for changes.

Setting of the default selection results in its being selected any time setSelected(ButtonModel,false) is called. If no default selection is set, the last entry selected is not allowed to deselect.


Constructor Summary
ButtonGroup()
          Constructs a ButtonGroup with no default selection.
 
Method Summary
 void add(ButtonModel model)
          Adds the passed ButtonModel to the ButtonGroup.
 void addPropertyChangeListener(PropertyChangeListener listener)
          Adds the passed listener.
protected  void firePropertyChange(Object oldValue, Object newValue)
          Fires a PropertyChangeEvent to all PropertyChangeListeners added to this ButtonGroup.
 ButtonModel getDefault()
          Returns the ButtonModel which is selected by default for this ButtonGroup.
 List getElements()
          Returns a List which contains all of the ButtonModels added to this ButtonGroup.
 ButtonModel getSelected()
          Returns the ButtonModel for the currently selected button.
 boolean isSelected(ButtonModel model)
          Determines if the given ButtonModel is selected or not.
 void remove(ButtonModel model)
          Removes the given ButtonModel from this ButtonGroup.
 void removePropertyChangeListener(PropertyChangeListener listener)
          Removes the passed PropertyChangeListener from this ButtonGroup.
protected  void selectNewModel(ButtonModel model)
          Sets the passed ButtonModel to be the currently selected ButtonModel of this ButtonGroup.
 void setDefault(ButtonModel model)
          Sets the default selection of this ButtonGroup.
 void setSelected(ButtonModel model)
          Sets the button with the given ButtonModel to be selected.
 void setSelected(ButtonModel model, boolean value)
          Sets model to the passed state.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ButtonGroup

public ButtonGroup()
Constructs a ButtonGroup with no default selection.
Since:
2.0
Method Detail

add

public void add(ButtonModel model)
Adds the passed ButtonModel to the ButtonGroup.
Parameters:
model - ButtonModel to be added to this group.
Since:
2.0
See Also:
remove(ButtonModel)

addPropertyChangeListener

public void addPropertyChangeListener(PropertyChangeListener listener)
Adds the passed listener. ButtonGroups use PropertyChangeListeners to react to selection changes in the ButtonGroup.
Parameters:
listener - Listener to be added to this group.
Since:
2.0
See Also:
removePropertyChangeListener(PropertyChangeListener)

firePropertyChange

protected void firePropertyChange(Object oldValue,
                                  Object newValue)
Fires a PropertyChangeEvent to all PropertyChangeListeners added to this ButtonGroup.
Parameters:
oldValue - Old selection value.
newValue - New selection value.
Since:
2.0

getDefault

public ButtonModel getDefault()
Returns the ButtonModel which is selected by default for this ButtonGroup.
Since:
2.0

getElements

public List getElements()
Returns a List which contains all of the ButtonModels added to this ButtonGroup.
Since:
2.0

getSelected

public ButtonModel getSelected()
Returns the ButtonModel for the currently selected button.
Since:
2.0

isSelected

public boolean isSelected(ButtonModel model)
Determines if the given ButtonModel is selected or not.
Parameters:
model - Model being tested for selected status.
Returns:
Selection state of the given model.
Since:
2.0

remove

public void remove(ButtonModel model)
Removes the given ButtonModel from this ButtonGroup.
Parameters:
model - ButtonModel being removed.
Since:
2.0

removePropertyChangeListener

public void removePropertyChangeListener(PropertyChangeListener listener)
Removes the passed PropertyChangeListener from this ButtonGroup.
Parameters:
listener - PropertyChangeListener to be removed.
Since:
2.0

selectNewModel

protected void selectNewModel(ButtonModel model)
Sets the passed ButtonModel to be the currently selected ButtonModel of this ButtonGroup. Fires a property change.
Parameters:
model - ButtonModel to be selected.
Since:
2.0

setDefault

public void setDefault(ButtonModel model)
Sets the default selection of this ButtonGroup. Does nothing if it is not present in the group. Sets selection to the passed ButtonModel.
Parameters:
model - ButtonModel which is to be the default selection.
Since:
2.0

setSelected

public void setSelected(ButtonModel model)
Sets the button with the given ButtonModel to be selected.
Since:
2.0

setSelected

public void setSelected(ButtonModel model,
                        boolean value)
Sets model to the passed state.
Parameters:
model - Model to be affected.
value - A value of true: Causes the passed ButtonModel to own selection A value of false: If the passed model owned selection, it will lose selection, and selection will be give to the default ButonModel. If the passed model was not selected, selection will remain as it was. If no default ButtonModel was set, selection will remain as it was, as one ButtonModel must own selection at all times.
Since:
2.0

Draw2D v2.0