Qt Reference Documentation

# QColorDialog Class Reference

The QColorDialog class provides a dialog widget for specifying colors. More...

     #include <QColorDialog>

Inherits: QDialog.

- List of all members, including inherited members
- Obsolete members
- Qt 3 support members

## Public Types

enum | ColorDialogOption { ShowAlphaChannel, NoButtons, DontUseNativeDialog }
flags | ColorDialogOptions

## Properties

- currentColor : QColor
- options : ColorDialogOptions

- 2 properties inherited from QDialog
- 58 properties inherited from QWidget
- 1 property inherited from QObject

## Public Functions

| QColorDialog ( QWidget * parent = 0 )
| QColorDialog ( const QColor & initial, QWidget * parent = 0 )
| ~QColorDialog ()
QColor | currentColor () const
void | open ()
void | open ( QObject * receiver, const char * member )
ColorDialogOptions | options () const
QColor | selectedColor () const
void | setCurrentColor ( const QColor & color )
void | setOption ( ColorDialogOption option, bool on = true )
void | setOptions ( ColorDialogOptions options )
bool | testOption ( ColorDialogOption option ) const

## Reimplemented Public Functions

virtual void | setVisible ( bool visible )

- 8 public functions inherited from QDialog
- 221 public functions inherited from QWidget
- 29 public functions inherited from QObject
- 13 public functions inherited from QPaintDevice

## Signals

void | colorSelected ( const QColor & color )
void | currentColorChanged ( const QColor & color )

- 3 signals inherited from QDialog
- 1 signal inherited from QWidget
- 1 signal inherited from QObject

## Static Public Members

QRgb | customColor ( int index )
int | customCount ()
QColor | getColor ( const QColor & initial, QWidget * parent, const QString & title, ColorDialogOptions options = 0 )
QColor | getColor ( const QColor & initial = Qt::white, QWidget * parent = 0 )
void | setCustomColor ( int index, QRgb color )
void | setStandardColor ( int index, QRgb color )

- 4 static public members inherited from QWidget
- 7 static public members inherited from QObject

## Reimplemented Protected Functions

virtual void | changeEvent ( QEvent * e )
virtual void | done ( int result )

- 7 protected functions inherited from QDialog
- 37 protected functions inherited from QWidget
- 8 protected functions inherited from QObject
- 1 protected function inherited from QPaintDevice

### Additional Inherited Members

- 5 public slots inherited from QDialog
- 19 public slots inherited from QWidget
- 1 public slot inherited from QObject
- 7 protected functions inherited from QDialog
- 37 protected functions inherited from QWidget
- 8 protected functions inherited from QObject
- 1 protected function inherited from QPaintDevice
- 1 protected slot inherited from QWidget

## Detailed Description

The QColorDialog class provides a dialog widget for specifying colors.

The color dialog's function is to allow users to choose colors. For example, you might use this in a drawing program to allow the user to set the brush color.

The static functions provide modal color dialogs.

The static getColor() function shows the dialog, and allows the user to specify a color. This function can also be used to let users choose a color with a level of transparency: pass the ShowAlphaChannel option as an additional argument.

The user can store customCount() different custom colors. The custom colors are shared by all color dialogs, and remembered during the execution of the program. Use setCustomColor() to set the custom colors, and use customColor() to get them.

Additional widgets that allow users to pick colors are available as Qt Solutions.

The Standard Dialogs example shows how to use QColorDialog as well as other built-in Qt dialogs.

See also QColor, QFileDialog, QPrintDialog, QFontDialog, and Standard Dialogs Example.

## Member Type Documentation

### enum QColorDialog::ColorDialogOption
flags QColorDialog::ColorDialogOptions

This enum specifies various options that affect the look and feel of a color dialog.

Constant | Value | Description
--- | --- | ---
`QColorDialog::ShowAlphaChannel` | `0x00000001` | Allow the user to select the alpha component of a color.
`QColorDialog::NoButtons` | `0x00000002` | Don't display OK and Cancel buttons. (Useful for "live dialogs".)
`QColorDialog::DontUseNativeDialog` | `0x00000004` | Use Qt's standard color dialog on the Mac instead of Apple's native color panel.

This enum was introduced or modified in Qt 4.5.

The ColorDialogOptions type is a typedef for QFlags<ColorDialogOption>. It stores an OR combination of ColorDialogOption values.

See also options, setOption(), testOption(), and windowModality().

## Property Documentation

### currentColor : QColor

This property holds the currently selected color in the dialog.

Access functions:

QColor | currentColor () const
void | setCurrentColor ( const QColor & color )

Notifier signal:

void | currentColorChanged ( const QColor & color )

### options : ColorDialogOptions

This property holds the various options that affect the look and feel of the dialog.

By default, all options are disabled.

Options should be set before showing the dialog. Setting them while the dialog is visible is not guaranteed to have an immediate effect on the dialog (depending on the option and on the platform).

Access functions:

ColorDialogOptions | options () const
void | setOptions ( ColorDialogOptions options )

See also setOption() and testOption().

## Member Function Documentation

### QColorDialog::QColorDialog ( QWidget * parent = 0 )

Constructs a color dialog with the given parent.

This function was introduced in Qt 4.5.

### QColorDialog::QColorDialog ( const QColor & initial, QWidget * parent = 0 )

Constructs a color dialog with the given parent and specified initial color.

This function was introduced in Qt 4.5.

### QColorDialog::~QColorDialog ()

Destroys the color dialog.

### void QColorDialog::changeEvent ( QEvent * e )`[virtual protected]`

Reimplemented from QWidget::changeEvent().

### void QColorDialog::colorSelected ( const QColor & color )`[signal]`

This signal is emitted just after the user has clicked OK to select a color to use. The chosen color is specified by color.

See also color and currentColorChanged().

### void QColorDialog::currentColorChanged ( const QColor & color )`[signal]`

This signal is emitted whenever the current color changes in the dialog. The current color is specified by color.

See also color and colorSelected().

### QRgb QColorDialog::customColor ( int index )`[static]`

Returns the custom color at the given index as a QRgb value.

This function was introduced in Qt 4.5.

See also setCustomColor().

### int QColorDialog::customCount ()`[static]`

Returns the number of custom colors supported by QColorDialog. All color dialogs share the same custom colors.

### void QColorDialog::done ( int result )`[virtual protected]`

Reimplemented from QDialog::done().

Closes the dialog and sets its result code to result. If this dialog is shown with exec(), done() causes the local event loop to finish, and exec() to return result.

See also QDialog::done().

### QColor QColorDialog::getColor ( const QColor & initial, QWidget * parent, const QString & title, ColorDialogOptions options = 0 )`[static]`

Pops up a modal color dialog with the given window title (or "Select Color" if none is specified), lets the user choose a color, and returns that color. The color is initially set to initial. The dialog is a child of parent. It returns an invalid (see QColor::isValid()) color if the user cancels the dialog.

The options argument allows you to customize the dialog.

On Symbian, this static function will use the native color dialog and not a QColorDialog. On Symbian the parameters title and parent has no relevance and the options parameter is only used to define if the native color dialog is used or not.

This function was introduced in Qt 4.5.

### QColor QColorDialog::getColor ( const QColor & initial = Qt::white, QWidget * parent = 0 )`[static]`

Pops up a modal color dialog, lets the user choose a color, and returns that color. The color is initially set to initial. The dialog is a child of parent. It returns an invalid (see QColor::isValid()) color if the user cancels the dialog.

On Symbian, this static function will use the native color dialog and not a QColorDialog.

### void QColorDialog::open ()

Shows the dialog as a window modal dialog, returning immediately.

This function was introduced in Qt 4.5.

See also QDialog::open().

### void QColorDialog::open ( QObject * receiver, const char * member )

This is an overloaded function.

Opens the dialog and connects its colorSelected() signal to the slot specified by receiver and member.

The signal will be disconnected from the slot when the dialog is closed.

This function was introduced in Qt 4.5.

### QColor QColorDialog::selectedColor () const

Returns the color that the user selected by clicking the OK or equivalent button.

Note: This color is not always the same as the color held by the currentColor property since the user can choose different colors before finally selecting the one to use.

### void QColorDialog::setCustomColor ( int index, QRgb color )`[static]`

Sets the custom color at index to the QRgb color value.

Note: This function does not apply to the Native Color Dialog on the Mac OS X platform. If you still require this function, use the QColorDialog::DontUseNativeDialog option.

See also customColor().

### void QColorDialog::setOption ( ColorDialogOption option, bool on = true )

Sets the given option to be enabled if on is true; otherwise, clears the given option.

See also options and testOption().

### void QColorDialog::setStandardColor ( int index, QRgb color )`[static]`

Sets the standard color at index to the QRgb color value.

Note: This function does not apply to the Native Color Dialog on the Mac OS X platform. If you still require this function, use the QColorDialog::DontUseNativeDialog option.

### void QColorDialog::setVisible ( bool visible )`[virtual]`

Reimplemented from QWidget::setVisible().

Changes the visibility of the dialog. If visible is true, the dialog is shown; otherwise, it is hidden.

### bool QColorDialog::testOption ( ColorDialogOption option ) const

Returns true if the given option is enabled; otherwise, returns false.

This function was introduced in Qt 4.5.

See also options and setOption().