Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| JavaTM 2 Platform Standard Ed. 5.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## javax.swing
Interface RootPaneContainer

All Known Implementing Classes:
  JApplet, JDialog, JFrame, JInternalFrame, JWindow

    public interface RootPaneContainer

This interface is implemented by components that have a single JRootPane child: JDialog, JFrame, JWindow, JApplet, 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)`.

For conveniance `JFrame`, `JDialog`, `JWindow`, `JApplet` and `JInternalFrame`, by default, forward, by default, all calls to the `add`, `remove` and `setLayout` methods, to the `contentPane`. This means you can call:

     rootPaneContainer.add(component);

instead of:

     rootPaneContainer.getContentPane().add(component);

The behavior of the `add` and `setLayout` methods for `JFrame`, `JDialog`, `JWindow`, `JApplet` 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.

See Also:
  `JRootPane`, `JFrame`, `JDialog`, `JWindow`, `JApplet`, `JInternalFrame`

Method Summary
`Container` | `getContentPane()` Returns the contentPane.
`Component` | `getGlassPane()` Returns the glassPane.
`JLayeredPane` | `getLayeredPane()` Returns the layeredPane.
`JRootPane` | `getRootPane()` Return this component's single JRootPane child.
`void` | `setContentPane(Container contentPane)` The "contentPane" is the primary container for application specific components.
`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.
`void` | `setLayeredPane(JLayeredPane layeredPane)` A Container that manages the contentPane and in some cases a menu bar.

Method Detail

### getRootPane

    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:
    this components single JRootPane child.
  See Also:
    `JRootPane`

### setContentPane

    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 my not be null.

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

  Parameters:
    `contentPane` - the Container to use for the contents of this JRootPane
  Throws:
    `IllegalComponentStateException` - (a runtime exception) if the content pane parameter is null
  See Also:
    `JRootPane.getContentPane()`, `getContentPane()`

### getContentPane

    Container getContentPane()

  Returns the contentPane.

  Returns:
    the value of the contentPane property.
  See Also:
    `setContentPane(java.awt.Container)`

### setLayeredPane

    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);

  Throws:
    `IllegalComponentStateException` - (a runtime exception) if the layered pane parameter is null
  See Also:
    `getLayeredPane()`, `JRootPane.getLayeredPane()`

### getLayeredPane

    JLayeredPane getLayeredPane()

  Returns the layeredPane.

  Returns:
    the value of the layeredPane property.
  See Also:
    `setLayeredPane(javax.swing.JLayeredPane)`

### setGlassPane

    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);`

  See Also:
    `getGlassPane()`, `JRootPane.setGlassPane(java.awt.Component)`

### getGlassPane

    Component getGlassPane()

  Returns the glassPane.

  Returns:
    the value of the glassPane property.
  See Also:
    `setGlassPane(java.awt.Component)`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| JavaTM 2 Platform Standard Ed. 5.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Submit a bug or feature
For further API reference and developer documentation, see Java 2 SDK SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.