com.alee.extended.panel
Class GroupPanel

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JPanel
                  extended by com.alee.laf.panel.WebPanel
                      extended by com.alee.extended.panel.GroupPanel
All Implemented Interfaces:
PartialDecoration, LanguageContainerMethods, ShapeProvider, Styleable, SizeMethods<WebPanel>, SwingMethods, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible

public class GroupPanel
extends WebPanel

This panel allows you to quickly place a small group of components into a row or a column. You can specify grouping type, orientation and gap between components.

If specified grouping type is not "none" then components will be placed according to that grouping type. Otherwise whether component should fill all the space left or not is determined by its FILL_CELL client property.

Orientation determines whether components should be placed horizontally or vertically.

Gap determines the spacing between the components in pixels.

Author:
Mikle Garin
See Also:
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
 
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
static java.lang.String FILL_CELL
          Key for boolean value that is used to determine when component should fill all the space left.
 
Fields inherited from class javax.swing.JComponent
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
GroupPanel(boolean horizontal, java.awt.Component... components)
          Constructor that places components horizontally or vertically in a single row with a zero gap.
GroupPanel(java.awt.Component... components)
          Constructor that places components horizontally in a single row with a zero gap.
GroupPanel(GroupingType groupingType, boolean horizontal, java.awt.Component... components)
          Constructor that places components horizontally or vertically in a single row with a zero gap using special grouping type.
GroupPanel(GroupingType groupingType, java.awt.Component... components)
          Constructor that places components horizontally in a single row with a zero gap using special grouping type.
GroupPanel(GroupingType groupingType, int gap, boolean horizontal, java.awt.Component... components)
          Constructor that places components horizontally or vertically in a single row with a specified gap using special grouping type.
GroupPanel(GroupingType groupingType, int gap, java.awt.Component... components)
          Constructor that places components horizontally in a single row with a specified gap using special grouping type.
GroupPanel(int gap, boolean horizontal, java.awt.Component... components)
          Constructor that places components horizontally or vertically in a single row with a specified gap.
GroupPanel(int gap, java.awt.Component... components)
          Constructor that places components horizontally in a single row with a specified gap.
 
Method Summary
 GroupLayout getActualLayout()
          Returns actual layout for this GroupPanel.
 int getGap()
          Returns gap in pixels between the components.
 int getOrientation()
          Returns layout orientation.
static boolean isFill(java.awt.Component component)
          Returns whether this component should fill all the space left
 void setGap(int gap)
          Sets the gap between components in pixels.
 void setOrientation(int orientation)
          Sets the layout orientation to either SwingConstants.HORIZONTAL or SwingConstants.VERTICAL.
 
Methods inherited from class com.alee.laf.panel.WebPanel
add, add, add, add, add, add, getBorderColor, getBorderStroke, getDisabledBorderColor, getFirstComponent, getLanguageContainerKey, getLastComponent, getMargin, getMinimumHeight, getMinimumWidth, getPainter, getPreferredHeight, getPreferredSize, getPreferredWidth, getRound, getShadeTransparency, getShadeWidth, getStyleId, getWebUI, isPaintBackground, isPaintBottom, isPaintBottomLine, isPaintFocus, isPaintLeft, isPaintLeftLine, isPaintRight, isPaintRightLine, isPaintTop, isPaintTopLine, isUndecorated, isWebColoredBackground, provideShape, removeLanguageContainerKey, setBorderColor, setBorderStroke, setDisabledBorderColor, setLanguageContainerKey, setMargin, setMargin, setMargin, setMinimumHeight, setMinimumWidth, setPaintBackground, setPaintBottom, setPaintBottomLine, setPainter, setPaintFocus, setPaintLeft, setPaintLeftLine, setPaintRight, setPaintRightLine, setPaintSideLines, setPaintSides, setPaintTop, setPaintTopLine, setPreferredHeight, setPreferredWidth, setRound, setShadeTransparency, setShadeWidth, setStyleId, setUndecorated, setWebColoredBackground, updateUI
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI
 
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, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, 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, transferFocusBackward, 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, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, 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, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

FILL_CELL

public static final java.lang.String FILL_CELL
Key for boolean value that is used to determine when component should fill all the space left.

See Also:
Constant Field Values
Constructor Detail

GroupPanel

public GroupPanel(java.awt.Component... components)
Constructor that places components horizontally in a single row with a zero gap.

Parameters:
components - components to place

GroupPanel

public GroupPanel(boolean horizontal,
                  java.awt.Component... components)
Constructor that places components horizontally or vertically in a single row with a zero gap.

Parameters:
horizontal - layout orientation
components - components to place

GroupPanel

public GroupPanel(int gap,
                  java.awt.Component... components)
Constructor that places components horizontally in a single row with a specified gap.

Parameters:
gap - gap between components
components - components to place

GroupPanel

public GroupPanel(int gap,
                  boolean horizontal,
                  java.awt.Component... components)
Constructor that places components horizontally or vertically in a single row with a specified gap.

Parameters:
gap - gap between components
horizontal - layout orientation
components - components to place

GroupPanel

public GroupPanel(GroupingType groupingType,
                  java.awt.Component... components)
Constructor that places components horizontally in a single row with a zero gap using special grouping type.

Parameters:
groupingType - special grouping type
components - components to place

GroupPanel

public GroupPanel(GroupingType groupingType,
                  boolean horizontal,
                  java.awt.Component... components)
Constructor that places components horizontally or vertically in a single row with a zero gap using special grouping type.

Parameters:
groupingType - special grouping type
horizontal - layout orientation
components - components to place

GroupPanel

public GroupPanel(GroupingType groupingType,
                  int gap,
                  java.awt.Component... components)
Constructor that places components horizontally in a single row with a specified gap using special grouping type.

Parameters:
groupingType - special grouping type
gap - gap between components
components - components to place

GroupPanel

public GroupPanel(GroupingType groupingType,
                  int gap,
                  boolean horizontal,
                  java.awt.Component... components)
Constructor that places components horizontally or vertically in a single row with a specified gap using special grouping type.

Parameters:
groupingType - special grouping type
gap - gap between components
horizontal - layout orientation
components - components to place
Method Detail

getActualLayout

public GroupLayout getActualLayout()
Returns actual layout for this GroupPanel.

Returns:
GroupLayout

getOrientation

public int getOrientation()
Returns layout orientation.

Returns:
layout orientation

setOrientation

public void setOrientation(int orientation)
Sets the layout orientation to either SwingConstants.HORIZONTAL or SwingConstants.VERTICAL.

Parameters:
orientation - new layout orientation

getGap

public int getGap()
Returns gap in pixels between the components.

Returns:
gap between components

setGap

public void setGap(int gap)
Sets the gap between components in pixels.

Parameters:
gap - gap between components

isFill

public static boolean isFill(java.awt.Component component)
Returns whether this component should fill all the space left

Parameters:
component - component to analyze
Returns:
true if the component should fill all the space left, false otherwise