com.guiseframework.coupler
Class ActionCardCoupler

java.lang.Object
  extended by com.globalmentor.beans.BoundPropertyObject
      extended by com.guiseframework.event.GuiseBoundPropertyObject
          extended by com.guiseframework.coupler.AbstractCardCoupler
              extended by com.guiseframework.coupler.ActionCardCoupler
All Implemented Interfaces:
com.globalmentor.beans.PropertyBindable, com.globalmentor.beans.PropertyConstrainable

public class ActionCardCoupler
extends AbstractCardCoupler

Associates an action control with a card in a card control. When the action is initiated, the first displayed and enabled specified card within the card control will be selected. When any of the the associated cards are selected, if the action implements Selectable the action will be selected. If the card's constraints implement Displayable, the action will be displayed based upon the card constraints' displayed status. If the card's constraints implement Enableable, the action will be enabled based upon the card constraints' enabled status. If a card's constraints implement TaskCardConstraints and the action implements ActionValueControl and represents a TaskState value, the action's contained value will reflect any changes in the card constraints task state. If the action implements SelectActionControl its auto-select status will be turned off when installed. This coupler is only functional when the given card is contained within a CardControl.

Author:
Garret Wilson

Field Summary
static java.lang.String ACTION_PROPERTY
          The bound property of the action.
 
Fields inherited from class com.guiseframework.coupler.AbstractCardCoupler
CARD_PROPERTY, CARDS_PROPERTY
 
Fields inherited from class com.globalmentor.beans.BoundPropertyObject
NO_PROPERTY_CHANGE_LISTENERS, NO_VETOABLE_CHANGE_LISTENERS
 
Constructor Summary
ActionCardCoupler()
          Default constructor.
ActionCardCoupler(ActionControl actionControl, Component... cards)
          Action and cards constructor.
 
Method Summary
 ActionControl getAction()
           
 void setAction(ActionControl newAction)
          Sets the connected action.
protected  void updateDisplayed(boolean displayed)
          Updates the current displayed status.
protected  void updateEnabled(boolean enabled)
          Updates the current enabled status.
protected  void updateSelected(boolean selected)
          Updates the current selected status.
protected  void updateTaskState(com.globalmentor.model.TaskState taskState)
          Updates the current task state.
 
Methods inherited from class com.guiseframework.coupler.AbstractCardCoupler
getCard, getCardControl, getCards, installCardConstraints, isCardSelectable, selectCard, selectCard, setCard, setCards, uninstallCardConstraints, updateDisplayed, updateEnabled, updateSelected, updateTaskState
 
Methods inherited from class com.guiseframework.event.GuiseBoundPropertyObject
getSession
 
Methods inherited from class com.globalmentor.beans.BoundPropertyObject
addPropertyChangeListener, addPropertyChangeListener, addVetoableChangeListener, addVetoableChangeListener, createPostponedPropertyChangeEvent, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, fireVetoableChange, fireVetoableChange, fireVetoableChange, getForwardPropertyChangeListener, getPropertyChangeListeners, getPropertyChangeListeners, getPropertyChangeSupport, getRepeatPropertyChangeListener, getRepeatVetoableChangeListener, getVetoableChangeListeners, getVetoableChangeListeners, getVetoableChangeSupport, hasPropertyChangeListeners, hasVetoableChangeListeners, removePropertyChangeListener, removePropertyChangeListener, removeVetoableChangeListener, removeVetoableChangeListener
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ACTION_PROPERTY

public static final java.lang.String ACTION_PROPERTY
The bound property of the action.

Constructor Detail

ActionCardCoupler

public ActionCardCoupler()
Default constructor.


ActionCardCoupler

public ActionCardCoupler(ActionControl actionControl,
                         Component... cards)
Action and cards constructor.

Parameters:
actionControl - The new action to connect to the card, or null if the action should not be coupled with a card.
cards - The new cards to connect, if any.
Method Detail

getAction

public ActionControl getAction()
Returns:
The action to connect to the card, or null if the action is not coupled with a card.

setAction

public void setAction(ActionControl newAction)
Sets the connected action. This is a bound property.

Parameters:
newAction - The new action to connect to the card, or null if the action should not be coupled with a card.
See Also:
ACTION_PROPERTY

updateDisplayed

protected void updateDisplayed(boolean displayed)
Updates the current displayed status. This implementation updates the action's displayed status. If no action is connected, no action occurs.

Overrides:
updateDisplayed in class AbstractCardCoupler
Parameters:
displayed - The new displayed status.

updateEnabled

protected void updateEnabled(boolean enabled)
Updates the current enabled status. This implementation updates the action's enabled status. If no action is connected, no action occurs.

Overrides:
updateEnabled in class AbstractCardCoupler
Parameters:
enabled - The new enabled status.

updateTaskState

protected void updateTaskState(com.globalmentor.model.TaskState taskState)
Updates the current task state. If there is a connected action that implements ActionValueControl containing a TaskState value, the action's value will be updated. If no action is connected, no action occurs.

Overrides:
updateTaskState in class AbstractCardCoupler
Parameters:
taskState - The new task state, or null if there is no task state.

updateSelected

protected void updateSelected(boolean selected)
Updates the current selected status. If there is a connected action that implements Selectable, its selected status will be updated. If no action is connected, no action occurs.

Overrides:
updateSelected in class AbstractCardCoupler
Parameters:
selected - The new selected status.


Copyright © 2005-2010 GlobalMentor, Inc. All Rights Reserved.