public class SubstanceRootPaneUI
extends javax.swing.plaf.basic.BasicRootPaneUI
Modifier and Type | Class and Description |
---|---|
protected class |
SubstanceRootPaneUI.SubstanceRootLayout
A custom layout manager that is responsible for the layout of
layeredPane, glassPane, menuBar and titlePane, if one has been installed.
|
Modifier and Type | Field and Description |
---|---|
protected java.awt.GraphicsConfiguration |
currentRootPaneGC
The graphics configuration that contains the top-left corner of the
window (fix for defect 213).
|
protected javax.swing.JRootPane |
root
JRootPane providing the look and feel for. |
protected java.awt.Window |
substanceCurrentWindow
The current window.
|
protected java.awt.event.HierarchyListener |
substanceHierarchyListener
Hierarchy listener to keep track of the associated top-level window.
|
protected java.beans.PropertyChangeListener |
substancePropertyChangeListener |
protected java.awt.event.ComponentListener |
substanceWindowComponentListener
Component listener to keep track of the primary graphics configuration
(for recomputing the maximized bounds) - fix for defect 213.
|
protected java.awt.event.WindowListener |
substanceWindowListener
Window listener that stops all Substance thread when the last frame is
disposed.
|
static java.awt.event.ComponentListener |
WINDOW_ROUNDER |
Constructor and Description |
---|
SubstanceRootPaneUI() |
Modifier and Type | Method and Description |
---|---|
protected java.awt.LayoutManager |
createLayoutManager()
Returns a
LayoutManager that will be set on the
JRootPane . |
protected javax.swing.JComponent |
createTitlePane(javax.swing.JRootPane root)
Returns the
JComponent to render the window decoration
style. |
static javax.swing.plaf.ComponentUI |
createUI(javax.swing.JComponent comp)
Creates a UI for a
JRootPane . |
protected javax.swing.JRootPane |
getRootPane()
Returns the
JRootPane we're providing the look and feel for. |
javax.swing.JComponent |
getTitlePane()
Returns the
JComponent rendering the title pane. |
static boolean |
hasCustomSkinOnAtLeastOneRootPane() |
void |
installBorder(javax.swing.JRootPane root)
Installs the appropriate
Border onto the
JRootPane . |
protected void |
installDefaults(javax.swing.JRootPane c) |
protected void |
installListeners(javax.swing.JRootPane root) |
void |
installUI(javax.swing.JComponent c)
Invokes supers implementation of
installUI to install the
necessary state onto the passed in JRootPane to render the
metal look and feel implementation of RootPaneUI . |
void |
propertyChange(java.beans.PropertyChangeEvent e) |
void |
setMaximized()
Sets maximized bounds according to the display screen insets.
|
protected void |
uninstallListeners(javax.swing.JRootPane root) |
void |
uninstallUI(javax.swing.JComponent c)
Invokes supers implementation to uninstall any of its state.
|
void |
update(java.awt.Graphics g,
javax.swing.JComponent c) |
installComponents, installKeyboardActions, uninstallComponents, uninstallDefaults, uninstallKeyboardActions
protected javax.swing.JRootPane root
JRootPane
providing the look and feel for.protected java.awt.event.WindowListener substanceWindowListener
protected java.awt.Window substanceCurrentWindow
protected java.awt.event.HierarchyListener substanceHierarchyListener
protected java.awt.event.ComponentListener substanceWindowComponentListener
protected java.awt.GraphicsConfiguration currentRootPaneGC
protected java.beans.PropertyChangeListener substancePropertyChangeListener
public static java.awt.event.ComponentListener WINDOW_ROUNDER
public static javax.swing.plaf.ComponentUI createUI(javax.swing.JComponent comp)
JRootPane
.comp
- the JRootPane the RootPaneUI will be created forpublic void installUI(javax.swing.JComponent c)
installUI
to install the
necessary state onto the passed in JRootPane
to render the
metal look and feel implementation of RootPaneUI
. If the
windowDecorationStyle
property of the JRootPane
is other than JRootPane.NONE
, this will add a custom
Component
to render the widgets to JRootPane
,
as well as installing a custom Border
and
LayoutManager
on the JRootPane
.installUI
in class javax.swing.plaf.basic.BasicRootPaneUI
c
- the JRootPane to install state ontopublic void uninstallUI(javax.swing.JComponent c)
LayoutManager
of the JRootPane
.
If a Component
has been added to the JRootPane
to render the window decoration style, this method will remove it.
Similarly, this will revert the Border and LayoutManager of the
JRootPane
to what it was before installUI
was
invoked.uninstallUI
in class javax.swing.plaf.basic.BasicRootPaneUI
c
- the JRootPane to uninstall state frompublic void installBorder(javax.swing.JRootPane root)
Border
onto the
JRootPane
.root
- Root pane.protected void installDefaults(javax.swing.JRootPane c)
installDefaults
in class javax.swing.plaf.basic.BasicRootPaneUI
public void update(java.awt.Graphics g, javax.swing.JComponent c)
update
in class javax.swing.plaf.ComponentUI
protected void installListeners(javax.swing.JRootPane root)
installListeners
in class javax.swing.plaf.basic.BasicRootPaneUI
protected void uninstallListeners(javax.swing.JRootPane root)
uninstallListeners
in class javax.swing.plaf.basic.BasicRootPaneUI
protected javax.swing.JComponent createTitlePane(javax.swing.JRootPane root)
JComponent
to render the window decoration
style.root
- Root pane.protected java.awt.LayoutManager createLayoutManager()
LayoutManager
that will be set on the
JRootPane
.public void setMaximized()
public javax.swing.JComponent getTitlePane()
JComponent
rendering the title pane. If this
returns null, it implies there is no need to render window decorations.
This method is for internal use only.setTitlePane(javax.swing.JRootPane, javax.swing.JComponent)
protected javax.swing.JRootPane getRootPane()
JRootPane
we're providing the look and feel for.public void propertyChange(java.beans.PropertyChangeEvent e)
propertyChange
in interface java.beans.PropertyChangeListener
propertyChange
in class javax.swing.plaf.basic.BasicRootPaneUI
public static boolean hasCustomSkinOnAtLeastOneRootPane()