public class DockView extends javax.swing.JPanel implements DockDropReceiver, SingleDockableContainer
A Dockview is the component responsible for displaying a single user component inside a DockingPanel.
The DockView contains a DockViewTitleBar, used as a header to display useful information and optional controls (close/maximize/hide/float)
UI : The user component is displayed with decorations provided by a
DockViewUI
delegate.
Here is an example (VLDocking 1.1 "shadow" style) :
Note : multiple user-components are not displayable by the dockview :
the default implementation of TabbedDockableContainer is the DockTabbedPane
.
DockViewTitleBar
,
Serialized Formjavax.swing.JPanel.AccessibleJPanel
javax.swing.JComponent.AccessibleJComponent
Modifier and Type | Field and Description |
---|---|
protected DockingDesktop |
desktop
the desktop managing this view
|
protected Dockable |
dockable
the dockable managed by this view
|
protected java.awt.Shape |
lastDropGeneralPath
remember the last drop position to cache the shape used for showing the drop position
|
protected java.awt.Shape |
lastDropShape
remember the last drop position to cache the shape used for showing the drop position
|
protected DockViewTitleBar |
title |
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
Constructor and Description |
---|
DockView()
Constructs an empty DockView.
|
DockView(Dockable dockable)
Constructs a new DockView for the given dockable.
|
DockView(Dockable dockable,
boolean showTitle)
Constructs a new DockView for the given dockable.
|
Modifier and Type | Method and Description |
---|---|
protected java.awt.geom.GeneralPath |
buildPathForTab(java.awt.Rectangle bounds)
Create a path used to display the drag shape of a tab container
|
Dockable |
getDockable()
Returns the contained component
Returns the dockable this container is displaying
|
DockViewTitleBar |
getTitleBar()
Returns (or creates) the title bar of this dockview
|
java.lang.String |
getUIClassID() |
void |
installDocking(DockingDesktop desktop)
Invoked once after creation, in order to let this component register
its DockableDragSources to the DockingDesktop, and have a reference of this
Desktop.
|
void |
processDockableDrag(DockDragEvent event)
The component is notified of a drag operation.
|
void |
processDockableDrop(DockDropEvent event)
The component is requested to perform a docking drop action.
|
protected void |
scanDrop(DockEvent event,
boolean drop) |
void |
setDockable(Dockable dockable)
Adds the dockable's component to this DockView.
|
java.lang.String |
toString() |
void |
uninstallDocking(DockingDesktop desktop)
Called once, when the dockablecontainer is no longer used by the desktop,
in order to releases resources and listeners taken on
installDocking() |
getAccessibleContext, getUI, paramString, setUI, updateUI
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, isPaintingOrigin, 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
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, transferFocusDownCycle, validate, validateTree
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, transferFocus, transferFocusBackward, transferFocusUpCycle
protected DockViewTitleBar title
protected DockingDesktop desktop
protected Dockable dockable
protected java.awt.Shape lastDropShape
protected java.awt.Shape lastDropGeneralPath
public DockView()
A setDockable(Dockable)
call is requiered for this constructor to be usefull.
public DockView(Dockable dockable)
dockable
- the dockable to showpublic DockView(Dockable dockable, boolean showTitle)
dockable
- the dockable to showpublic Dockable getDockable()
getDockable
in interface SingleDockableContainer
public void setDockable(Dockable dockable)
dockable
- the user dockablepublic java.lang.String toString()
toString
in class java.awt.Component
public java.lang.String getUIClassID()
getUIClassID
in class javax.swing.JPanel
public void processDockableDrag(DockDragEvent event)
This method is used to give a visual clue of dropping capability (for example, mouse cursor change, painting a shadow of future component position)
These clues are transmitted via the event's methods..
processDockableDrag
in interface DockDropReceiver
DockDragEvent
,
DockDropEvent
public void processDockableDrop(DockDropEvent event)
This method is called only after a successful DockDropReceiver.processDockableDrag(DockDragEvent)
The parameters provided for the drop are the same than those of the last drag (in order to avoid an allowed last drag followed by a rejected drop).
On event acceptation ( DockDropEvent.acceptDrop()
, the source component
will be removed from its container, so the DropReceiver must add the
component to its own hierarchy otherwise
the component would be lost (from a user's point of view).
Please note that a drag into a DockView can also lead to create a DockTabbedPane.
processDockableDrop
in interface DockDropReceiver
protected void scanDrop(DockEvent event, boolean drop)
protected java.awt.geom.GeneralPath buildPathForTab(java.awt.Rectangle bounds)
public void installDocking(DockingDesktop desktop)
basic implementation use a single DragSource, and thus calls desk.installDockableDragSource(dragSource).
installDocking
in interface DockableContainer
public void uninstallDocking(DockingDesktop desktop)
installDocking().
uninstallDocking
in interface DockableContainer
public DockViewTitleBar getTitleBar()
Copyright © 2010-2014 Pacific Biosciences. All Rights Reserved.