Class AbstractElementBuilderNode

  extended bycom.virtuosotechnologies.lib.basiccommand.builder.AbstractBuilderNode
      extended bycom.virtuosotechnologies.lib.basiccommand.builder.AbstractElementBuilderNode
All Implemented Interfaces:
EventListener, PropertySetListener
Direct Known Subclasses:
AbstractSwingButtonBuilderNode, ComboBoxMemberBuilderNode, MenuBarGlueBuilderNode, MenuSeparatorBuilderNode, SimpleLabelBuilderNode, ToolBarSeparatorBuilderNode

public abstract class AbstractElementBuilderNode
extends AbstractBuilderNode

A skeletal builder that creates a single leaf object with no children. This needs to be subclassed to implement createInitialElement(), and/or to pass an element into the constructor. Also note that this builder registers itself as a PropertySetListener on the CommandNode, so subclasses do not need to do so again.

A lot of this implementaiton is identical to AbstractContainerElementBuilderNode, but alas, Java lacks multiple implementation inheritance.

Field Summary
Fields inherited from class com.virtuosotechnologies.lib.basiccommand.builder.AbstractBuilderNode
Fields inherited from interface com.virtuosotechnologies.lib.container.PropertySetListener
Constructor Summary
protected AbstractElementBuilderNode(CommandNode commandNode, AbstractBranchBuilderNode parent, int index)
protected AbstractElementBuilderNode(CommandNode commandNode, AbstractBranchBuilderNode parent, int index, Object element)
Method Summary
protected abstract  Object createInitialElement()
          Override this method to create the initial element object.
protected  void disabledStateChanged(boolean nowDisabled)
          The disabled state has changed.
protected  int getCardinality()
          Get the cardinality (number of swing objects this node represents).
protected  Object getElement()
          Get the element
protected  void hiddenStateChanged(boolean nowHidden)
          The hidden state has changed.
protected  void setElement(Object element)
          Change the element
Methods inherited from class com.virtuosotechnologies.lib.basiccommand.builder.AbstractBuilderNode
decGrayLevel, decMaskLevel, dump, getCommandNode, getParent, incGrayLevel, incMaskLevel, isDisabled, isHidden, propertySetChanged
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Constructor Detail


protected AbstractElementBuilderNode(CommandNode commandNode,
                                     AbstractBranchBuilderNode parent,
                                     int index)


protected AbstractElementBuilderNode(CommandNode commandNode,
                                     AbstractBranchBuilderNode parent,
                                     int index,
                                     Object element)

Method Detail


protected final int getCardinality()
Get the cardinality (number of swing objects this node represents). Most things have a cardinality of 1. Groups have variable cardinality.

Specified by:
getCardinality in class AbstractBuilderNode


protected final void setElement(Object element)
Change the element


protected final Object getElement()
Get the element


protected void hiddenStateChanged(boolean nowHidden)
The hidden state has changed.

Specified by:
hiddenStateChanged in class AbstractBuilderNode


protected void disabledStateChanged(boolean nowDisabled)
The disabled state has changed.

Specified by:
disabledStateChanged in class AbstractBuilderNode


protected abstract Object createInitialElement()
Override this method to create the initial element object.