Package com.formdev.flatlaf.extras
Class FlatInspector
- java.lang.Object
-
- com.formdev.flatlaf.extras.FlatInspector
-
public class FlatInspector extends java.lang.Object
A simple UI inspector that shows information about UI component at mouse location in a tooltip.To use it in an application install it with:
FlatInspector.install( "ctrl shift alt X" );
This can be done e.g. in the main() method and allows enabling (and disabling) the UI inspector for the active window with the given keystroke.When the UI inspector is active some additional keys are available:
- press
Esc
key to disable UI inspector - press
Ctrl
key to increase inspection level, which shows information about parent of UI component at mouse location - press
Shift
key to decrease inspection level
- press
-
-
Field Summary
Fields Modifier and Type Field Description private boolean
enabled
private static java.lang.Integer
HIGHLIGHT_LAYER
private javax.swing.JComponent
highlightFigure
private int
inspectParentLevel
private static int
KEY_MODIFIERS_MASK
private java.awt.event.AWTEventListener
keyListener
private java.awt.Component
lastComponent
private long
lastWhen
private int
lastX
private int
lastY
private java.awt.event.MouseMotionListener
mouseMotionListener
private java.lang.Object
oldGlassPaneFullHeight
private javax.swing.Popup
popup
private java.beans.PropertyChangeSupport
propertyChangeSupport
private javax.swing.JRootPane
rootPane
private boolean
showClassHierarchy
private boolean
wasModifierKeyPressed
private java.awt.Window
window
private java.awt.event.WindowListener
windowListener
-
Constructor Summary
Constructors Constructor Description FlatInspector(javax.swing.JRootPane rootPane)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addPropertyChangeListener(java.beans.PropertyChangeListener l)
private static void
appendRow(java.lang.StringBuilder buf, java.lang.String key, java.lang.String value)
private static java.lang.String
buildToolTipText(java.awt.Component c, int parentLevel, boolean classHierarchy)
private javax.swing.JComponent
createHighlightFigure()
private java.awt.Component
getDeepestComponentAt(java.awt.Component parent, int x, int y)
private void
hidePopup()
private void
highlight(java.awt.Component c)
private int
inspect(int x, int y)
static void
install(java.lang.String activationKeys)
Installs a key listener into the application that allows enabling and disabling the UI inspector with the given keystroke (e.g.boolean
isEnabled()
void
removePropertyChangeListener(java.beans.PropertyChangeListener l)
void
setEnabled(boolean enabled)
private void
showToolTip(java.awt.Component c, int x, int y, int parentLevel)
private static java.lang.String
toDimmedText(java.lang.String text)
private static java.lang.String
toString(java.awt.Color c)
private static java.lang.String
toString(java.awt.Font f)
private static java.lang.String
toString(java.awt.Insets insets)
private static java.lang.String
toString(java.lang.Class<?> cls, boolean classHierarchy)
private static java.lang.String
toString(javax.swing.border.Border b, boolean classHierarchy)
void
update()
-
-
-
Field Detail
-
HIGHLIGHT_LAYER
private static final java.lang.Integer HIGHLIGHT_LAYER
-
KEY_MODIFIERS_MASK
private static final int KEY_MODIFIERS_MASK
- See Also:
- Constant Field Values
-
rootPane
private final javax.swing.JRootPane rootPane
-
mouseMotionListener
private final java.awt.event.MouseMotionListener mouseMotionListener
-
keyListener
private final java.awt.event.AWTEventListener keyListener
-
propertyChangeSupport
private final java.beans.PropertyChangeSupport propertyChangeSupport
-
windowListener
private final java.awt.event.WindowListener windowListener
-
window
private java.awt.Window window
-
enabled
private boolean enabled
-
oldGlassPaneFullHeight
private java.lang.Object oldGlassPaneFullHeight
-
lastComponent
private java.awt.Component lastComponent
-
lastX
private int lastX
-
lastY
private int lastY
-
inspectParentLevel
private int inspectParentLevel
-
wasModifierKeyPressed
private boolean wasModifierKeyPressed
-
showClassHierarchy
private boolean showClassHierarchy
-
lastWhen
private long lastWhen
-
highlightFigure
private javax.swing.JComponent highlightFigure
-
popup
private javax.swing.Popup popup
-
-
Method Detail
-
install
public static void install(java.lang.String activationKeys)
Installs a key listener into the application that allows enabling and disabling the UI inspector with the given keystroke (e.g. "ctrl shift alt X").- Parameters:
activationKeys
- a keystroke (e.g. "ctrl shift alt X")
-
addPropertyChangeListener
public void addPropertyChangeListener(java.beans.PropertyChangeListener l)
-
removePropertyChangeListener
public void removePropertyChangeListener(java.beans.PropertyChangeListener l)
-
isEnabled
public boolean isEnabled()
-
setEnabled
public void setEnabled(boolean enabled)
-
hidePopup
private void hidePopup()
-
update
public void update()
-
inspect
private int inspect(int x, int y)
-
getDeepestComponentAt
private java.awt.Component getDeepestComponentAt(java.awt.Component parent, int x, int y)
-
highlight
private void highlight(java.awt.Component c)
-
createHighlightFigure
private javax.swing.JComponent createHighlightFigure()
-
showToolTip
private void showToolTip(java.awt.Component c, int x, int y, int parentLevel)
-
buildToolTipText
private static java.lang.String buildToolTipText(java.awt.Component c, int parentLevel, boolean classHierarchy)
-
appendRow
private static void appendRow(java.lang.StringBuilder buf, java.lang.String key, java.lang.String value)
-
toString
private static java.lang.String toString(java.lang.Class<?> cls, boolean classHierarchy)
-
toString
private static java.lang.String toString(java.awt.Insets insets)
-
toString
private static java.lang.String toString(java.awt.Color c)
-
toString
private static java.lang.String toString(java.awt.Font f)
-
toString
private static java.lang.String toString(javax.swing.border.Border b, boolean classHierarchy)
-
toDimmedText
private static java.lang.String toDimmedText(java.lang.String text)
-
-