Extension SDK 10.1.2

oracle.ide.controls
Class JToolButton

java.lang.Object
  extended byjava.awt.Component
      extended byjava.awt.Container
          extended byjavax.swing.JComponent
              extended byjavax.swing.AbstractButton
                  extended byjavax.swing.JButton
                      extended byoracle.ide.controls.JToolButton
All Implemented Interfaces:
javax.accessibility.Accessible, java.awt.image.ImageObserver, java.awt.ItemSelectable, java.awt.MenuContainer, java.io.Serializable, javax.swing.SwingConstants

public class JToolButton
extends javax.swing.JButton

This class is a simple implementation of a tool button, which is a small button that contains only a single 16x16 or 18x18 Icon image and no text. By default, the JToolButton has a fixed size of 28x25, which provides a padding around the image that makes the JToolButton appear to have a uniform padding around the edge of a typical icon.

By default, the JToolButton always renders its borders. However, one of the constructor takes an extra flag that indicates whether or not the JToolButton has "rollover borders" -- that is, borders that are only rendered when the mouse pointer is actually within the boundaries of the JToolButton.

The border used by a JToolButton is a thinner border than what is used by JButton, and the appearance and behavior of the border does not track the look-and-feel. See the ThinBevel class for details.

See Also:
Serialized Form

Nested Class Summary
protected  class JToolButton.L
          This ChangeListener is responsible for implementing the "rollover border" support and managing the painting of the thin bevel border for the button when arming and pressing the button.
 
Nested classes inherited from class javax.swing.JButton
javax.swing.JButton.AccessibleJButton
 
Nested classes inherited from class javax.swing.AbstractButton
javax.swing.AbstractButton.AccessibleAbstractButton, javax.swing.AbstractButton.ButtonChangeListener
 
Nested classes inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Nested classes inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
static java.awt.Dimension DEFAULT_SIZE
           
 
Fields inherited from class javax.swing.AbstractButton
actionListener, BORDER_PAINTED_CHANGED_PROPERTY, changeEvent, changeListener, CONTENT_AREA_FILLED_CHANGED_PROPERTY, DISABLED_ICON_CHANGED_PROPERTY, DISABLED_SELECTED_ICON_CHANGED_PROPERTY, FOCUS_PAINTED_CHANGED_PROPERTY, HORIZONTAL_ALIGNMENT_CHANGED_PROPERTY, HORIZONTAL_TEXT_POSITION_CHANGED_PROPERTY, ICON_CHANGED_PROPERTY, itemListener, MARGIN_CHANGED_PROPERTY, MNEMONIC_CHANGED_PROPERTY, model, MODEL_CHANGED_PROPERTY, PRESSED_ICON_CHANGED_PROPERTY, ROLLOVER_ENABLED_CHANGED_PROPERTY, ROLLOVER_ICON_CHANGED_PROPERTY, ROLLOVER_SELECTED_ICON_CHANGED_PROPERTY, SELECTED_ICON_CHANGED_PROPERTY, TEXT_CHANGED_PROPERTY, VERTICAL_ALIGNMENT_CHANGED_PROPERTY, VERTICAL_TEXT_POSITION_CHANGED_PROPERTY
 
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 javax.swing.SwingConstants
BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
JToolButton()
          Creates a new JToolButton that has no icon and whose borders are always rendered.
JToolButton(javax.swing.Icon icon)
          Creates a new JToolButton that displays the specified Icon and whose borders are always rendered.
JToolButton(javax.swing.Icon icon, boolean hasRolloverBorder)
          Creates a new JToolButton that displays the specified Icon and displays its borders according to the hasRolloverBorder parameter.
JToolButton(javax.swing.Icon icon, boolean hasRolloverBorder, java.awt.Dimension dim)
          Creates a new JToolButton that displays the specified Icon and displays its borders according to the hasRolloverBorder parameter.
 
Method Summary
protected  javax.swing.event.ChangeListener getChangeListener(boolean hasRolloverBorder)
          Returns a new ChangeListener instance that will be used to listen for ChangeEvents coming from the JToolButton's ButtonModel.
 javax.swing.border.Border getLoweredBorder()
          Returns the Border object that will be used to render the button border when the button is pressed.
 javax.swing.border.Border getRaisedBorder()
          Returns the Border object that will be used to render the button border when the button is not being pressed.
 void setFixedSize(java.awt.Dimension dim)
          This method sets the maximum, minimum, and preferred sizes to be the specified Dimension, essentially setting a fixed size for the JToolButton.
 void setLoweredBorder(javax.swing.border.Border loweredBorder)
          Sets the Border object that will be used to render the button border when the button is pressed.
 void setRaisedBorder(javax.swing.border.Border raisedBorder)
          Sets the Border object that will be used to render the button border when the button is not being pressed.
 
Methods inherited from class javax.swing.JButton
configurePropertiesFromAction, getAccessibleContext, getUIClassID, isDefaultButton, isDefaultCapable, paramString, removeNotify, setDefaultCapable, updateUI
 
Methods inherited from class javax.swing.AbstractButton
addActionListener, addChangeListener, addItemListener, checkHorizontalKey, checkVerticalKey, createActionListener, createActionPropertyChangeListener, createChangeListener, createItemListener, doClick, doClick, fireActionPerformed, fireItemStateChanged, fireStateChanged, getAction, getActionCommand, getActionListeners, getChangeListeners, getDisabledIcon, getDisabledSelectedIcon, getDisplayedMnemonicIndex, getHorizontalAlignment, getHorizontalTextPosition, getIcon, getIconTextGap, getItemListeners, getLabel, getMargin, getMnemonic, getModel, getMultiClickThreshhold, getPressedIcon, getRolloverIcon, getRolloverSelectedIcon, getSelectedIcon, getSelectedObjects, getText, getUI, getVerticalAlignment, getVerticalTextPosition, imageUpdate, init, isBorderPainted, isContentAreaFilled, isFocusPainted, isRolloverEnabled, isSelected, paintBorder, removeActionListener, removeChangeListener, removeItemListener, setAction, setActionCommand, setBorderPainted, setContentAreaFilled, setDisabledIcon, setDisabledSelectedIcon, setDisplayedMnemonicIndex, setEnabled, setFocusPainted, setHorizontalAlignment, setHorizontalTextPosition, setIcon, setIconTextGap, setLabel, setMargin, setMnemonic, setMnemonic, setModel, setMultiClickThreshhold, setPressedIcon, setRolloverEnabled, setRolloverIcon, setRolloverSelectedIcon, setSelected, setSelectedIcon, setText, setUI, setVerticalAlignment, setVerticalTextPosition
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getGraphics, getHeight, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPreferredSize, getPropertyChangeListeners, getPropertyChangeListeners, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isPreferredSizeSet, isRequestFocusEnabled, isValidateRoot, paint, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removePropertyChangeListener, removePropertyChangeListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setFont, setForeground, 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, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, 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, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMouseWheelListeners, getName, getParent, getPeer, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, 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, processMouseEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, 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

DEFAULT_SIZE

public static final java.awt.Dimension DEFAULT_SIZE
Constructor Detail

JToolButton

public JToolButton()
Creates a new JToolButton that has no icon and whose borders are always rendered.


JToolButton

public JToolButton(javax.swing.Icon icon)
Creates a new JToolButton that displays the specified Icon and whose borders are always rendered.

Parameters:
icon - the Icon to display in the button.

JToolButton

public JToolButton(javax.swing.Icon icon,
                   boolean hasRolloverBorder)
Creates a new JToolButton that displays the specified Icon and displays its borders according to the hasRolloverBorder parameter.

Parameters:
icon - The Icon to display in the button.
hasRolloverBorder - If true, the borders of the JToolButton will only be drawn if the mouse pointer is "rolling over" the JToolButton -- that is, when the mouse pointer is within the boundaries of the JToolButton. If false, the borders of the JToolButton are always drawn.

JToolButton

public JToolButton(javax.swing.Icon icon,
                   boolean hasRolloverBorder,
                   java.awt.Dimension dim)
Creates a new JToolButton that displays the specified Icon and displays its borders according to the hasRolloverBorder parameter. The specified Dimension is used to indicate the size of the JToolButton.

Parameters:
icon - The Icon to display in the button. If null, no icon is displayed.
hasRolloverBorder - If true, the borders of the JToolButton will only be drawn if the mouse pointer is "rolling over" the JToolButton -- that is, when the mouse pointer is within the boundaries of the JToolButton. If false, the borders of the JToolButton are always drawn.
dim - The size of the button. If null, the button's size defaults to 28x25.
Method Detail

setFixedSize

public void setFixedSize(java.awt.Dimension dim)
This method sets the maximum, minimum, and preferred sizes to be the specified Dimension, essentially setting a fixed size for the JToolButton.


getLoweredBorder

public javax.swing.border.Border getLoweredBorder()
Returns the Border object that will be used to render the button border when the button is pressed.


setLoweredBorder

public void setLoweredBorder(javax.swing.border.Border loweredBorder)
Sets the Border object that will be used to render the button border when the button is pressed.


getRaisedBorder

public javax.swing.border.Border getRaisedBorder()
Returns the Border object that will be used to render the button border when the button is not being pressed.


setRaisedBorder

public void setRaisedBorder(javax.swing.border.Border raisedBorder)
Sets the Border object that will be used to render the button border when the button is not being pressed.


getChangeListener

protected javax.swing.event.ChangeListener getChangeListener(boolean hasRolloverBorder)
Returns a new ChangeListener instance that will be used to listen for ChangeEvents coming from the JToolButton's ButtonModel. The constructor uses this method to get the ChangeListener, so subclasses can use this method to customize what ChangeListener will be added to the JToolButton.

See Also:
AbstractButton.getModel(), ButtonModel.addChangeListener(ChangeListener)

Extension SDK

 

Copyright © 1997, 2004, Oracle. All rights reserved.