## org.jfree.ui.tabbedui
Class AbstractTabbedUI

    java.lang.Object
      java.awt.Component
          java.awt.Container
              javax.swing.JComponent
                  org.jfree.ui.tabbedui.AbstractTabbedUI

All Implemented Interfaces:
  java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable

    public abstract class AbstractTabbedUI

extends javax.swing.JComponent

A tabbed GUI. All views on the data are contained in tabs.

Author:
  Thomas Morgner
See Also:
  Serialized Form

Nested Class Summary
`protected class` `AbstractTabbedUI.ExitAction` An exit action.

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.BltBufferStrategy, java.awt.Component.FlipBufferStrategy`

Field Summary
`static java.lang.String` `GLOBAL_MENU_PROPERTY` The global menu property.
`static java.lang.String` `JMENUBAR_PROPERTY` The menu bar property key.

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
`AbstractTabbedUI()` Default constructor.

Method Summary
`void` `addRootEditor(RootEditor rootPanel)` Adds a root editor.
`protected abstract void` `attempExit()` Attempts to exit.
`protected javax.swing.Action` `createCloseAction()` Creates a close action.
`javax.swing.Action` `getCloseAction()` Returns the close action.
`javax.swing.JMenuBar` `getJMenuBar()` Returns the menu bar.
`protected abstract javax.swing.JMenu[]` `getPostfixMenus()` The postfix menus.
`protected abstract javax.swing.JMenu[]` `getPrefixMenus()` Returns the prefix menus.
`RootEditor` `getRootEditor(int pos)` Returns the specified editor.
`int` `getRootEditorCount()` Returns the number of root editors.
`int` `getSelectedEditor()` Returns the selected editor.
`protected javax.swing.JTabbedPane` `getTabbedPane()` Returns the tabbed pane.
`boolean` `isGlobalMenu()` Defines whether to use a global unified menu bar, which contains all menus from all tab-panes or whether to use local menubars.
`void` `setGlobalMenu(boolean globalMenu)` Sets the global menu flag.
`protected void` `setJMenuBar(javax.swing.JMenuBar menuBar)` Sets the menu bar.
`void` `setSelectedEditor(int selectedEditor)` Sets the selected editor.
`protected void` `updateRootEditorEnabled(RootEditor editor)` Update handler for the enable state of the root editor.

Methods inherited from class javax.swing.JComponent

`addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getAccessibleContext, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, 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, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, paramString, 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, updateUI`

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

### JMENUBAR_PROPERTY

    public static final java.lang.String JMENUBAR_PROPERTY

  The menu bar property key.

  See Also:
    Constant Field Values

### GLOBAL_MENU_PROPERTY

    public static final java.lang.String GLOBAL_MENU_PROPERTY

  The global menu property.

  See Also:
    Constant Field Values

Constructor Detail

### AbstractTabbedUI

    public AbstractTabbedUI()

  Default constructor.

Method Detail

### getTabbedPane

    protected javax.swing.JTabbedPane getTabbedPane()

  Returns the tabbed pane.

  Returns:
    The tabbed pane.

### isGlobalMenu

    public boolean isGlobalMenu()

  Defines whether to use a global unified menu bar, which contains all menus from all tab-panes or whether to use local menubars.

  From an usability point of view, global menubars should be preferred, as this way users always see which menus are possibly available and do not wonder where the menus are disappearing.

  Returns:
    true, if global menus should be used, false otherwise.

### setGlobalMenu

    public void setGlobalMenu(boolean globalMenu)

  Sets the global menu flag.

  Parameters:
    `globalMenu` - the flag.

### getJMenuBar

    public javax.swing.JMenuBar getJMenuBar()

  Returns the menu bar.

  Returns:
    The menu bar.

### setJMenuBar

    protected void setJMenuBar(javax.swing.JMenuBar menuBar)

  Sets the menu bar.

  Parameters:
    `menuBar` - the menu bar.

### createCloseAction

    protected javax.swing.Action createCloseAction()

  Creates a close action.

  Returns:
    A close action.

### getCloseAction

    public javax.swing.Action getCloseAction()

  Returns the close action.

  Returns:
    The close action.

### getPrefixMenus

    protected abstract javax.swing.JMenu[] getPrefixMenus()

  Returns the prefix menus.

  Returns:
    The prefix menus.

### getPostfixMenus

    protected abstract javax.swing.JMenu[] getPostfixMenus()

  The postfix menus.

  Returns:
    The postfix menus.

### addRootEditor

    public void addRootEditor(RootEditor rootPanel)

  Adds a root editor.

  Parameters:
    `rootPanel` - the root panel.

### getRootEditorCount

    public int getRootEditorCount()

  Returns the number of root editors.

  Returns:
    The count.

### getRootEditor

    public RootEditor getRootEditor(int pos)

  Returns the specified editor.

  Parameters:
    `pos` - the position index.
  Returns:
    The editor at the given position.

### getSelectedEditor

    public int getSelectedEditor()

  Returns the selected editor.

  Returns:
    The selected editor.

### setSelectedEditor

    public void setSelectedEditor(int selectedEditor)

  Sets the selected editor.

  Parameters:
    `selectedEditor` - the selected editor.

### attempExit

    protected abstract void attempExit()

  Attempts to exit.

### updateRootEditorEnabled

    protected void updateRootEditorEnabled(RootEditor editor)

  Update handler for the enable state of the root editor.

  Parameters:
    `editor` - the editor.