public abstract class AbstractTabbedUI
extends javax.swing.JComponent
Modifier and Type | Class and Description |
---|---|
protected class |
AbstractTabbedUI.ExitAction
An exit action.
|
private class |
AbstractTabbedUI.TabChangeHandler
A tab change handler.
|
private class |
AbstractTabbedUI.TabEnableChangeListener
A tab enable change listener.
|
javax.swing.JComponent.AccessibleJComponent
Modifier and Type | Field and Description |
---|---|
private javax.swing.Action |
closeAction
The close action assigned to this UI.
|
private javax.swing.JComponent |
currentToolbar
The current toolbar.
|
static java.lang.String |
GLOBAL_MENU_PROPERTY
The global menu property.
|
private boolean |
globalMenu
Whether the UI should build a global menu from all root editors.
|
private javax.swing.JMenuBar |
jMenuBar
The current menu bar.
|
static java.lang.String |
JMENUBAR_PROPERTY
The menu bar property key.
|
private java.util.ArrayList |
rootEditors
The list of root editors.
|
private int |
selectedRootEditor
The index of the currently selected root editor.
|
private javax.swing.JTabbedPane |
tabbedPane
The tabbed pane filling the content area.
|
private javax.swing.JPanel |
toolbarContainer
The container component for the toolbar.
|
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
Constructor and Description |
---|
AbstractTabbedUI()
Default constructor.
|
Modifier and Type | Method and Description |
---|---|
private void |
addMenus(javax.swing.JMenuBar menuBar,
javax.swing.JMenu[] customMenus)
Adds menus.
|
void |
addRootEditor(RootEditor rootPanel)
Adds a root editor.
|
protected abstract void |
attempExit()
Attempts to exit.
|
private void |
closeToolbar()
Closes the toolbar.
|
protected javax.swing.Action |
createCloseAction()
Creates a close action.
|
private javax.swing.JMenuBar |
createEditorMenubar(RootEditor root)
Creates a menu bar.
|
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.
|
private javax.swing.JMenuBar |
updateGlobalMenubar()
Updates the global menu bar.
|
protected void |
updateRootEditorEnabled(RootEditor editor)
Update handler for the enable state of the root editor.
|
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, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, 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
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, getAccessibleContext, 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, 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, transferFocusBackward, transferFocusUpCycle
public static final java.lang.String JMENUBAR_PROPERTY
public static final java.lang.String GLOBAL_MENU_PROPERTY
private java.util.ArrayList rootEditors
private javax.swing.JTabbedPane tabbedPane
private int selectedRootEditor
private javax.swing.JComponent currentToolbar
private javax.swing.JPanel toolbarContainer
private javax.swing.Action closeAction
private javax.swing.JMenuBar jMenuBar
private boolean globalMenu
protected javax.swing.JTabbedPane getTabbedPane()
public boolean isGlobalMenu()
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.
public void setGlobalMenu(boolean globalMenu)
globalMenu
- the flag.public javax.swing.JMenuBar getJMenuBar()
protected void setJMenuBar(javax.swing.JMenuBar menuBar)
menuBar
- the menu bar.protected javax.swing.Action createCloseAction()
public javax.swing.Action getCloseAction()
protected abstract javax.swing.JMenu[] getPrefixMenus()
protected abstract javax.swing.JMenu[] getPostfixMenus()
private void addMenus(javax.swing.JMenuBar menuBar, javax.swing.JMenu[] customMenus)
menuBar
- the menu barcustomMenus
- the menus that should be added.private javax.swing.JMenuBar updateGlobalMenubar()
private javax.swing.JMenuBar createEditorMenubar(RootEditor root)
root
- public void addRootEditor(RootEditor rootPanel)
rootPanel
- the root panel.public int getRootEditorCount()
public RootEditor getRootEditor(int pos)
pos
- the position index.public int getSelectedEditor()
public void setSelectedEditor(int selectedEditor)
selectedEditor
- the selected editor.private void closeToolbar()
protected abstract void attempExit()
protected void updateRootEditorEnabled(RootEditor editor)
editor
- the editor.