bibliothek.gui.dock.action
Class FilteredDockActionSource

java.lang.Object
  extended by bibliothek.gui.dock.action.AbstractDockActionSource
      extended by bibliothek.gui.dock.action.FilteredDockActionSource
All Implemented Interfaces:
DockActionSource, Iterable<DockAction>
Direct Known Subclasses:
EclipseDockActionSource

public abstract class FilteredDockActionSource
extends AbstractDockActionSource

A DockActionSource which shows a selection of DockActions fetched from another DockActionSource

Author:
Benjamin Sigg

Field Summary
 
Fields inherited from class bibliothek.gui.dock.action.AbstractDockActionSource
listeners
 
Constructor Summary
FilteredDockActionSource(DockActionSource source)
          Creates a new filtered DockActionSource.
 
Method Summary
 void addDockActionSourceListener(DockActionSourceListener listener)
          Adds a listener to this source.
 DockAction getDockAction(int index)
          Gets the index'th DockAction of this source.
 int getDockActionCount()
          Gets the number of DockActions which are provided by this source.
 LocationHint getLocationHint()
          Gets a hint where to put this source in relation to other sources.
protected abstract  boolean include(DockAction action)
          Tells whether action should be included in the list of actions of this source, or not.
 Iterator<DockAction> iterator()
           
 void removeDockActionSourceListener(DockActionSourceListener listener)
          Removes an earlier added listener.
 
Methods inherited from class bibliothek.gui.dock.action.AbstractDockActionSource
fireAdded, fireRemoved, hasListeners, indexOf
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FilteredDockActionSource

public FilteredDockActionSource(DockActionSource source)
Creates a new filtered DockActionSource.

Parameters:
source - the source from which DockActions are fetched, must not be null
Method Detail

iterator

public Iterator<DockAction> iterator()

addDockActionSourceListener

public void addDockActionSourceListener(DockActionSourceListener listener)
Description copied from interface: DockActionSource
Adds a listener to this source. The DockActionSourceListener should be informed whenever some DockActions are added or removed from this source.

Specified by:
addDockActionSourceListener in interface DockActionSource
Overrides:
addDockActionSourceListener in class AbstractDockActionSource
Parameters:
listener - The listener

removeDockActionSourceListener

public void removeDockActionSourceListener(DockActionSourceListener listener)
Description copied from interface: DockActionSource
Removes an earlier added listener.

Specified by:
removeDockActionSourceListener in interface DockActionSource
Overrides:
removeDockActionSourceListener in class AbstractDockActionSource
Parameters:
listener - The listener to remove
See Also:
DockActionSource.addDockActionSourceListener(DockActionSourceListener)

getDockAction

public DockAction getDockAction(int index)
Description copied from interface: DockActionSource
Gets the index'th DockAction of this source.

Parameters:
index - The index of the action
Returns:
The DockAction

getDockActionCount

public int getDockActionCount()
Description copied from interface: DockActionSource
Gets the number of DockActions which are provided by this source.

Returns:
The number of DockActions

getLocationHint

public LocationHint getLocationHint()
Description copied from interface: DockActionSource
Gets a hint where to put this source in relation to other sources. Note that an ActionOffer can choose to ignore these hints, or interpret them in an unexpected way.

Returns:
the preferred location of this source

include

protected abstract boolean include(DockAction action)
Tells whether action should be included in the list of actions of this source, or not.

Parameters:
action - the action to test
Returns:
true if action should be shown