javax.swing
Class JColorChooser

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JColorChooser
All Implemented Interfaces:
ImageObserver, MenuContainer, Serializable, Accessible

public class JColorChooser
extends JComponent
implements Accessible

A Swing widget that offers users different ways to select a color. By default, three different panels are presented to the user that are capable of changing the selected color. There are three ways to utilize JColorChooser. The first is to build a JColorChooser and add it to the content pane. The second is to use the createDialog method to create a JDialog that holds a JColorChooser. The third is to show a JColorChooser in a JDialog directly using the showDialog method.

See Also:
Serialized Form

Nested Class Summary
protected  class JColorChooser.AccessibleJColorChooser
          Accessibility support for JColorChooser.
 
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BltBufferStrategy, Component.FlipBufferStrategy
 
Field Summary
protected  AccessibleContext accessibleContext
          accessibleContext
static String CHOOSER_PANELS_PROPERTY
          The property fired by the JColorChooser when the chooserPanels property changes.
static String PREVIEW_PANEL_PROPERTY
          The property fired by the JColorChooser when the previewPanel property changes.
static String SELECTION_MODEL_PROPERTY
          The property fired by the JColorChooser when the selectionModel property changes.
 
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
 
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
JColorChooser()
          This method creates a new JColorChooser with the default initial color.
JColorChooser(Color initial)
          This method creates a new JColorChooser with the given initial color.
JColorChooser(ColorSelectionModel model)
          This method creates a new JColorChooser with the given model.
 
Method Summary
 void addChooserPanel(AbstractColorChooserPanel panel)
          This method adds the given AbstractColorChooserPanel to the list of the JColorChooser's chooserPanels.
static JDialog createDialog(Component component, String title, boolean modal, JColorChooser chooserPane, ActionListener okListener, ActionListener cancelListener)
          This method will take the given JColorChooser and place it in a JDialog with the given modal property.
 AccessibleContext getAccessibleContext()
          getAccessibleContext
 AbstractColorChooserPanel[] getChooserPanels()
          This method returns the AbstractColorChooserPanels used with this JColorChooser.
 Color getColor()
          This method returns the current color for the JColorChooser.
 boolean getDragEnabled()
          DOCUMENT ME!
 JComponent getPreviewPanel()
          This method returns the current previewPanel used with this JColorChooser.
 ColorSelectionModel getSelectionModel()
          This method returns the ColorSelectionModel used with this JColorChooser.
 ColorChooserUI getUI()
          This method returns the UI Component used for this JColorChooser.
 String getUIClassID()
          This method returns a String identifier for the UI Class to be used with the JColorChooser.
protected  String paramString()
          This method returns a String describing the JColorChooser.
 AbstractColorChooserPanel removeChooserPanel(AbstractColorChooserPanel panel)
          This method removes the given AbstractColorChooserPanel from the JColorChooser's list of chooserPanels.
 void setChooserPanels(AbstractColorChooserPanel[] panels)
          This method sets the chooserPanels property for this JColorChooser.
 void setColor(Color color)
          This method sets the current color for the JColorChooser.
 void setColor(int color)
          This method sets the current color for the JColorChooser using the integer value.
 void setColor(int r, int g, int b)
          This method sets the current color for the JColorChooser using RGB values.
 void setDragEnabled(boolean b)
          DOCUMENT ME!
 void setPreviewPanel(JComponent component)
          This method changes the previewPanel property for the JTabbedPane.
 void setSelectionModel(ColorSelectionModel model)
          This method sets the ColorSelectionModel to be used with this JColorChooser.
 void setUI(ColorChooserUI ui)
          This method sets the UI Component used for this JColorChooser.
static Color showDialog(Component component, String title, Color initial)
          This method shows a JColorChooser inside a JDialog.
 void updateUI()
          This method resets the UI Component property to the Look and Feel default.
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, 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, 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, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setNextFocusableComponent, setOpaque, 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, setFocusTraversalKeys, 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, firePropertyChange, 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, 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, processMouseEvent, 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, setMaximumSize, setMinimumSize, setName, setPreferredSize, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

SELECTION_MODEL_PROPERTY

public static final String SELECTION_MODEL_PROPERTY
The property fired by the JColorChooser when the selectionModel property changes.

See Also:
Constant Field Values

PREVIEW_PANEL_PROPERTY

public static final String PREVIEW_PANEL_PROPERTY
The property fired by the JColorChooser when the previewPanel property changes.

See Also:
Constant Field Values

CHOOSER_PANELS_PROPERTY

public static final String CHOOSER_PANELS_PROPERTY
The property fired by the JColorChooser when the chooserPanels property changes.

See Also:
Constant Field Values

accessibleContext

protected AccessibleContext accessibleContext
accessibleContext

Constructor Detail

JColorChooser

public JColorChooser()
This method creates a new JColorChooser with the default initial color.


JColorChooser

public JColorChooser(Color initial)
This method creates a new JColorChooser with the given initial color.

Parameters:
initial - The initial color.

JColorChooser

public JColorChooser(ColorSelectionModel model)
This method creates a new JColorChooser with the given model. The model will dictate what the initial color for the JColorChooser is.

Parameters:
model - The Model to use with the JColorChooser.
Method Detail

setColor

public void setColor(Color color)
This method sets the current color for the JColorChooser.

Parameters:
color - The new color for the JColorChooser.

setColor

public void setColor(int r,
                     int g,
                     int b)
This method sets the current color for the JColorChooser using RGB values.

Parameters:
r - The red value.
g - The green value.
b - The blue value.

setColor

public void setColor(int color)
This method sets the current color for the JColorChooser using the integer value. Bits 0-7 represent the blue value. Bits 8-15 represent the green value. Bits 16-23 represent the red value.

Parameters:
color - The new current color of the JColorChooser.

showDialog

public static Color showDialog(Component component,
                               String title,
                               Color initial)
This method shows a JColorChooser inside a JDialog. The JDialog will block until it is hidden. The JDialog comes with three buttons: OK, Cancel, and Reset. Pressing OK or Cancel hide the JDialog. Pressing Reset will reset the JColorChooser to its initial value.

Parameters:
component - The Component that parents the JDialog.
title - The title displayed in the JDialog.
initial - The initial color.
Returns:
The selected color.

createDialog

public static JDialog createDialog(Component component,
                                   String title,
                                   boolean modal,
                                   JColorChooser chooserPane,
                                   ActionListener okListener,
                                   ActionListener cancelListener)
This method will take the given JColorChooser and place it in a JDialog with the given modal property. Three buttons are displayed in the JDialog: OK, Cancel and Reset. If OK or Cancel are pressed, the JDialog is hidden. If Reset is pressed, then the JColorChooser will take on its default color value. The given okListener will be registered to the OK button and the cancelListener will be registered to the Cancel button. If the modal property is set, then the JDialog will block until it is hidden.

Parameters:
component - The Component that will parent the JDialog.
title - The title displayed in the JDialog.
modal - The modal property.
chooserPane - The JColorChooser to place in the JDialog.
okListener - The ActionListener to register to the OK button.
cancelListener - The ActionListener to register to the Cancel button.
Returns:
A JDialog with the JColorChooser inside of it.
Throws:
AWTError - If the component is not a suitable parent.

getUI

public ColorChooserUI getUI()
This method returns the UI Component used for this JColorChooser.

Returns:
The UI Component for this JColorChooser.

setUI

public void setUI(ColorChooserUI ui)
This method sets the UI Component used for this JColorChooser.

Parameters:
ui - The UI Component to use with this JColorChooser.

updateUI

public void updateUI()
This method resets the UI Component property to the Look and Feel default.

Overrides:
updateUI in class JComponent

getUIClassID

public String getUIClassID()
This method returns a String identifier for the UI Class to be used with the JColorChooser.

Overrides:
getUIClassID in class JComponent
Returns:
The String identifier for the UI Class.
See Also:
JComponent.setUI(javax.swing.plaf.ComponentUI), JComponent.updateUI()

getColor

public Color getColor()
This method returns the current color for the JColorChooser.

Returns:
The current color for the JColorChooser.

setPreviewPanel

public void setPreviewPanel(JComponent component)
This method changes the previewPanel property for the JTabbedPane. The previewPanel is responsible for indicating the current color of the JColorChooser.

Parameters:
component - The Component that will act as the previewPanel.

getPreviewPanel

public JComponent getPreviewPanel()
This method returns the current previewPanel used with this JColorChooser.

Returns:
The current previewPanel.

addChooserPanel

public void addChooserPanel(AbstractColorChooserPanel panel)
This method adds the given AbstractColorChooserPanel to the list of the JColorChooser's chooserPanels.

Parameters:
panel - The AbstractColorChooserPanel to add.

removeChooserPanel

public AbstractColorChooserPanel removeChooserPanel(AbstractColorChooserPanel panel)
This method removes the given AbstractColorChooserPanel from the JColorChooser's list of chooserPanels.

Parameters:
panel - The AbstractColorChooserPanel to remove.
Returns:
The AbstractColorChooserPanel that was removed.

setChooserPanels

public void setChooserPanels(AbstractColorChooserPanel[] panels)
This method sets the chooserPanels property for this JColorChooser.

Parameters:
panels - The new set of AbstractColorChooserPanels to use.

getChooserPanels

public AbstractColorChooserPanel[] getChooserPanels()
This method returns the AbstractColorChooserPanels used with this JColorChooser.

Returns:
The AbstractColorChooserPanels used with this JColorChooser.

getSelectionModel

public ColorSelectionModel getSelectionModel()
This method returns the ColorSelectionModel used with this JColorChooser.

Returns:
The ColorSelectionModel.

setSelectionModel

public void setSelectionModel(ColorSelectionModel model)
This method sets the ColorSelectionModel to be used with this JColorChooser.

Parameters:
model - The ColorSelectionModel to be used with this JColorChooser.
Throws:
AWTError - If the given model is null.

getDragEnabled

public boolean getDragEnabled()
DOCUMENT ME!

Returns:
DOCUMENT ME!

setDragEnabled

public void setDragEnabled(boolean b)
DOCUMENT ME!

Parameters:
b - DOCUMENT ME!

paramString

protected String paramString()
This method returns a String describing the JColorChooser.

Overrides:
paramString in class JComponent
Returns:
A String describing the JColorChooser.

getAccessibleContext

public AccessibleContext getAccessibleContext()
getAccessibleContext

Specified by:
getAccessibleContext in interface Accessible
Overrides:
getAccessibleContext in class JComponent
Returns:
AccessibleContext