net.wotonomy.ui.swing
Class ListAssociation

java.lang.Object
  extended by net.wotonomy.control.EODelayedObserver
      extended by net.wotonomy.ui.EOAssociation
          extended by net.wotonomy.ui.swing.ListAssociation
All Implemented Interfaces:
java.util.EventListener, java.util.Observer, javax.swing.event.ListDataListener, javax.swing.event.ListSelectionListener, net.wotonomy.control.EOObserving

public class ListAssociation
extends net.wotonomy.ui.EOAssociation
implements javax.swing.event.ListSelectionListener, javax.swing.event.ListDataListener

TextAssociation binds a JList to a display group's list of displayable objects. Bindings are:

Version:
$Revision: 904 $
Author:
michael@mpowers.net, $Author: cgruber $

Field Summary
protected  javax.swing.DefaultListModel model
           
 
Fields inherited from class net.wotonomy.ui.EOAssociation
ActionAspect, ArgumentAspect, aspectToGroup, aspectToKey, AttributeAspectSignature, AttributeToManyAspectSignature, AttributeToOneAspectSignature, AttributeToOneToManyAspectSignature, BoldAspect, ChildrenAspect, control, DestinationAspect, EditableAspect, EnabledAspect, IconAspect, IsLeafAspect, ItalicAspect, LabelAspect, NullAspectSignature, ObjectsAspect, ParentAspect, SelectedObjectAspect, SelectedTitleAspect, SourceAspect, TitlesAspect, ToManyAspectSignature, ToOneAspectSignature, ToOneToManyAspectSignature, URLAspect, ValueAspect, VisibleAspect
 
Fields inherited from class net.wotonomy.control.EODelayedObserver
ObserverNumberOfPriorities, ObserverPriorityFifth, ObserverPriorityFirst, ObserverPriorityFourth, ObserverPriorityImmediate, ObserverPriorityLater, ObserverPrioritySecond, ObserverPrioritySixth, ObserverPriorityThird
 
Constructor Summary
ListAssociation(java.lang.Object anObject)
          Constructor expecting a JList.
 
Method Summary
protected  void addAsListener()
           
static net.wotonomy.foundation.NSArray aspects()
          Returns a List that describes the aspects supported by this class.
static net.wotonomy.foundation.NSArray aspectSignatures()
          Returns a List of aspect signatures whose contents correspond with the aspects list.
static net.wotonomy.foundation.NSArray associationClassesSuperseded()
          Returns a List of EOAssociation subclasses that, for the objects that are usable for this association, are less suitable than this association.
 void breakConnection()
          Breaks the connection between this association and its object.
 boolean canBindAspect(java.lang.String anAspect, net.wotonomy.ui.EODisplayGroup aDisplayGroup, java.lang.String aKey)
          Returns whether this association can bind to the specified display group on the specified key for the specified aspect.
 void contentsChanged(javax.swing.event.ListDataEvent e)
           
 void establishConnection()
          Establishes a connection between this association and the controlled object.
 void intervalAdded(javax.swing.event.ListDataEvent e)
           
 void intervalRemoved(javax.swing.event.ListDataEvent e)
           
static boolean isUsableWithObject(java.lang.Object anObject)
          Returns whether this class can control the specified object.
static net.wotonomy.foundation.NSArray objectKeysTaken()
          Returns a List of properties of the controlled object that are controlled by this class.
static java.lang.String primaryAspect()
          Returns the aspect that is considered primary or default.
protected  void removeAsListener()
           
 void subjectChanged()
          Called when either the selection or the contents of an associated display group have changed.
 void valueChanged(javax.swing.event.ListSelectionEvent e)
           
 
Methods inherited from class net.wotonomy.ui.EOAssociation
associationClassesForObject, bindAspect, copyMatchingBindingsFromAssociation, displayGroupForAspect, displayGroupKeyForAspect, displayName, endEditing, object, setValueForAspect, setValueForAspectAtIndex, shouldEndEditing, shouldEndEditingAtIndex, valueForAspect, valueForAspectAtIndex
 
Methods inherited from class net.wotonomy.control.EODelayedObserver
discardPendingNotification, objectWillChange, observerQueue, priority, update
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

model

protected javax.swing.DefaultListModel model
Constructor Detail

ListAssociation

public ListAssociation(java.lang.Object anObject)
Constructor expecting a JList. Throws an exception if it doesn't receive one. Note: This sets the JList's model to a DefaultListModel.

Method Detail

aspectSignatures

public static net.wotonomy.foundation.NSArray aspectSignatures()
Returns a List of aspect signatures whose contents correspond with the aspects list. Each element is a string whose characters represent a capability of the corresponding aspect. An empty signature "" means that the aspect can bind without needing a key. This implementation returns "A1M" for each element in the aspects array.


aspects

public static net.wotonomy.foundation.NSArray aspects()
Returns a List that describes the aspects supported by this class. Each element in the list is the string name of the aspect. This implementation returns an empty list.


associationClassesSuperseded

public static net.wotonomy.foundation.NSArray associationClassesSuperseded()
Returns a List of EOAssociation subclasses that, for the objects that are usable for this association, are less suitable than this association.


isUsableWithObject

public static boolean isUsableWithObject(java.lang.Object anObject)
Returns whether this class can control the specified object.


objectKeysTaken

public static net.wotonomy.foundation.NSArray objectKeysTaken()
Returns a List of properties of the controlled object that are controlled by this class. For example, "stringValue", or "selected".


primaryAspect

public static java.lang.String primaryAspect()
Returns the aspect that is considered primary or default. This is typically "value" or somesuch.


canBindAspect

public boolean canBindAspect(java.lang.String anAspect,
                             net.wotonomy.ui.EODisplayGroup aDisplayGroup,
                             java.lang.String aKey)
Returns whether this association can bind to the specified display group on the specified key for the specified aspect.

Overrides:
canBindAspect in class net.wotonomy.ui.EOAssociation

establishConnection

public void establishConnection()
Establishes a connection between this association and the controlled object. Subclasses should begin listening for events from their controlled object here.

Overrides:
establishConnection in class net.wotonomy.ui.EOAssociation

breakConnection

public void breakConnection()
Breaks the connection between this association and its object. Override to stop listening for events from the object.

Overrides:
breakConnection in class net.wotonomy.ui.EOAssociation

addAsListener

protected void addAsListener()

removeAsListener

protected void removeAsListener()

subjectChanged

public void subjectChanged()
Called when either the selection or the contents of an associated display group have changed.

Overrides:
subjectChanged in class net.wotonomy.ui.EOAssociation

valueChanged

public void valueChanged(javax.swing.event.ListSelectionEvent e)
Specified by:
valueChanged in interface javax.swing.event.ListSelectionListener

intervalAdded

public void intervalAdded(javax.swing.event.ListDataEvent e)
Specified by:
intervalAdded in interface javax.swing.event.ListDataListener

intervalRemoved

public void intervalRemoved(javax.swing.event.ListDataEvent e)
Specified by:
intervalRemoved in interface javax.swing.event.ListDataListener

contentsChanged

public void contentsChanged(javax.swing.event.ListDataEvent e)
Specified by:
contentsChanged in interface javax.swing.event.ListDataListener


Copyright © 2006 null. All Rights Reserved.