public class DockTabbedPane extends javax.swing.JTabbedPane implements DockDropReceiver, DockableDragSource, TabbedDockableContainer
Defaults :
This tabbed pane is not meant to be used outside of DockingDesktop because of their connected behaviour (drag/drop support, docking constraints, etc).
As of version 2.0 of the framework, the tabbed pane displays a close icon (other functions are available with a right click menu).
DockingDesktop
,
Serialized Formjavax.swing.JTabbedPane.AccessibleJTabbedPane, javax.swing.JTabbedPane.ModelListener
javax.swing.JComponent.AccessibleJComponent
Modifier and Type | Field and Description |
---|---|
protected DockingDesktop |
desktop |
protected javax.swing.JPopupMenu |
popup
The pop-up menu used to provide fast "close" shortcuts (close all, close others)
|
protected int |
popupTab
the tab currently associated with the pop-up
|
protected int |
previousSelectedDockable
The tab that was selected before the current one
|
changeEvent, changeListener, model, SCROLL_TAB_LAYOUT, tabPlacement, WRAP_TAB_LAYOUT
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
Constructor and Description |
---|
DockTabbedPane() |
Modifier and Type | Method and Description |
---|---|
void |
addDockable(Dockable dockable,
int tab)
Adds a new tab respecting the presentation and constraints of the component.
|
protected java.awt.geom.GeneralPath |
buildPathAfterLastTab(java.awt.Rectangle vbounds,
java.awt.Rectangle afterlast)
Creates a general path suitable for showing tab insertion after the last tab
|
protected java.awt.geom.GeneralPath |
buildPathForCurrentTab(java.awt.Rectangle vbounds,
java.awt.Rectangle tabbounds)
Creates a general path suitable for showing tab insertion before the currentTab
|
void |
endDragComponent(boolean dropped)
notifies the source when the drag operation has ended (by a drop or cancelled)
|
Dockable |
getDockable()
Returns the
Dockable component this source is for |
Dockable |
getDockableAt(int index)
Returns the dockable at the index tab
|
java.awt.Container |
getDockableContainer()
returns the DockableContainer responsible for displaying the associated dockable
|
int |
getDockableIndex(DockKey key)
Returns the tab index of the dockable corresponding to the given key, or null if the dockable
doesn't belong to this tab.
|
Dockable |
getSelectedDockable()
Returns the currently selected (front) dockable
|
int |
indexOfDockable(Dockable dockable)
Returns the index of the given dockable
|
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 e)
The component is notified of a drag operation.
|
void |
processDockableDrop(DockDropEvent event)
The component is requested to perform a docking drop action.
|
void |
removeDockable(Dockable dockable)
Removes a dockable from the tabs
|
void |
removeDockable(int index)
Remove the dockable at specified index tab
|
void |
setSelectedDockable(Dockable dockable)
Change the tab selection to display this dockable
|
boolean |
startDragComponent(java.awt.Point p)
Notifies this source that a drag operation has begun.
|
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() |
add, add, add, add, add, addChangeListener, addTab, addTab, addTab, createChangeListener, fireStateChanged, getAccessibleContext, getBackgroundAt, getBoundsAt, getChangeListeners, getComponentAt, getDisabledIconAt, getDisplayedMnemonicIndexAt, getForegroundAt, getIconAt, getMnemonicAt, getModel, getSelectedComponent, getSelectedIndex, getTabComponentAt, getTabCount, getTabLayoutPolicy, getTabPlacement, getTabRunCount, getTitleAt, getToolTipText, getToolTipTextAt, getUI, getUIClassID, indexAtLocation, indexOfComponent, indexOfTab, indexOfTab, indexOfTabComponent, insertTab, isEnabledAt, paramString, remove, remove, removeAll, removeChangeListener, removeTabAt, setBackgroundAt, setComponentAt, setDisabledIconAt, setDisplayedMnemonicIndexAt, setEnabledAt, setForegroundAt, setIconAt, setMnemonicAt, setModel, setSelectedComponent, setSelectedIndex, setTabComponentAt, setTabLayoutPolicy, setTabPlacement, setTitleAt, setToolTipTextAt, 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, 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
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, 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
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
getTabCount
protected DockingDesktop desktop
protected javax.swing.JPopupMenu popup
protected int popupTab
protected int previousSelectedDockable
public int getDockableIndex(DockKey key)
public void addDockable(Dockable dockable, int tab)
addDockable
in interface TabbedDockableContainer
public void processDockableDrag(DockDragEvent e)
DockDropReceiver
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
protected java.awt.geom.GeneralPath buildPathForCurrentTab(java.awt.Rectangle vbounds, java.awt.Rectangle tabbounds)
protected java.awt.geom.GeneralPath buildPathAfterLastTab(java.awt.Rectangle vbounds, java.awt.Rectangle afterlast)
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).
processDockableDrop
in interface DockDropReceiver
public boolean startDragComponent(java.awt.Point p)
The source may reject the drag according to internal conditions (in that case
this method shall return false
) or to wrong mouse position .
startDragComponent
in interface DockableDragSource
p
refers to
a draggable component), false otherwise.public Dockable getDockable()
Dockable
component this source is forgetDockable
in interface DockableDragSource
public Dockable getSelectedDockable()
getSelectedDockable
in interface TabbedDockableContainer
public void setSelectedDockable(Dockable dockable)
setSelectedDockable
in interface TabbedDockableContainer
public Dockable getDockableAt(int index)
getDockableAt
in interface TabbedDockableContainer
public void removeDockable(Dockable dockable)
removeDockable
in interface TabbedDockableContainer
public void removeDockable(int index)
removeDockable
in interface TabbedDockableContainer
public java.lang.String toString()
toString
in class java.awt.Component
public int indexOfDockable(Dockable dockable)
indexOfDockable
in interface TabbedDockableContainer
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 java.awt.Container getDockableContainer()
DockableDragSource
getDockableContainer
in interface DockableDragSource
public void endDragComponent(boolean dropped)
DockableDragSource
endDragComponent
in interface DockableDragSource
Copyright © 2010-2014 Pacific Biosciences. All Rights Reserved.