bibliothek.gui.dock.common
Interface CStation<S extends DockStation>

Type Parameters:
S - what kind of internal implementation this station uses
All Known Implementing Classes:
AbstractCStation, AbstractDockableCStation, CGridArea, CMinimizeArea, CWorkingArea

public interface CStation<S extends DockStation>

A CStation is an element onto which CDockables can be dropped. Each station can, but does not have to be, a CDockable itself. Stations are added to the CControl through CControl.add(CStation, boolean). A station is either a root-station (meaning that it has no parent) or CDockable. It is possible to use a CDockable as root-station.

Author:
Benjamin Sigg

Method Summary
 CDockable asDockable()
          If this station is a CDockable as well, then this method returns the representation of this station as CDockable.
 S getStation()
          Gets the internal representation of this CStation.
 CLocation getStationLocation()
          Gets a location which represents directly getStation().
 String getUniqueId()
          Gets a unique and constant identifier for this station
 boolean isWorkingArea()
          Tells whether this station is a special working area or not.
 void setControl(CControlAccess access)
          Called by CControl when this CStation is added or removed.
 

Method Detail

getStation

S getStation()
Gets the internal representation of this CStation.

Returns:
the internal representation

asDockable

CDockable asDockable()
If this station is a CDockable as well, then this method returns the representation of this station as CDockable.

Returns:
this as dockable or null

isWorkingArea

boolean isWorkingArea()
Tells whether this station is a special working area or not. It is not possible drag a child from a working area if it is registered there, or to drop a child onto a working area if it is not registered there.

Returns:
true if this is a working area, false otherwise

getUniqueId

String getUniqueId()
Gets a unique and constant identifier for this station

Returns:
the unique identifier

getStationLocation

CLocation getStationLocation()
Gets a location which represents directly getStation().

Returns:
the location that will always represent the station

setControl

void setControl(CControlAccess access)
Called by CControl when this CStation is added or removed. There are two actions which most stations might want to do:

Parameters:
access - access to the internals of the CControl that uses this station or null to remove all ties from a control