net.sf.jaxodraw.gui.swing
Class JaxoClosableTabbedPane

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JTabbedPane
                  extended by net.sf.jaxodraw.gui.swing.JaxoClosableTabbedPane
All Implemented Interfaces:
ImageObserver, MenuContainer, Serializable, Accessible, SwingConstants

public class JaxoClosableTabbedPane
extends JTabbedPane

Extension of JTabbedPane with closable tabs. USAGE:

For general-purpose use, this implementation lacks support for disabled state both of tabs and of the tab pane), support for RTL orientation and improved accessibility code (showing the titles as accessible names). Neither is of importance for JaxoDraw at the moment.

Since:
2.0
See Also:
Serialized Form

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
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 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
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
JaxoClosableTabbedPane()
          Constructor.
 
Method Summary
 void 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 addClosingListener(TabClosingListener l)
          Standard listener pattern.
 void addNotify()
          
 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.
 Icon getClosableIconAt(int index)
          Use instead of getIconAt.
 String getClosableTitleAt(int index)
          Use instead of getTitleAt.
 int getFontStyleAt(int index)
          Font style (PLAIN, BOLD, ITALIC, BOLD|ITALIC) of tab title at 'index'.
 void insertTab(String title, Icon icon, Component component, String tip, int index)
           DO NOT USE.
 boolean isClosableAt(int index)
          Is the tab at 'index' closable by the user?
 void removeClosingListener(TabClosingListener l)
          Standard listener pattern.
 void removeNotify()
          
 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 setFont(Font font)
          
 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, 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, 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, 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
 

Constructor Detail

JaxoClosableTabbedPane

public JaxoClosableTabbedPane()
Constructor.

Method Detail

addNotify

public void addNotify()

Overrides:
addNotify in class JComponent

removeNotify

public void removeNotify()

Overrides:
removeNotify in class JComponent

updateUI

public void updateUI()

Overrides:
updateUI in class JTabbedPane

setFont

public void setFont(Font font)

Overrides:
setFont in class JComponent

insertTab

public void insertTab(String title,
                      Icon icon,
                      Component component,
                      String tip,
                      int index)
DO NOT USE. Use any of the addClosableTab methods.

Overrides:
insertTab in class JTabbedPane

removeTabAt

public void removeTabAt(int index)

Overrides:
removeTabAt in class JTabbedPane

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

public void addClosableTab(String title,
                           Component c)
Inserts a tab.

Parameters:
title - The tab title.
c - The component to be displayed when this tab is clicked.

addClosableTab

public void addClosableTab(String title,
                           Icon n,
                           Component c)
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

public void addClosableTab(int index,
                           String title,
                           Component c)
Inserts a tab.

Parameters:
index - The tab index.
title - The tab title.
c - The component to be displayed when this tab is clicked.

addClosableTab

public void addClosableTab(int index,
                           String title,
                           Icon n,
                           Component c)
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

public void setClosableTitleAt(int index,
                               String value)
Use instead of setTitleAt.

Parameters:
index - The index of the tab.
value - The title to set.

getClosableTitleAt

public String getClosableTitleAt(int index)
Use instead of getTitleAt.

Parameters:
index - The index of the tab.
Returns:
The title of the tab at index.

setClosableIconAt

public void setClosableIconAt(int index,
                              Icon value)
Use instead of setIconAt.

Parameters:
index - The index of the tab.
value - The icon to set.

getClosableIconAt

public Icon getClosableIconAt(int index)
Use instead of getIconAt.

Parameters:
index - The index of the tab.
Returns:
The icon of the tab.

addClosingListener

public void addClosingListener(TabClosingListener l)
Standard listener pattern.

Parameters:
l - The listener to add.

removeClosingListener

public void removeClosingListener(TabClosingListener l)
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.


Copyright © 2003-2011 The JaxoDraw team. All Rights Reserved.