|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectbibliothek.gui.dock.common.intern.AbstractCDockable
public abstract class AbstractCDockable
An abstract implementation of CDockable. Contains methods to
work with listeners and with CActions.
| Field Summary | |
|---|---|
protected CListenerCollection |
listenerCollection
the listeners that were added to this dockable |
| Fields inherited from interface bibliothek.gui.dock.common.intern.CDockable |
|---|
ACTION_KEY_CLOSE, ACTION_KEY_EXTERNALIZE, ACTION_KEY_MAXIMIZE, ACTION_KEY_MINIMIZE, ACTION_KEY_NORMALIZE, ACTION_KEY_UNEXTERNALIZE, ACTION_KEY_UNMAXIMIZE_EXTERNALIZED |
| Constructor Summary | |
|---|---|
protected |
AbstractCDockable()
Creates a new dockable |
| Method Summary | |
|---|---|
void |
addCDockablePropertyListener(CDockablePropertyListener listener)
Adds a property listener to this dockable, the listener will be informed of changes of this dockable. |
void |
addCDockableStateListener(CDockableStateListener listener)
Adds a state listener to this dockable, the listener will be informed of changes of this dockable. |
void |
addDoubleClickListener(CDoubleClickListener listener)
Adds a new listener to this dockable. |
void |
addFocusListener(CFocusListener listener)
Adds a focus listener to this dockable. |
void |
addKeyboardListener(CKeyboardListener listener)
Adds a keyboard listener to this dockable. |
void |
addVetoClosingListener(CVetoClosingListener listener)
Adds a veto-listener to this dockable, the listener will be informed before this dockable gets closed and can issue a veto. |
protected CControlAccess |
control()
Gets access to the controller. |
protected abstract CommonDockable |
createCommonDockable()
Creates the CommonDockable that is associated with this dockable, called the first
time the CommonDockable is required for an operation. |
CAction |
getAction(String key)
Gets an action which is not added to the title by this CDockable
put by another module. |
RequestDimension |
getAndClearResizeRequest()
Gets the preferred size of this CDockable. |
CLocation |
getBaseLocation()
Gets the location of this CDockable. |
protected CloseActionSource |
getClose()
Gets the action source which might show a single action that closes this dockable. |
ColorMap |
getColors()
Gets a mutable map of colors. |
CControlAccess |
getControl()
Gets the control which is responsible for this dockable. |
CLocation |
getDefaultLocation(ExtendedMode mode)
Gets an earlier set value of setDefaultLocation(ExtendedMode, CLocation). |
ExtendedMode |
getExtendedMode()
Gets the size and location of this CDockable. |
FontMap |
getFonts()
Gets a mutable map of fonts. |
Dimension |
getMinimizedSize()
Gets the size which is used when this CDockable is minimzed and
on a popup window. |
CStation<?> |
getWorkingArea()
Gets the parent of this CDockable, this should be the same as
set by the last call of CDockable.setWorkingArea(CStation). |
protected void |
init(CommonDockable dockable)
Initializes this CDockable. |
CommonDockable |
intern()
Gets the intern representation of this dockable. |
boolean |
isMinimizedHold()
Tells whether this CDockable remains visible when minimized and
without focus. |
boolean |
isResizeLocked()
Tells whether width and height are locked. |
boolean |
isResizeLockedHorizontally()
Tells whether the width of this CDockable should remain the same when
its parent changes the size. |
boolean |
isResizeLockedVertically()
Tells whether the height of this CDockable should remain the same when
its parent changes the size. |
boolean |
isSingleTabShown()
Tells whether a single tab should be shown for this CDockable. |
boolean |
isTitleShown()
Tells whether this CDockable shows its title or not. |
boolean |
isVisible()
Tells whether this CDockable is currently visible or not. |
protected CDockablePropertyListener[] |
propertyListeners()
Deprecated. subclasses should use CListenerCollection.getCDockablePropertyListener()
of listenerCollection if they want to fire an event |
void |
putAction(String key,
CAction action)
Exchanges an action of this CDockable. |
void |
removeCDockablePropertyListener(CDockablePropertyListener listener)
Removes a property listener from this dockable. |
void |
removeCDockableStateListener(CDockableStateListener listener)
Removes a state listener from this dockable. |
void |
removeDoubleClickListener(CDoubleClickListener listener)
Removes a listener from this dockable. |
void |
removeFocusListener(CFocusListener listener)
Removes a focus listener from this dockable. |
void |
removeKeyboardListener(CKeyboardListener listener)
Removes a listener from this dockable. |
void |
removeVetoClosingListener(CVetoClosingListener listener)
Removes listener from this CDockable. |
void |
setControl(CControlAccess control)
Sets the CControl which is responsible for this dockable. |
void |
setDefaultLocation(ExtendedMode mode,
CLocation location)
Sets the default location for mode mode for this dockable. |
void |
setExtendedMode(ExtendedMode extendedMode)
Sets how and where this CDockable should be shown. |
void |
setLocation(CLocation location)
Sets the location of this CDockable. |
void |
setMinimizedHold(boolean hold)
Sets whether this CDockable should remain visible when minimized
and without focus. |
void |
setMinimizedSize(Dimension size)
Sets the size of this CDockable when this CDockable is minimized and
on a popup window. |
void |
setResizeLocked(boolean resizeLocked)
Sets whether this dockable likes to remain with the same size all the time. |
void |
setResizeLockedHorizontally(boolean resizeLockedHorizontally)
Sets whether this dockable likes to remain with the same width all the time. |
void |
setResizeLockedVertically(boolean resizeLockedVertically)
Sets whether this dockable likes to remain with the same height all the time. |
void |
setResizeRequest(Dimension size,
boolean process)
Tells this CDockable which size it should have. |
void |
setResizeRequest(RequestDimension size,
boolean process)
Tells this CDockable which size it should have. |
void |
setSingleTabShown(boolean singleTabShown)
Tells this CDockable whether to show a single tab or not. |
void |
setTitleShown(boolean shown)
Tells this CDockable whether to show or to hide its titles. |
void |
setVisible(boolean visible)
Shows or hides this CDockable. |
void |
setWorkingArea(CStation<?> area)
Sets the parent of this CDockable. |
protected CDockableStateListener[] |
stateListeners()
Deprecated. subclasses should use CListenerCollection.getCDockableStateListener()
of listenerCollection if they want to fire an event |
void |
toFront()
Tries to focus this dockable. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface bibliothek.gui.dock.common.intern.CDockable |
|---|
isCloseable, isExternalizable, isMaximizable, isMinimizable, isStackable |
| Field Detail |
|---|
protected CListenerCollection listenerCollection
| Constructor Detail |
|---|
protected AbstractCDockable()
| Method Detail |
|---|
protected abstract CommonDockable createCommonDockable()
CommonDockable that is associated with this dockable, called the first
time the CommonDockable is required for an operation.
protected void init(CommonDockable dockable)
dockable - the representation of this CDockable, not nullprotected CloseActionSource getClose()
protected CControlAccess control()
nullpublic void addCDockableStateListener(CDockableStateListener listener)
CDockable
addCDockableStateListener in interface CDockablelistener - the new listenerpublic void addCDockablePropertyListener(CDockablePropertyListener listener)
CDockable
addCDockablePropertyListener in interface CDockablelistener - the new listenerpublic void removeCDockableStateListener(CDockableStateListener listener)
CDockable
removeCDockableStateListener in interface CDockablelistener - the listener to removepublic void removeCDockablePropertyListener(CDockablePropertyListener listener)
CDockable
removeCDockablePropertyListener in interface CDockablelistener - the listener to removepublic void addFocusListener(CFocusListener listener)
CDockable
addFocusListener in interface CDockablelistener - the new listenerpublic void removeFocusListener(CFocusListener listener)
CDockable
removeFocusListener in interface CDockablelistener - the listener to removepublic void addKeyboardListener(CKeyboardListener listener)
CDockable
addKeyboardListener in interface CDockablelistener - the new listenerpublic void removeKeyboardListener(CKeyboardListener listener)
CDockable
removeKeyboardListener in interface CDockablelistener - the listener to removepublic void addDoubleClickListener(CDoubleClickListener listener)
CDockable
addDoubleClickListener in interface CDockablelistener - the new listenerpublic void removeDoubleClickListener(CDoubleClickListener listener)
CDockable
removeDoubleClickListener in interface CDockablelistener - the listener to removepublic void addVetoClosingListener(CVetoClosingListener listener)
CDockableCVetoClosingEvent which contains only this CDockable (even if
other dockables are closed at the same time).CVetoClosingListeners added to the CControl are invoked before listeners that
are added to a CDockable.
addVetoClosingListener in interface CDockablelistener - the new listenerCControl.addVetoClosingListener(CVetoClosingListener)public void removeVetoClosingListener(CVetoClosingListener listener)
CDockablelistener from this CDockable.
removeVetoClosingListener in interface CDockablelistener - the listener to remove@Deprecated protected CDockableStateListener[] stateListeners()
CListenerCollection.getCDockableStateListener()
of listenerCollection if they want to fire an event
@Deprecated protected CDockablePropertyListener[] propertyListeners()
CListenerCollection.getCDockablePropertyListener()
of listenerCollection if they want to fire an event
public void setVisible(boolean visible)
CDockableCDockable. If this CDockable is not visible and
is made visible, then the framework tries to set its location at
the last known position.CControlAccess.show(CDockable) or
CControlAccess.hide(CDockable).
setVisible in interface CDockablevisible - the new visibility stateCDockable.isVisible()public boolean isVisible()
CDockableCDockable is currently visible or not. Visibility
means that this CDockable is in the tree structure of DockingFrames. Being
in the structure does not imply being visible on the screen. If some
JFrame is not shown, or some DockStation not
properly added to a parent component, then a visible CDockable can
be invisible for the user.CControlAccess.isVisible(CDockable).
isVisible in interface CDockabletrue if this CDockable can be accessed by the user
through a graphical user interface.public void toFront()
public void setLocation(CLocation location)
CDockableCDockable. If this CDockable is visible, than
this method will take immediately effect. Otherwise the location will be
stored in a cache and read as soon as this CDockable is made visible.CControlAccess.getLocationManager() and
CLocationModeManager.setLocation(bibliothek.gui.Dockable, CLocation).
setLocation in interface CDockablelocation - the new location, null is possible, but
will not move the CDockable immediatelyCDockable.getBaseLocation()public CLocation getBaseLocation()
CDockableCDockable. If this CDockable is visible, then
a location will always be returned. Otherwise a location will only
be returned if it just was set using CDockable.setLocation(CLocation).
getBaseLocation in interface CDockablenullpublic void setExtendedMode(ExtendedMode extendedMode)
CDockableCDockable should be shown. Conflicts with
CDockable.isExternalizable(), CDockable.isMaximizable() and CDockable.isMinimizable()
will just be ignored. Implementations should call LocationModeManager.setMode(Dockable, ExtendedMode).
setExtendedMode in interface CDockableextendedMode - the size and locationpublic ExtendedMode getExtendedMode()
CDockableCDockable. Implementations should
return LocationModeManager.getMode(Dockable).
getExtendedMode in interface CDockablenull if this CDockable
is not part of an CControl.public void setWorkingArea(CStation<?> area)
CDockableCDockable. This method can be called by the client
or indirectly through CDockable.setLocation(CLocation).
setWorkingArea in interface CDockablearea - the new parent or nullpublic CStation<?> getWorkingArea()
CDockableCDockable, this should be the same as
set by the last call of CDockable.setWorkingArea(CStation).
getWorkingArea in interface CDockablenullpublic boolean isResizeLocked()
true if width and height are lockedpublic boolean isResizeLockedVertically()
CDockableCDockable should remain the same when
its parent changes the size. This has only effect if the parent can
choose the size of its children. A lock is no guarantee for staying
with the same size, the user still can resize this CDockable.
isResizeLockedVertically in interface CDockabletrue if the height of this CDockable should remain
the same during resize events of the parent.public boolean isResizeLockedHorizontally()
CDockableCDockable should remain the same when
its parent changes the size. This has only effect if the parent can
choose the size of its children. A lock is no guarantee for staying
with the same size, the user still can resize this CDockable.
isResizeLockedHorizontally in interface CDockabletrue if the width of this CDockable should remain
the same during resize events of the parent.
public void setResizeRequest(Dimension size,
boolean process)
CDockable which size it should have. The size will
be stored until it is read by getAndClearResizeRequest().process is true, then this method will call
CControl.handleResizeRequests() in order to try to apply the requested size.
However, there are no guarantees that the requested size can be matched, or that
the request gets handled at all.CDockable is not registered at a
CControl, then the request will remain unprocessed until this CDockable
is registered, and someone calls CControl.handleResizeRequests() on the new owner.
size - the new preferred size, can be null to cancel an
earlier requestprocess - whether to process all pending requests of all CDockable
registered at the CControl which is the owner of this.
Clients can set this parameter to false and call
CControl.handleResizeRequests() manually to process all pending
requests.setResizeRequest(RequestDimension, boolean)
public void setResizeRequest(RequestDimension size,
boolean process)
CDockable which size it should have. The size will
be stored until it is read by getAndClearResizeRequest().process is true, then this method will call
CControl.handleResizeRequests() in order to try to apply the requested size.
However, there are no guarantees that the requested size can be matched, or that the
request gets handled at all.CDockable is not registered at
a CControl, then the request will remain unprocessed until this CDockable
is registered, and someone calls CControl.handleResizeRequests() on the new owner.
size - the new preferred size, can be null to cancel an
earlier requestprocess - whether to process all pending requests of all CDockable
registered at the CControl which is the owner of this.
Clients can set this parameter to false and call
CControl.handleResizeRequests() manually to process all pending
requests.public RequestDimension getAndClearResizeRequest()
CDockableCDockable. The preferred size
will be used to resize this CDockable when
CControl.handleResizeRequests() is called. There are no guarantees
that the request can be granted, or will be handled at all.null is
returned.
getAndClearResizeRequest in interface CDockablenullpublic void setResizeLocked(boolean resizeLocked)
resizeLocked - true if the size of this dockable should
be kept as long as possiblesetResizeLockedHorizontally(boolean),
setResizeLockedVertically(boolean)public void setResizeLockedHorizontally(boolean resizeLockedHorizontally)
resizeLockedHorizontally - true if the width of
this dockable should be kept as long as possiblepublic void setResizeLockedVertically(boolean resizeLockedVertically)
resizeLockedVertically - true if the height
of this dockable should be kept as long as possiblepublic void setMinimizedHold(boolean hold)
CDockableCDockable should remain visible when minimized
and without focus.
setMinimizedHold in interface CDockablehold - whether to remain visiblepublic boolean isMinimizedHold()
CDockableCDockable remains visible when minimized and
without focus.
isMinimizedHold in interface CDockabletrue if this remains visible, false
otherwisepublic void setMinimizedSize(Dimension size)
CDockableCDockable when this CDockable is minimized and
on a popup window.
setMinimizedSize in interface CDockablesize - the sizepublic Dimension getMinimizedSize()
CDockableCDockable is minimzed and
on a popup window. If a value below 0 is set, then the default size
is used.
getMinimizedSize in interface CDockablepublic void setTitleShown(boolean shown)
CDockable whether to show or to hide its titles.
shown - true if titles should be shown, false
if they should be hidden.public boolean isTitleShown()
CDockableCDockable shows its title or not. Note that some
DockThemes might override this setting.
isTitleShown in interface CDockabletrue if the title is shown, false
otherwise.public void setSingleTabShown(boolean singleTabShown)
CDockable whether to show a single tab or not.
singleTabShown - true if a single tab should be shown,
false otherwiseisSingleTabShown()public boolean isSingleTabShown()
CDockableCDockable. Some
DockThemes might ignore this setting.
isSingleTabShown in interface CDockabletrue if a single tab should be shown,
false if notpublic CommonDockable intern()
intern in interface CDockable
public void setDefaultLocation(ExtendedMode mode,
CLocation location)
mode for this dockable. Note
that this location does not override any existing setting. This method can
be called either before or after making this dockable visible. It is
the client's responsibility to ensure that location is valid
together with mode.
mode - the mode for which to store the default locationlocation - the default location or nullpublic CLocation getDefaultLocation(ExtendedMode mode)
setDefaultLocation(ExtendedMode, CLocation).
mode - the mode for which to search the default location
nullpublic void setControl(CControlAccess control)
CControl which is responsible for this dockable.
setControl in interface CDockablecontrol - the new control
public void putAction(String key,
CAction action)
CDockable. The actions that are associated
with this CDockable through this method are not necessarily shown on the
title. They are used by other modules to create effects that are known
only to them.
key - the key of the action, one of the ACTION_KEY_xzy-constants
defined in CDockableaction - the new action, can be null which might force
back a default action (that depends on the module that uses key)public CAction getAction(String key)
CDockableCDockable
put by another module.
getAction in interface CDockablekey - the name of the action
nullpublic ColorMap getColors()
CDockable
getColors in interface CDockablepublic FontMap getFonts()
CDockable
getFonts in interface CDockablepublic CControlAccess getControl()
getControl in interface CDockable
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||