APIdia Launch Partner
Top Description Methods
javax.swing

public Interface RootPaneContainer

Known Direct Implementers
sun.swing.JLightweightFrame, javax.swing.JDialog, javax.swing.JFrame, javax.swing.JInternalFrame, javax.swing.JWindow
Imports
java.awt.Component, .Container

This interface is implemented by components that have a single JRootPane child: JDialog, JFrame, JWindow, JInternalFrame. The methods in this interface are just covers for the JRootPane properties, e.g. getContentPane() is generally implemented like this:
    public Container getContentPane() {
        return getRootPane().getContentPane();
    }
This interface serves as a marker for Swing GUI builders that need to treat components like JFrame, that contain a single JRootPane, specially. For example in a GUI builder, dropping a component on a RootPaneContainer would be interpreted as frame.getContentPane().add(child).

As a convenience, the standard classes that implement this interface (such as JFrame, JDialog, JWindow, and JInternalFrame) have their add, remove, and setLayout methods overridden, so that they delegate calls to the corresponding methods of the ContentPane. For example, you can add a child component to a frame as follows:

      frame.add(child);
instead of:
      frame.getContentPane().add(child);

The behavior of the add and setLayout methods for JFrame, JDialog, JWindow, and JInternalFrame is controlled by the rootPaneCheckingEnabled property. If this property is true (the default), then calls to these methods are forwarded to the contentPane; if false, these methods operate directly on the RootPaneContainer. This property is only intended for subclasses, and is therefore protected.

Author
Hans Muller
Since
1.2
See Also
JRootPane, JFrame, JDialog, JWindow, JInternalFrame

Method Summary

Modifier and TypeMethod and Description
public Container

Returns:

the value of the contentPane property.
getContentPane
()

Returns the contentPane.

public Component

Returns:

the value of the glassPane property.
getGlassPane
()

Returns the glassPane.

public JLayeredPane

Returns:

the value of the layeredPane property.
getLayeredPane
()

Returns the layeredPane.

public JRootPane

Returns:

this components single JRootPane child.
getRootPane
()

Return this component's single JRootPane child.

public void
setContentPane(Container
the Container to use for the contents of this JRootPane
contentPane
)

The "contentPane" is the primary container for application specific components.

public void
setGlassPane(Component
the glass pane
glassPane
)

The glassPane is always the first child of the rootPane and the rootPanes layout manager ensures that it's always as big as the rootPane.

public void
setLayeredPane(JLayeredPane
the layered pane
layeredPane
)

A Container that manages the contentPane and in some cases a menu bar.

Method Detail

getContentPaneback to summary
public Container getContentPane()

Returns the contentPane.

Returns:Container

the value of the contentPane property.

See Also
setContentPane
getGlassPaneback to summary
public Component getGlassPane()

Returns the glassPane.

Returns:Component

the value of the glassPane property.

See Also
setGlassPane
getLayeredPaneback to summary
public JLayeredPane getLayeredPane()

Returns the layeredPane.

Returns:JLayeredPane

the value of the layeredPane property.

See Also
setLayeredPane
getRootPaneback to summary
public JRootPane getRootPane()

Return this component's single JRootPane child. A conventional implementation of this interface will have all of the other methods indirect through this one. The rootPane has two children: the glassPane and the layeredPane.

Returns:JRootPane

this components single JRootPane child.

See Also
JRootPane
setContentPaneback to summary
public void setContentPane(Container contentPane)

The "contentPane" is the primary container for application specific components. Applications should add children to the contentPane, set its layout manager, and so on.

The contentPane may not be null.

Generally implemented with getRootPane().setContentPane(contentPane);

Parameters
contentPane:Container

the Container to use for the contents of this JRootPane

Exceptions
IllegalComponentStateException:
(a runtime exception) if the content pane parameter is null
See Also
JRootPane#getContentPane, getContentPane
setGlassPaneback to summary
public void setGlassPane(Component glassPane)

The glassPane is always the first child of the rootPane and the rootPanes layout manager ensures that it's always as big as the rootPane. By default it's transparent and not visible. It can be used to temporarily grab all keyboard and mouse input by adding listeners and then making it visible. by default it's not visible.

The glassPane may not be null.

Generally implemented with getRootPane().setGlassPane(glassPane);

Parameters
glassPane:Component

the glass pane

See Also
getGlassPane, JRootPane#setGlassPane
setLayeredPaneback to summary
public void setLayeredPane(JLayeredPane layeredPane)

A Container that manages the contentPane and in some cases a menu bar. The layeredPane can be used by descendants that want to add a child to the RootPaneContainer that isn't layout managed. For example an internal dialog or a drag and drop effect component.

The layeredPane may not be null.

Generally implemented with

   getRootPane().setLayeredPane(layeredPane);
Parameters
layeredPane:JLayeredPane

the layered pane

Exceptions
IllegalComponentStateException:
(a runtime exception) if the layered pane parameter is null
See Also
getLayeredPane, JRootPane#getLayeredPane