Package net.sf.jaxodraw.gui.swing
Class JaxoClosableTabbedPane
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JTabbedPane
net.sf.jaxodraw.gui.swing.JaxoClosableTabbedPane
- All Implemented Interfaces:
ImageObserver
,MenuContainer
,Serializable
,Accessible
,SwingConstants
Extension of JTabbedPane with closable tabs.
USAGE:
- Only use addClosableTab (not addTab, insertTab)
- Do not use setIconAt, setDisabledIconAt, setTitleAt, but new methds with "closable" in the name. For a disabled icon, use a custom icon that knows how to paint itself disabled.
- getIconAt, getDisabledIconAt, getTitleAt, are not meaningful.
- Since:
- 2.0
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class javax.swing.JTabbedPane
JTabbedPane.AccessibleJTabbedPane, JTabbedPane.ModelListener
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
-
Field Summary
Fields inherited from class javax.swing.JTabbedPane
changeEvent, changeListener, model, SCROLL_TAB_LAYOUT, tabPlacement, WRAP_TAB_LAYOUT
Fields inherited from class javax.swing.JComponent
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
accessibleContext, 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
Fields inherited from interface javax.swing.SwingConstants
BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
addClosableTab
(int index, String title, Component c) Inserts a tab.void
addClosableTab
(int index, String title, Icon n, Component c) Add a tab at 'index' with given title and icon, showing the given component.void
addClosableTab
(String title, Component c) Inserts a tab.void
addClosableTab
(String title, Icon n, Component c) Inserts a tab.void
Standard listener pattern.void
void
closingTab
(int index) Programmatically cause the same effect (event) as if the user made a closing action at index.protected void
fireClosing
(int index) Standard listener pattern.getClosableIconAt
(int index) Use instead of getIconAt.getClosableTitleAt
(int index) Use instead of getTitleAt.int
getFontStyleAt
(int index) Font style (PLAIN, BOLD, ITALIC, BOLD|ITALIC) of tab title at 'index'.void
DO NOT USE.boolean
isClosableAt
(int index) Is the tab at 'index' closable by the user?void
Standard listener pattern.void
void
removeTabAt
(int index) void
setClosableAt
(int index, boolean value) Sets the tab at index as closeable.void
setClosableIconAt
(int index, Icon value) Use instead of setIconAt.void
setClosableTitleAt
(int index, String value) Use instead of setTitleAt.void
void
setFontStyleAt
(int index, int value) Sets the font style of the tab at index.void
updateUI()
Methods inherited from class javax.swing.JTabbedPane
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, isEnabledAt, paramString, remove, remove, removeAll, removeChangeListener, setBackgroundAt, setComponentAt, setDisabledIconAt, setDisplayedMnemonicIndexAt, setEnabledAt, setForegroundAt, setIconAt, setMnemonicAt, setModel, setSelectedComponent, setSelectedIndex, setTabComponentAt, setTabLayoutPolicy, setTabPlacement, setTitleAt, setToolTipTextAt, setUI
Methods inherited from class javax.swing.JComponent
addAncestorListener, 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, hide, 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, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
Methods inherited from class java.awt.Container
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
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, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, 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, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
Constructor Details
-
JaxoClosableTabbedPane
public JaxoClosableTabbedPane()Constructor.
-
-
Method Details
-
addNotify
public void addNotify()- Overrides:
addNotify
in classJComponent
-
removeNotify
public void removeNotify()- Overrides:
removeNotify
in classJComponent
-
updateUI
public void updateUI()- Overrides:
updateUI
in classJTabbedPane
-
setFont
- Overrides:
setFont
in classJComponent
-
insertTab
DO NOT USE. Use any of the addClosableTab methods.- Overrides:
insertTab
in classJTabbedPane
-
removeTabAt
public void removeTabAt(int index) - Overrides:
removeTabAt
in classJTabbedPane
-
isClosableAt
public boolean isClosableAt(int index) Is the tab at 'index' closable by the user?- Parameters:
index
- The index of the tab to check.- Returns:
- True if the tab is closeable.
-
setClosableAt
public void setClosableAt(int index, boolean value) Sets the tab at index as closeable.- Parameters:
index
- The index of the tab.value
- True if the tab should be closeable.
-
getFontStyleAt
public int getFontStyleAt(int index) Font style (PLAIN, BOLD, ITALIC, BOLD|ITALIC) of tab title at 'index'. The default is plain.- Parameters:
index
- The index of the tab.- Returns:
- The font style.
-
setFontStyleAt
public void setFontStyleAt(int index, int value) Sets the font style of the tab at index.- Parameters:
index
- The index of the tab.value
- The font style to set.
-
addClosableTab
Inserts a tab.- Parameters:
title
- The tab title.c
- The component to be displayed when this tab is clicked.
-
addClosableTab
Inserts a tab.- Parameters:
title
- The tab title.n
- An icon for the tab.c
- The component to be displayed when this tab is clicked.
-
addClosableTab
Inserts a tab.- Parameters:
index
- The tab index.title
- The tab title.c
- The component to be displayed when this tab is clicked.
-
addClosableTab
Add a tab at 'index' with given title and icon, showing the given component. By default, the tab is closable. This method (or one of the delegates) must be used to add new tabs.- Parameters:
index
- The tab index.title
- The tab title.n
- An icon for the tab.c
- The component to be displayed when this tab is clicked.
-
setClosableTitleAt
Use instead of setTitleAt.- Parameters:
index
- The index of the tab.value
- The title to set.
-
getClosableTitleAt
Use instead of getTitleAt.- Parameters:
index
- The index of the tab.- Returns:
- The title of the tab at index.
-
setClosableIconAt
Use instead of setIconAt.- Parameters:
index
- The index of the tab.value
- The icon to set.
-
getClosableIconAt
Use instead of getIconAt.- Parameters:
index
- The index of the tab.- Returns:
- The icon of the tab.
-
addClosingListener
Standard listener pattern.- Parameters:
l
- The listener to add.
-
removeClosingListener
Standard listener pattern.- Parameters:
l
- The listener to remove.
-
fireClosing
protected void fireClosing(int index) Standard listener pattern.- Parameters:
index
- The index of the tab.
-
closingTab
public void closingTab(int index) Programmatically cause the same effect (event) as if the user made a closing action at index. The index is required to be closable.- Parameters:
index
- The tab to close.
-