Package com.formdev.flatlaf.extras
Class FlatInspector
- java.lang.Object
-
- com.formdev.flatlaf.extras.FlatInspector
-
public class FlatInspector extends java.lang.ObjectA 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
Esckey to disable UI inspector - press
Ctrlkey to increase inspection level, which shows information about parent of UI component at mouse location - press
Shiftkey to decrease inspection level
- press
-
-
Field Summary
Fields Modifier and Type Field Description private booleanenabledprivate static java.lang.IntegerHIGHLIGHT_LAYERprivate javax.swing.JComponenthighlightFigureprivate intinspectParentLevelprivate static intKEY_MODIFIERS_MASKprivate java.awt.event.AWTEventListenerkeyListenerprivate java.awt.ComponentlastComponentprivate longlastWhenprivate intlastXprivate intlastYprivate java.awt.event.MouseMotionListenermouseMotionListenerprivate java.lang.ObjectoldGlassPaneFullHeightprivate javax.swing.Popuppopupprivate java.beans.PropertyChangeSupportpropertyChangeSupportprivate javax.swing.JRootPanerootPaneprivate booleanshowClassHierarchyprivate booleanwasModifierKeyPressedprivate java.awt.Windowwindowprivate java.awt.event.WindowListenerwindowListener
-
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 voidaddPropertyChangeListener(java.beans.PropertyChangeListener l)private static voidappendRow(java.lang.StringBuilder buf, java.lang.String key, java.lang.String value)private static java.lang.StringbuildToolTipText(java.awt.Component c, int parentLevel, boolean classHierarchy)private javax.swing.JComponentcreateHighlightFigure()private java.awt.ComponentgetDeepestComponentAt(java.awt.Component parent, int x, int y)private voidhidePopup()private voidhighlight(java.awt.Component c)private intinspect(int x, int y)static voidinstall(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.booleanisEnabled()voidremovePropertyChangeListener(java.beans.PropertyChangeListener l)voidsetEnabled(boolean enabled)private voidshowToolTip(java.awt.Component c, int x, int y, int parentLevel)private static java.lang.StringtoDimmedText(java.lang.String text)private static java.lang.StringtoString(java.awt.Color c)private static java.lang.StringtoString(java.awt.Font f)private static java.lang.StringtoString(java.awt.Insets insets)private static java.lang.StringtoString(java.lang.Class<?> cls, boolean classHierarchy)private static java.lang.StringtoString(javax.swing.border.Border b, boolean classHierarchy)voidupdate()
-
-
-
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"), ornullto use "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)
-
-