javax.swing

Class JColorChooser

Implemented Interfaces:
Accessible, ImageObserver, MenuContainer, Serializable

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

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.
protected AccessibleContext
accessibleContext
accessibleContext

Fields inherited from class javax.swing.JComponent

TOOL_TIP_TEXT_KEY, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW, accessibleContext, listenerList, ui

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(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
setColor(Color color)
This method sets the current color for the JColorChooser.
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, extends EventListener> T[] getListeners, firePropertyChange, firePropertyChange, fireVetoableChange, getAccessibleContext, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, paramString, 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, updateUI

Methods inherited from class java.awt.Container

add, add, add, add, add, addContainerListener, addImpl, addNotify, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, extends EventListener> T[] getListeners, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponentZOrder, getComponents, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, paramString, preferredSize, print, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, removeNotify, setComponentZOrder, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, setLayout, transferFocusDownCycle, update, validate, validateTree

Methods inherited from class java.awt.Component

action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, deliverEvent, disable, disableEvents, dispatchEvent, doLayout, enable, enable, enableEvents, enableInputMethods, extends EventListener> T[] getListeners, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getAccessibleContext, getAlignmentX, getAlignmentY, getBackground, getBounds, getBounds, getColorModel, getComponentAt, getComponentAt, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeys, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocation, getLocationOnScreen, getMaximumSize, getMinimumSize, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPreferredSize, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getToolkit, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, invalidate, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusCycleRoot, isFocusOwner, isFocusTraversable, isFocusable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, layout, list, list, list, list, list, locate, location, lostFocus, minimumSize, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paint, paintAll, paramString, postEvent, preferredSize, prepareImage, prepareImage, print, printAll, processComponentEvent, processEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, reshape, resize, resize, setBackground, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setEnabled, setFocusTraversalKeys, setFocusTraversalKeysEnabled, setFocusable, setFont, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setMinimumSize, setName, setPreferredSize, setSize, setSize, setVisible, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle, update, validate

Methods inherited from class java.lang.Object

clone, equals, extends Object> getClass, finalize, hashCode, notify, notifyAll, toString, wait, wait, wait

Field Details

CHOOSER_PANELS_PROPERTY

public static final String CHOOSER_PANELS_PROPERTY
The property fired by the JColorChooser when the chooserPanels property changes.
Field Value:
"chooserPanels"

PREVIEW_PANEL_PROPERTY

public static final String PREVIEW_PANEL_PROPERTY
The property fired by the JColorChooser when the previewPanel property changes.
Field Value:
"previewPanel"

SELECTION_MODEL_PROPERTY

public static final String SELECTION_MODEL_PROPERTY
The property fired by the JColorChooser when the selectionModel property changes.
Field Value:
"selectionModel"

accessibleContext

protected AccessibleContext accessibleContext
accessibleContext

Constructor Details

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 Details

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.

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.

getAccessibleContext

public AccessibleContext getAccessibleContext()
getAccessibleContext
Specified by:
getAccessibleContext in interface Accessible
Overrides:
getAccessibleContext in interface JComponent
Returns:
AccessibleContext

getChooserPanels

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

getColor

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

getDragEnabled

public boolean getDragEnabled()
DOCUMENT ME!
Returns:
DOCUMENT ME!

getPreviewPanel

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

getSelectionModel

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

getUI

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

getUIClassID

public String getUIClassID()
This method returns a String identifier for the UI Class to be used with the JColorChooser.
Overrides:
getUIClassID in interface JComponent
Returns:
The String identifier for the UI Class.

paramString

protected String paramString()
This method returns a String describing the JColorChooser.
Overrides:
paramString in interface JComponent
Returns:
A String describing the JColorChooser.

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.

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.

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(Color color)
This method sets the current color for the JColorChooser.
Parameters:
color - The new color for the JColorChooser.

setDragEnabled

public void setDragEnabled(boolean b)
DOCUMENT ME!
Parameters:
b - DOCUMENT ME!

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.

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.

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.

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.

updateUI

public void updateUI()
This method resets the UI Component property to the Look and Feel default.
Overrides:
updateUI in interface JComponent

JColorChooser.java -- Copyright (C) 2002, 2004 Free Software Foundation, Inc. This file is part of GNU Classpath. GNU Classpath is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Classpath is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Classpath; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. Linking this library statically or dynamically with other modules is making a combined work based on this library. Thus, the terms and conditions of the GNU General Public License cover the whole combination. As a special exception, the copyright holders of this library give you permission to link this library with independent modules to produce an executable, regardless of the license terms of these independent modules, and to copy and distribute the resulting executable under terms of your choice, provided that you also meet, for each linked independent module, the terms and conditions of the license of that module. An independent module is a module which is not derived from or based on this library. If you modify this library, you may extend this exception to your version of the library, but you are not obligated to do so. If you do not wish to do so, delete this exception statement from your version.