Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.eviware.soapui.support.swing
Class JXButtonPanel

    java.lang.Object
      java.awt.Component
          java.awt.Container
              javax.swing.JComponent
                  javax.swing.JPanel
                      com.eviware.soapui.support.swing.JXButtonPanel

All Implemented Interfaces:
  java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible

Direct Known Subclasses:
  JButtonBar

    public class JXButtonPanel

extends javax.swing.JPanel

This is a JPanel subclass which provides a special functionality for its children buttons components. It makes it possible to transfer focus from button to button with help of arrows keys.

The following example shows how to enable cyclic focus transfer

     import org.jdesktop.swinghelper.buttonpanel.*;
     import javax.swing.*;

     public class SimpleDemo {
         public static void main(String[] args) throws Exception {
             SwingUtilities.invokeLater(new Runnable() {
                 public void run() {
                     final JFrame frame = new JFrame();
                     frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

                     JXButtonPanel panel = new JXButtonPanel();
                     panel.setCyclic(true);

                     panel.add(new JButton("One"));
                     panel.add(new JButton("Two"));
                     panel.add(new JButton("Three"));

                     frame.add(panel);
                     frame.setSize(200, 200);
                     frame.setLocationRelativeTo(null);
                     frame.setVisible(true);
                 }
             });
         }
     }

If your buttons inside JXButtonPanel are added to one ButtonGroup arrow keys will transfer selection between them as well as they do it for focus

Note: you can control this behaviour with setGroupSelectionFollowFocus(boolean)

     import org.jdesktop.swinghelper.buttonpanel.*;
     import javax.swing.*;

     public class RadioButtonDemo {
         public static void main(String[] args) throws Exception {
             SwingUtilities.invokeLater(new Runnable() {
                 public void run() {
                     final JFrame frame = new JFrame();
                     frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

                     JXButtonPanel panel = new JXButtonPanel();
                     ButtonGroup group = new ButtonGroup();

                     JRadioButton rb1 = new JRadioButton("One");
                     panel.add(rb1);
                     group.add(rb1);
                     JRadioButton rb2 = new JRadioButton("Two");
                     panel.add(rb2);
                     group.add(rb2);
                     JRadioButton rb3 = new JRadioButton("Three");
                     panel.add(rb3);
                     group.add(rb3);

                     rb1.setSelected(true);
                     frame.add(panel);

                     frame.setSize(200, 200);
                     frame.setLocationRelativeTo(null);
                     frame.setVisible(true);
                 }
             });
         }
     }

Author:
  Alexander Potochkin https://swinghelper.dev.java.net/ http://weblogs.java.net/blog/alexfromsun/
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.BltBufferStrategy, java.awt.Component.FlipBufferStrategy`

Field Summary

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
`JXButtonPanel()`
`JXButtonPanel(boolean isDoubleBuffered)`
`JXButtonPanel(java.awt.LayoutManager layout)`
`JXButtonPanel(java.awt.LayoutManager layout, boolean isDoubleBuffered)`

Method Summary
`boolean` | `isCyclic()` Returns whether arrow keys should support cyclic focus traversal ordering for for this JXButtonPanel.
`boolean` | `isGroupSelectionFollowFocus()` Returns whether arrow keys should transfer button's selection as well as focus for this JXButtonPanel.
`void` | `setCyclic(boolean isCyclic)` Sets whether arrow keys should support cyclic focus traversal ordering for this JXButtonPanel.
`void` | `setGroupSelectionFollowFocus(boolean groupSelectionFollowFocus)` Sets whether arrow keys should transfer button's selection as well as focus for this JXButtonPanel.

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, 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, getWidth, getVisibleRect, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, 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`

Constructor Detail

### JXButtonPanel

    public JXButtonPanel()

### JXButtonPanel

    public JXButtonPanel(java.awt.LayoutManager layout)

### JXButtonPanel

    public JXButtonPanel(boolean isDoubleBuffered)

### JXButtonPanel

    public JXButtonPanel(java.awt.LayoutManager layout,
                         boolean isDoubleBuffered)

Method Detail

### isCyclic

    public boolean isCyclic()

  Returns whether arrow keys should support cyclic focus traversal ordering for for this JXButtonPanel.

### setCyclic

    public void setCyclic(boolean isCyclic)

  Sets whether arrow keys should support cyclic focus traversal ordering for this JXButtonPanel.

### isGroupSelectionFollowFocus

    public boolean isGroupSelectionFollowFocus()

  Returns whether arrow keys should transfer button's selection as well as focus for this JXButtonPanel.

  Note: this property affects buttons which are added to a ButtonGroup

### setGroupSelectionFollowFocus

    public void setGroupSelectionFollowFocus(boolean groupSelectionFollowFocus)

  Sets whether arrow keys should transfer button's selection as well as focus for this JXButtonPanel.

  Note: this property affects buttons which are added to a ButtonGroup

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2005-2007 eviware.com. All Rights Reserved.