|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectjava.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JPanel
com.javadocking.dock.SingleDock
public class SingleDock
This is a dock that contains zero or one dockables.
Information on using single docks is in How to Use Laef Docks in The Sanaware Developer Guide.
It is a leaf dock. It cannot contain other docks.
When it contains one dockable, it is full. When it contains no dockable, it is empty.
A dockable can be docked in this dock if:
DockingMode.SINGLE as possible docking mode.DockingMode.SINGLE as possible docking mode.
If the mouse is inside the priority rectangle, the dockable can be docked with priority (see Priority.CAN_DOCK_WITH_PRIORITY).
When the mouse is inside the panel of this dock, but outside the priority rectangle,
the dockable can be docked without priority (see Priority.CAN_DOCK).
The priority rectangle is a rectangle in the middle of the dock and retrieved with getPriorityRectangle(Rectangle).
| Nested Class Summary |
|---|
| Nested classes/interfaces inherited from class javax.swing.JPanel |
|---|
javax.swing.JPanel.AccessibleJPanel |
| Nested classes/interfaces inherited from class javax.swing.JComponent |
|---|
javax.swing.JComponent.AccessibleJComponent |
| Nested classes/interfaces inherited from class java.awt.Container |
|---|
java.awt.Container.AccessibleAWTContainer |
| Nested classes/interfaces inherited from class java.awt.Component |
|---|
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy |
| Field Summary | |
|---|---|
static Position |
SINGLE_POSITION
The only position for a dockable docked in his dock. |
| Fields inherited from class javax.swing.JComponent |
|---|
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW |
| Fields inherited from class java.awt.Component |
|---|
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT |
| Fields inherited from interface java.awt.image.ImageObserver |
|---|
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH |
| Constructor Summary | |
|---|---|
SingleDock()
Constructs a single dock. |
|
| Method Summary | |
|---|---|
boolean |
addDockable(Dockable dockableToAdd,
java.awt.Point relativeLocation,
java.awt.Point dockableOffset)
Adds a dockable to this dock. |
void |
addDockable(Dockable dockableToAdd,
Position position)
Adds the given dockable to this dock at the given position. |
void |
addDockingListener(DockingListener listener)
Adds a listener for DockingEvents of this dock. |
boolean |
canRemoveDockable(Dockable dockableToRemove)
Determines if the specified dockable can be removed from this dock. |
void |
clearGhosts()
Clears the ghost child docks from this dock. |
boolean |
containsDockable(Dockable otherDockable)
Determines if the given dockable is docked in this dock. |
void |
externalizeDockable(Dockable dockableToExternalize)
Adds the dockable to this dock. |
Dockable |
getDockable(int index)
Gets the dockable with the specified index, that is docked in this dock. |
int |
getDockableCount()
Gets the number of dockables that are docked in this dock. |
Position |
getDockablePosition(Dockable childDockable)
Gets the position where the dockable is docked in this dock. |
int |
getDockPriority(Dockable dockable,
java.awt.Point relativeLocation)
Determines if the dockable can be added. |
Externalizer |
getExternalizer()
Gets the externalizer that contains this externalize dock. |
int |
getHeaderPosition()
Gets the position where the header of the dock is placed. |
Dockable |
getHiddenDockable(int index)
Gets the dockable that is hidden in this dock with the given index. |
int |
getHiddenDockableCount()
Gets the number of hidden dockables of this dock. |
CompositeDock |
getParentDock()
Gets the parent dock of this dock. |
protected void |
getPriorityRectangle(java.awt.Rectangle rectangle)
Computes the relative rectangle in this dock in which docking has priority. |
void |
hideDockable(Dockable dockableToHide)
Hides the content of the dockable. |
boolean |
isEmpty()
Determines if this dock doesn't have any dockables docked in it, or doesn't have any child docks docked in it. |
boolean |
isExternalized()
Determines if a dockable is externalized in this dock. |
boolean |
isFull()
Determines if any more dockables can be added to this dock. |
void |
loadProperties(java.lang.String prefix,
java.util.Properties properties,
java.util.Map childDocks,
java.util.Map dockablesMap,
java.awt.Window owner)
Loads the properties for this dock. |
boolean |
moveDockable(Dockable dockableToMove,
java.awt.Point relativeLocation)
Moves a dockable to a new position in this dock. |
boolean |
removeDockable(Dockable dockableToRemove)
Removes the specified dockable from this dock. |
void |
removeDockingListener(DockingListener listener)
Removes a listener for docking events of this dock. |
void |
restoreDockable(Dockable dockableToRestore)
Restores the dockable that is hidden. |
int |
retrieveDockingRectangle(Dockable dockable,
java.awt.Point relativeLocation,
java.awt.Point dockableOffset,
java.awt.Rectangle rectangle)
Sets the rectangle on the whole dock, if the dockable can be docked. |
void |
saveProperties(java.lang.String prefix,
java.util.Properties properties,
java.util.Map childDocks)
Saves the properties of this dock in the given properties object. |
void |
setExternalizer(Externalizer externalizer)
Sets the externalizer that contains this externalize dock. |
void |
setHeaderPosition(int headerPosition)
Sets the position where the header is placed. |
void |
setParentDock(CompositeDock parentDock)
Sets the specified dock as new parent dock of this dock. |
| Methods inherited from class javax.swing.JPanel |
|---|
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI |
| Methods inherited from class javax.swing.JComponent |
|---|
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update |
| Methods inherited from class java.awt.Container |
|---|
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusBackward, transferFocusDownCycle, validate, validateTree |
| Methods inherited from class java.awt.Component |
|---|
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
public static final Position SINGLE_POSITION
| Constructor Detail |
|---|
public SingleDock()
| Method Detail |
|---|
public int getDockPriority(Dockable dockable,
java.awt.Point relativeLocation)
DockingMode.SINGLE as possible docking mode.DockingMode.SINGLE as possible docking mode.
getDockPriority in interface Dockdockable - The dockable that will be added.relativeLocation - The location where the dockable will be added.
public int retrieveDockingRectangle(Dockable dockable,
java.awt.Point relativeLocation,
java.awt.Point dockableOffset,
java.awt.Rectangle rectangle)
retrieveDockingRectangle in interface Dockdockable - The dockable that will be added.relativeLocation - The location where the dockable will be added.dockableOffset - The mouse location where the dragging started, relatively to the previous dock of the dockable.rectangle - This rectangle will be set to the location and size of the graphical component of the dockable
when it will be docked in this dock. The rectangle is relative to this dock.
Priority.CANNOT_DOCK is returned, otherwise a positive integer.
public boolean addDockable(Dockable dockableToAdd,
java.awt.Point relativeLocation,
java.awt.Point dockableOffset)
DockAdds a dockable to this dock.
First it determines if the dockable can be added with Dock.getDockPriority(Dockable, Point).
If this method returns CANNOT_DOCK, the dockable is not added.
addDockable in interface DockdockableToAdd - The dockable that will be added.relativeLocation - The location where the dockable will be added.dockableOffset - The mouse location where the dragging started, relatively to the previous dock of the dockable.
public boolean canRemoveDockable(Dockable dockableToRemove)
LeafDock
canRemoveDockable in interface LeafDockdockableToRemove - The dockable that will be removed.
public boolean removeDockable(Dockable dockableToRemove)
LeafDock
removeDockable in interface LeafDockdockableToRemove - The dockable that will be removed.
public boolean isEmpty()
Dock
isEmpty in interface Dockpublic boolean isFull()
Dock
isFull in interface Dockpublic CompositeDock getParentDock()
Dock
getParentDock in interface Dockpublic void setParentDock(CompositeDock parentDock)
Dock
setParentDock in interface DockparentDock - The parent dock of this dock.
public void saveProperties(java.lang.String prefix,
java.util.Properties properties,
java.util.Map childDocks)
DockSaves the properties of this dock in the given properties object.
The property names for this dock should start with the given prefix.
saveProperties in interface Dockprefix - The prefix for the property names.properties - The properties object to which the properties should be added.childDocks - A mapping between the child docks that are already saved and the keys that are used for the save.
Dock).
public void loadProperties(java.lang.String prefix,
java.util.Properties properties,
java.util.Map childDocks,
java.util.Map dockablesMap,
java.awt.Window owner)
throws java.io.IOException
DockLoads the properties for this dock. The properties can be found in the given properties object. The property names for this dock start with the given prefix.
The dockables that should be docked in this dock are added to this dock. They can be found in the given dockables mapping. The docks that should be docked inside this dock are added to this dock. They can be found in the given childDocks mapping.
This method should be called after the empty constructor to create the content of the dock. Don't call this method for a dock that already has a content.
loadProperties in interface Dockprefix - The prefix of the names of the properties that have been intended for this dock.properties - The properties object that contains the properties for this dock. It can contain also
properties for other objects, but they will have another prefix.childDocks - A mapping between the dock keys of the child docks that are already loaded and the docks.
Dock).dockablesMap - A mapping that contains the available dockables.
Dockable).owner - The owner window of the dock in the dock model (DockModel).
java.io.IOException - If an error occures while decoding the properties.public void addDockingListener(DockingListener listener)
DockDockingEvents of this dock.
The listener will be informed before and after
adding, moving or removing dockables or child docks from this dock.
addDockingListener in interface Docklistener - A docking listener that will be notified when a dockable or child dock is added, moved, or removed.public void removeDockingListener(DockingListener listener)
Dock
removeDockingListener in interface Docklistener - The docking listener to remove.
public Dockable getDockable(int index)
throws java.lang.IndexOutOfBoundsException
LeafDock
getDockable in interface LeafDockindex - The index of the dockable
java.lang.IndexOutOfBoundsException - If the index is out of range (index < 0 || index >= getDockableCount()).public int getDockableCount()
LeafDock
getDockableCount in interface LeafDockpublic boolean containsDockable(Dockable otherDockable)
LeafDock
containsDockable in interface LeafDockotherDockable - The dockable.
public boolean moveDockable(Dockable dockableToMove,
java.awt.Point relativeLocation)
LeafDock
moveDockable in interface LeafDockdockableToMove - The dockable that will be moved.relativeLocation - The location to which the dockable will be moved, relatively to the dock.
public Position getDockablePosition(Dockable childDockable)
throws java.lang.IllegalArgumentException
LeafDock
getDockablePosition in interface LeafDockchildDockable - The dockable that is docked in this dock.
java.lang.IllegalArgumentException - If the given dockable is not docked in this dock.
public void addDockable(Dockable dockableToAdd,
Position position)
LeafDockAdds the given dockable to this dock at the given position.
If there is already a dockable at the given position, or if the position is invalid, then the dockable is added at another position.
addDockable in interface LeafDockdockableToAdd - The dockable to add to this dock.position - The position of the dockable.
public void hideDockable(Dockable dockableToHide)
throws java.lang.IllegalArgumentException
DockableHiderHides the content of the dockable. The dockable stays docked in this dock at the same position, but it has to be removed from the components of this dock.
The dock is not empty if it has a hidden dockable.
hideDockable in interface DockableHiderdockableToHide - The dockable that is docked in this dock, that has to be hidden.
java.lang.IllegalArgumentException - If the given dockable is not docked in this dock.public int getHiddenDockableCount()
DockableHider
getHiddenDockableCount in interface DockableHiderpublic Dockable getHiddenDockable(int index)
DockableHider
getHiddenDockable in interface DockableHiderindex - The index of the hidden dockable.
public void restoreDockable(Dockable dockableToRestore)
DockableHider
restoreDockable in interface DockableHiderdockableToRestore - The dockable to restorepublic void externalizeDockable(Dockable dockableToExternalize)
ExternalizeDock
externalizeDockable in interface ExternalizeDockdockableToExternalize - The externalized dockable that is added to this dock.public Externalizer getExternalizer()
ExternalizeDock
getExternalizer in interface ExternalizeDockpublic void setExternalizer(Externalizer externalizer)
ExternalizeDock
setExternalizer in interface ExternalizeDockexternalizer - The externalizer of this externalize dock.public boolean isExternalized()
ExternalizeDock
isExternalized in interface ExternalizeDockpublic void clearGhosts()
protected void getPriorityRectangle(java.awt.Rectangle rectangle)
Computes the relative rectangle in this dock in which docking has priority. This rectangle is in the middle of the dock.
rectangle - The rectangle that will get the position and size of the priority rectangle for this dock.public int getHeaderPosition()
Gets the position where the header of the dock is placed.
It should be one of the following values:
The default value is Position.TOP.
public void setHeaderPosition(int headerPosition)
Sets the position where the header is placed.
It should be one of the following values:
headerPosition - The position where the header is placed.
java.lang.IllegalArgumentException - If the given postion is not Position.TOP, Position.BOTTOM, Position.LEFT or Position.RIGHT.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||