javax.swing

Class JRootPane

Implemented Interfaces:
Accessible, ImageObserver, MenuContainer, Serializable

public class JRootPane
extends JComponent
implements Accessible

This class is where JComponents are added to. Unlike awt where you could just say frame.add(), with swing you need to say frame.getRootPane() (which delivers an instance of this class) and add your components to that. It is implemented by several 'layers' (pane() should be read as plane()) each on top of the others where you can add components to. (getContentPane(), getGlassPane(), getLayeredPane())
See Also:
Serialized Form

Nested Class Summary

protected class
JRootPane.AccessibleJRootPane
protected class
JRootPane.RootLayout

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

Field Summary

static int
COLOR_CHOOSER_DIALOG
static int
ERROR_DIALOG
static int
FILE_CHOOSER_DIALOG
static int
FRAME
static int
INFORMATION_DIALOG
static int
NONE
static int
PLAIN_DIALOG
static int
QUESTION_DIALOG
static int
WARNING_DIALOG
protected Container
contentPane
DOCUMENT ME!
protected JButton
defaultButton
protected Action
defaultPressAction
Deprecated. since JDK1.3
protected Action
defaultReleaseAction
Deprecated. since JDK1.3
protected Component
glassPane
DOCUMENT ME!
protected JLayeredPane
layeredPane
DOCUMENT ME!
protected JMenuBar
menuBar
DOCUMENT ME!

Fields inherited from class javax.swing.JComponent

TOOL_TIP_TEXT_KEY, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW, accessibleContext, listenerList, ui

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

JRootPane()
Creates a new JRootPane object.

Method Summary

protected void
addImpl(Component comp, Object constraints, int index)
DOCUMENT ME!
protected Container
createContentPane()
DOCUMENT ME!
protected Component
createGlassPane()
DOCUMENT ME!
protected JLayeredPane
createLayeredPane()
DOCUMENT ME!
protected LayoutManager
createRootLayout()
DOCUMENT ME!
AccessibleContext
getAccessibleContext()
Returns the accessible context for this JRootPane.
Container
getContentPane()
DOCUMENT ME!
JButton
getDefaultButton()
Component
getGlassPane()
DOCUMENT ME!
JMenuBar
getJMenuBar()
DOCUMENT ME!
JLayeredPane
getLayeredPane()
DOCUMENT ME!
JMenuBar
getMenuBar()
Deprecated. Replaced by getJMenuBar()
RootPaneUI
getUI()
DOCUMENT ME!
String
getUIClassID()
DOCUMENT ME!
int
getWindowDecorationStyle()
boolean
isOptimizedDrawingEnable()
This returns true if the glassPane is not visible because then the root pane can guarantee to tile its children (the only other direct child is a JLayeredPane which must figure its optimizeDrawingEnabled state on its own).
boolean
isValidateRoot()
DOCUMENT ME!
void
setContentPane(Container p)
Sets the JRootPane's content pane.
void
setDefaultButton(JButton newButton)
void
setGlassPane(Component f)
DOCUMENT ME!
void
setJMenuBar(JMenuBar m)
DOCUMENT ME!
void
setLayeredPane(JLayeredPane f)
Set the layered pane for the root pane.
void
setMenuBar(JMenuBar m)
Deprecated. Replaced by setJMenuBar()
void
setUI(RootPaneUI ui)
DOCUMENT ME!
void
setWindowDecorationStyle(int style)
void
updateUI()
DOCUMENT ME!

Methods inherited from class javax.swing.JComponent

addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, extends EventListener> T[] getListeners, firePropertyChange, firePropertyChange, fireVetoableChange, getAccessibleContext, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, 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, 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, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setNextFocusableComponent, setOpaque, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update, updateUI

Methods inherited from class java.awt.Container

add, add, add, add, add, addContainerListener, addImpl, addNotify, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, extends EventListener> T[] getListeners, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponentZOrder, getComponents, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, paramString, preferredSize, print, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, removeNotify, setComponentZOrder, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, setLayout, transferFocusDownCycle, update, validate, validateTree

Methods inherited from class java.awt.Component

action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, deliverEvent, disable, disableEvents, dispatchEvent, doLayout, enable, enable, enableEvents, enableInputMethods, extends EventListener> T[] getListeners, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getAccessibleContext, getAlignmentX, getAlignmentY, getBackground, getBounds, getBounds, getColorModel, getComponentAt, getComponentAt, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeys, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocation, getLocationOnScreen, getMaximumSize, getMinimumSize, getMouseListeners, getMouseMotionListeners, getMouseWheelListeners, getName, getParent, getPeer, getPreferredSize, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getToolkit, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, invalidate, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusCycleRoot, isFocusOwner, isFocusTraversable, isFocusable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, layout, list, list, list, list, list, locate, location, lostFocus, minimumSize, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paint, paintAll, paramString, postEvent, preferredSize, prepareImage, prepareImage, print, printAll, processComponentEvent, processEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, reshape, resize, resize, setBackground, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setEnabled, setFocusTraversalKeys, setFocusTraversalKeysEnabled, setFocusable, setFont, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setMinimumSize, setName, setPreferredSize, setSize, setSize, setVisible, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle, update, validate

Methods inherited from class java.lang.Object

clone, equals, extends Object> getClass, finalize, hashCode, notify, notifyAll, toString, wait, wait, wait

Field Details

COLOR_CHOOSER_DIALOG

public static final int COLOR_CHOOSER_DIALOG
Field Value:
5

ERROR_DIALOG

public static final int ERROR_DIALOG
Field Value:
4

FILE_CHOOSER_DIALOG

public static final int FILE_CHOOSER_DIALOG
Field Value:
6

FRAME

public static final int FRAME
Field Value:
1

INFORMATION_DIALOG

public static final int INFORMATION_DIALOG
Field Value:
3

NONE

public static final int NONE
Field Value:
0

PLAIN_DIALOG

public static final int PLAIN_DIALOG
Field Value:
2

QUESTION_DIALOG

public static final int QUESTION_DIALOG
Field Value:
7

WARNING_DIALOG

public static final int WARNING_DIALOG
Field Value:
8

contentPane

protected Container contentPane
DOCUMENT ME!

defaultButton

protected JButton defaultButton

defaultPressAction

protected Action defaultPressAction

Deprecated. since JDK1.3

This field is unused since JDK1.3. To override the default action you should modify the JRootPane's ActionMap.

defaultReleaseAction

protected Action defaultReleaseAction

Deprecated. since JDK1.3

This field is unused since JDK1.3. To override the default action you should modify the JRootPane's ActionMap.

glassPane

protected Component glassPane
DOCUMENT ME!

layeredPane

protected JLayeredPane layeredPane
DOCUMENT ME!

menuBar

protected JMenuBar menuBar
DOCUMENT ME!

Constructor Details

JRootPane

public JRootPane()
Creates a new JRootPane object.

Method Details

addImpl

protected void addImpl(Component comp,
                       Object constraints,
                       int index)
DOCUMENT ME!
Overrides:
addImpl in interface Container
Parameters:
comp - DOCUMENT ME!
constraints - DOCUMENT ME!
index - DOCUMENT ME!

createContentPane

protected Container createContentPane()
DOCUMENT ME!
Returns:
DOCUMENT ME!

createGlassPane

protected Component createGlassPane()
DOCUMENT ME!
Returns:
DOCUMENT ME!

createLayeredPane

protected JLayeredPane createLayeredPane()
DOCUMENT ME!
Returns:
DOCUMENT ME!

createRootLayout

protected LayoutManager createRootLayout()
DOCUMENT ME!
Returns:
DOCUMENT ME!

getAccessibleContext

public AccessibleContext getAccessibleContext()
Returns the accessible context for this JRootPane. This will be an instance of JRootPane.AccessibleJRootPane.
Specified by:
getAccessibleContext in interface Accessible
Overrides:
getAccessibleContext in interface JComponent
Returns:
the accessible context for this JRootPane

getContentPane

public Container getContentPane()
DOCUMENT ME!
Returns:
DOCUMENT ME!

getDefaultButton

public JButton getDefaultButton()

getGlassPane

public Component getGlassPane()
DOCUMENT ME!
Returns:
DOCUMENT ME!

getJMenuBar

public JMenuBar getJMenuBar()
DOCUMENT ME!
Returns:
DOCUMENT ME!

getLayeredPane

public JLayeredPane getLayeredPane()
DOCUMENT ME!
Returns:
DOCUMENT ME!

getMenuBar

public JMenuBar getMenuBar()

Deprecated. Replaced by getJMenuBar()


getUI

public RootPaneUI getUI()
DOCUMENT ME!
Returns:
DOCUMENT ME!

getUIClassID

public String getUIClassID()
DOCUMENT ME!
Overrides:
getUIClassID in interface JComponent
Returns:
DOCUMENT ME!

getWindowDecorationStyle

public int getWindowDecorationStyle()
Since:
1.4

isOptimizedDrawingEnable

public boolean isOptimizedDrawingEnable()
This returns true if the glassPane is not visible because then the root pane can guarantee to tile its children (the only other direct child is a JLayeredPane which must figure its optimizeDrawingEnabled state on its own).
Returns:
true if the glassPane is not visible

isValidateRoot

public boolean isValidateRoot()
DOCUMENT ME!
Overrides:
isValidateRoot in interface JComponent
Returns:
DOCUMENT ME!

setContentPane

public void setContentPane(Container p)
Sets the JRootPane's content pane. The content pane should typically be opaque for painting to work properly. This method also removes the old content pane from the layered pane.
Parameters:
p - the Container that will be the content pane
Throws:
IllegalComponentStateException - if p is null

setDefaultButton

public void setDefaultButton(JButton newButton)

setGlassPane

public void setGlassPane(Component f)
DOCUMENT ME!
Parameters:
f - DOCUMENT ME!

setJMenuBar

public void setJMenuBar(JMenuBar m)
DOCUMENT ME!
Parameters:
m - DOCUMENT ME!

setLayeredPane

public void setLayeredPane(JLayeredPane f)
Set the layered pane for the root pane.
Parameters:
f - The JLayeredPane to be used.
Throws:
IllegalComponentStateException - if JLayeredPane parameter is null.

setMenuBar

public void setMenuBar(JMenuBar m)

Deprecated. Replaced by setJMenuBar()


setUI

public void setUI(RootPaneUI ui)
DOCUMENT ME!
Parameters:
ui - DOCUMENT ME!

setWindowDecorationStyle

public void setWindowDecorationStyle(int style)
Since:
1.4

updateUI

public void updateUI()
DOCUMENT ME!
Overrides:
updateUI in interface JComponent

JRootPane.java -- Copyright (C) 2002, 2004 Free Software Foundation, Inc. This file is part of GNU Classpath. GNU Classpath is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Classpath is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Classpath; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. Linking this library statically or dynamically with other modules is making a combined work based on this library. Thus, the terms and conditions of the GNU General Public License cover the whole combination. As a special exception, the copyright holders of this library give you permission to link this library with independent modules to produce an executable, regardless of the license terms of these independent modules, and to copy and distribute the resulting executable under terms of your choice, provided that you also meet, for each linked independent module, the terms and conditions of the license of that module. An independent module is a module which is not derived from or based on this library. If you modify this library, you may extend this exception to your version of the library, but you are not obligated to do so. If you do not wish to do so, delete this exception statement from your version.