Class 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
    • Field Detail

      • HIGHLIGHT_LAYER

        private static final java.lang.Integer HIGHLIGHT_LAYER
      • 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
    • Constructor Detail

      • FlatInspector

        public FlatInspector​(javax.swing.JRootPane rootPane)
    • 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)