Package com.jgoodies.forms.debug
Class FormDebugPanel
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JPanel
-
- com.jgoodies.forms.debug.FormDebugPanel
-
- All Implemented Interfaces:
java.awt.image.ImageObserver
,java.awt.MenuContainer
,java.io.Serializable
,javax.accessibility.Accessible
public class FormDebugPanel extends javax.swing.JPanel
A panel that paints grid bounds if and only if the panel's layout manager is aFormLayout
. You can tweak the debug paint process by setting a custom grid color, painting optional diagonals and painting the grid in the background or foreground.This class is not intended to be extended. However, it is not marked as
final
to allow users to subclass it for debugging purposes. In general it is recommended to use JPanel instances, not extend them. You can see this implementation style in the Forms tutorial classes. Rarely there's a need to extend JPanel; for example if you provide a custom behavior for#paintComponent
or#updateUI
.- Version:
- $Revision: 1.10 $
- See Also:
FormDebugUtils
, Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class javax.swing.JPanel
javax.swing.JPanel.AccessibleJPanel
-
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
-
-
Field Summary
Fields Modifier and Type Field Description private static java.awt.Color
DEFAULT_GRID_COLOR
The default color used to paint the form's debug grid.private java.awt.Color
gridColor
Holds the color used to paint the debug grid.private boolean
paintDiagonals
Specifies whether the container's diagonals should be painted.private boolean
paintInBackground
Specifies whether the grid shall be painted in the background.private boolean
paintRows
Specifies whether all rows shall be painted.static boolean
paintRowsDefault
-
Fields inherited from class javax.swing.JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
-
-
Constructor Summary
Constructors Constructor Description FormDebugPanel()
Constructs a FormDebugPanel with all options turned off.FormDebugPanel(boolean paintInBackground, boolean paintDiagonals)
Constructs a FormDebugPanel on the given FormLayout using the specified settings that are otherwise turned off.FormDebugPanel(FormLayout layout)
Constructs a FormDebugPanel on the given FormLayout instance that paints the grid in the foreground and paints no diagonals.FormDebugPanel(FormLayout layout, boolean paintInBackground, boolean paintDiagonals)
Constructs a FormDebugPanel on the given FormLayout using the specified settings that are otherwise turned off.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
paint(java.awt.Graphics g)
Paints the panel.protected void
paintComponent(java.awt.Graphics g)
Paints the component and - if background painting is enabled - the grid.private void
paintGrid(java.awt.Graphics g)
Paints the form's grid lines and diagonals.void
setGridColor(java.awt.Color color)
Sets the debug grid's color.void
setPaintDiagonals(boolean b)
Enables or disables to paint the panel's diagonals.void
setPaintInBackground(boolean b)
Specifies to paint in background or foreground.void
setPaintRows(boolean b)
Enables or disables painting of rows.-
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
-
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paintBorder, paintChildren, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
-
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree
-
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
-
-
-
Field Detail
-
paintRowsDefault
public static boolean paintRowsDefault
-
DEFAULT_GRID_COLOR
private static final java.awt.Color DEFAULT_GRID_COLOR
The default color used to paint the form's debug grid.
-
paintInBackground
private boolean paintInBackground
Specifies whether the grid shall be painted in the background. Is off by default and so the grid is painted in the foreground.
-
paintDiagonals
private boolean paintDiagonals
Specifies whether the container's diagonals should be painted.
-
paintRows
private boolean paintRows
Specifies whether all rows shall be painted. Enabled by default.
-
gridColor
private java.awt.Color gridColor
Holds the color used to paint the debug grid.
-
-
Constructor Detail
-
FormDebugPanel
public FormDebugPanel()
Constructs a FormDebugPanel with all options turned off.
-
FormDebugPanel
public FormDebugPanel(FormLayout layout)
Constructs a FormDebugPanel on the given FormLayout instance that paints the grid in the foreground and paints no diagonals.- Parameters:
layout
- the panel's FormLayout instance
-
FormDebugPanel
public FormDebugPanel(boolean paintInBackground, boolean paintDiagonals)
Constructs a FormDebugPanel on the given FormLayout using the specified settings that are otherwise turned off.- Parameters:
paintInBackground
- true to paint grid lines in the background, false to paint the grid in the foregroundpaintDiagonals
- true to paint diagonals, false to not paint them
-
FormDebugPanel
public FormDebugPanel(FormLayout layout, boolean paintInBackground, boolean paintDiagonals)
Constructs a FormDebugPanel on the given FormLayout using the specified settings that are otherwise turned off.- Parameters:
layout
- the panel's FormLayout instancepaintInBackground
- true to paint grid lines in the background, false to paint the grid in the foregroundpaintDiagonals
- true to paint diagonals, false to not paint them
-
-
Method Detail
-
setPaintInBackground
public void setPaintInBackground(boolean b)
Specifies to paint in background or foreground.- Parameters:
b
- true to paint in the background, false for the foreground
-
setPaintDiagonals
public void setPaintDiagonals(boolean b)
Enables or disables to paint the panel's diagonals.- Parameters:
b
- true to paint diagonals, false to not paint them
-
setPaintRows
public void setPaintRows(boolean b)
Enables or disables painting of rows. Enabled by default. Note that the top and bottom are always painted.- Parameters:
b
- true to paint all rows, false to paint only the top and bottom
-
setGridColor
public void setGridColor(java.awt.Color color)
Sets the debug grid's color.- Parameters:
color
- the color used to paint the debug grid
-
paintComponent
protected void paintComponent(java.awt.Graphics g)
Paints the component and - if background painting is enabled - the grid. If foreground painting is enabled, the grid will be painted in#paint
.- Overrides:
paintComponent
in classjavax.swing.JComponent
- Parameters:
g
- the Graphics object to paint on- See Also:
paint(Graphics)
-
paint
public void paint(java.awt.Graphics g)
Paints the panel. If the panel's layout manager is a FormLayout and foreground painting is enabled, it paints the form's grid lines. If the grid shall be painted in the background, the grid will be painted in#paintComponent
.- Overrides:
paint
in classjavax.swing.JComponent
- Parameters:
g
- the Graphics object to paint on- See Also:
paintComponent(Graphics)
-
paintGrid
private void paintGrid(java.awt.Graphics g)
Paints the form's grid lines and diagonals.- Parameters:
g
- the Graphics object used to paint
-
-