bibliothek.gui.dock.title
Class DockTitleVersion

java.lang.Object
  extended by bibliothek.gui.dock.title.DockTitleVersion
All Implemented Interfaces:
DockTitleFactory

public class DockTitleVersion
extends java.lang.Object
implements DockTitleFactory

A DockTitleVersion is a hint which DockTitleFactory has to be used to create one or more DockTitle for some Dockable.
DockTitleVersions are created and registered by a DockTitleManager.
Every version consists of three slots for factories, each with different priority. If a new title is required, the factory with the highest priority will be used.
DockTitleVersion implements DockTitleFactory for convenience.

Author:
Benjamin Sigg

Constructor Summary
DockTitleVersion(DockController controller, java.lang.String id)
          Creates a new version.
 
Method Summary
 boolean equals(java.lang.Object obj)
           
 DockController getController()
          Gets the controller for which the titles are created.
 DockTitleFactory getFactory()
          Gets the factory with the highest priority
 DockTitleFactory getFactory(Priority priority)
          Gets the factory with the given priority.
 java.lang.String getID()
          Gets the name of this version.
 int hashCode()
           
 void install(DockTitleRequest request)
          Adds request to this version.
 boolean isSet(Priority priority)
          Tells whether there is a factory with the importance priority, or not.
 void request()
          Calls DockTitleRequest.request() for all DockTitleRequests that are currently installed on this version.
 void request(DockTitleRequest request)
          Calls DockTitleFactory.request(DockTitleRequest) for the current factory.
 void setFactory(DockTitleFactory factory, Priority priority)
          Stores factory at the slot priority.
 void uninstall(DockTitleRequest request)
          Removes request from this version.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DockTitleVersion

public DockTitleVersion(DockController controller,
                        java.lang.String id)
Creates a new version.

Parameters:
controller - the controller for which titles will be created
id - the unique name of this version
Method Detail

install

public void install(DockTitleRequest request)
Adds request to this version. The request will be installed on the current DockTitleFactory of this version. This method should not be called by clients, clients should call DockTitleRequest.install().

Specified by:
install in interface DockTitleFactory
Parameters:
request - the new request, not null

uninstall

public void uninstall(DockTitleRequest request)
Removes request from this version. This method should not be called by clients, clients should call DockTitleRequest.uninstall().

Specified by:
uninstall in interface DockTitleFactory
Parameters:
request - the request to remove

request

public void request(DockTitleRequest request)
Calls DockTitleFactory.request(DockTitleRequest) for the current factory.

Specified by:
request in interface DockTitleFactory
Parameters:
request - the request to answer

request

public void request()
Calls DockTitleRequest.request() for all DockTitleRequests that are currently installed on this version.


getFactory

public DockTitleFactory getFactory()
Gets the factory with the highest priority

Returns:
the factory or null if there is no factory registered.

setFactory

public void setFactory(DockTitleFactory factory,
                       Priority priority)
Stores factory at the slot priority.

Parameters:
factory - the factory
priority - the importance of the factory

getFactory

public DockTitleFactory getFactory(Priority priority)
Gets the factory with the given priority.

Parameters:
priority - the priority
Returns:
the factory or null

isSet

public boolean isSet(Priority priority)
Tells whether there is a factory with the importance priority, or not.

Parameters:
priority - the searched priority
Returns:
true if there is a factory

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object

equals

public boolean equals(java.lang.Object obj)
Overrides:
equals in class java.lang.Object

getID

public java.lang.String getID()
Gets the name of this version. The name is set when this version is created. It should be unique; it is unique if all versions are created through the same DockTitleManager.

Returns:
the name

getController

public DockController getController()
Gets the controller for which the titles are created.

Returns:
the owner of this version