QGIS API Documentation 3.39.0-Master (3783037d301)
|
A base class for interactive color widgets. More...
#include <qgscolorwidgets.h>
Public Types | |
enum | ColorComponent { Multiple = 0 , Red , Green , Blue , Hue , Saturation , Value , Alpha , Cyan , Magenta , Yellow , Black } |
Specifies the color component which the widget alters. More... | |
enum class | ComponentUnit { Scaled0to255 , Percent , Degree } |
Specified the color component unit. More... | |
Public Slots | |
virtual void | setColor (const QColor &color, bool emitSignals=false) |
Sets the color for the widget. | |
virtual void | setComponent (QgsColorWidget::ColorComponent component) |
Sets the color component which the widget controls. | |
virtual Q_DECL_DEPRECATED void | setComponentValue (int value) |
Alters the widget's color by setting the value for the widget's color component. | |
virtual void | setComponentValueF (float value) |
Alters the widget's color by setting the value for the widget's color component. | |
Signals | |
void | colorChanged (const QColor &color) |
Emitted when the widget's color changes. | |
void | hovered () |
Emitted when mouse hovers over widget. | |
Public Member Functions | |
QgsColorWidget (QWidget *parent=nullptr, ColorComponent component=Multiple) | |
Construct a new color widget. | |
QColor | color () const |
Returns the current color for the widget. | |
ColorComponent | component () const |
Returns the color component which the widget controls. | |
Q_DECL_DEPRECATED int | componentValue () const |
Returns the current value of the widget's color component. | |
float | componentValueF () const |
Returns the current value of the widget's color component. | |
Static Public Member Functions | |
static ComponentUnit | componentUnit (ColorComponent component) |
Returns color component unit. | |
static QPixmap | createDragIcon (const QColor &color) |
Create an icon for dragging colors. | |
Protected Member Functions | |
QColor::Spec | colorSpec () const |
Returns color widget type of color, either RGB, HSV, CMYK, or Invalid if this component value is Multiple or Alpha. | |
int | componentRange () const |
Returns the range of valid values for the color widget's component. | |
Q_DECL_DEPRECATED int | componentValue (ColorComponent component) const |
Returns the value of a component of the widget's current color. | |
float | componentValueF (ColorComponent component) const |
Returns the value of a component of the widget's current color. | |
void | dragEnterEvent (QDragEnterEvent *e) override |
void | dropEvent (QDropEvent *e) override |
Q_DECL_DEPRECATED int | hue () const |
Returns the hue for the widget. | |
float | hueF () const |
Returns the hue for the widget. | |
void | mouseMoveEvent (QMouseEvent *e) override |
void | mousePressEvent (QMouseEvent *e) override |
void | mouseReleaseEvent (QMouseEvent *e) override |
Static Protected Member Functions | |
static Q_DECL_DEPRECATED void | alterColor (QColor &color, QgsColorWidget::ColorComponent component, int newValue) |
Alters a color by modifying the value of a specific color component. | |
static void | alterColorF (QColor &color, QgsColorWidget::ColorComponent component, float newValue) |
Alters a color by modifying the value of a specific color component. | |
static QColor::Spec | colorSpec (QgsColorWidget::ColorComponent component) |
Returns component type of color, either RGB, HSV, CMYK, or Invalid if component value is Multiple or Alpha. | |
static int | componentRange (ColorComponent component) |
Returns the range of valid values a color component. | |
static const QPixmap & | transparentBackground () |
Generates a checkboard pattern pixmap for use as a background to transparent colors. | |
Protected Attributes | |
ColorComponent | mComponent |
QColor | mCurrentColor |
float | mExplicitHue = 0 |
QColor wipes the hue information when it is ambiguous (e.g., for saturation = 0). | |
Friends | |
class | TestQgsCompoundColorWidget |
A base class for interactive color widgets.
Widgets can either allow setting a single component of a color (e.g., the red or green components), or an entire color. The QgsColorWidget also keeps track of any explicitly set hue for the color, so that this information is not lost when the widget is set to a color with an ambiguous hue (e.g., black or white shades).
Definition at line 38 of file qgscolorwidgets.h.
Specifies the color component which the widget alters.
Definition at line 47 of file qgscolorwidgets.h.
|
strong |
Specified the color component unit.
Enumerator | |
---|---|
Scaled0to255 | Values in the range 0-255. |
Percent | Percent values in the range 0-100. |
Degree | Degree values in the range 0-359. |
Definition at line 66 of file qgscolorwidgets.h.
QgsColorWidget::QgsColorWidget | ( | QWidget * | parent = nullptr , |
ColorComponent | component = Multiple |
||
) |
Construct a new color widget.
parent | parent QWidget for the widget |
component | color component the widget alters |
Definition at line 58 of file qgscolorwidgets.cpp.
|
staticprotected |
Alters a color by modifying the value of a specific color component.
color | color to alter |
component | color component to alter |
newValue | new value of color component in the range between 0 and the value returned by componentRange(). Values are automatically clipped to a valid range for the color component. |
Definition at line 208 of file qgscolorwidgets.cpp.
|
staticprotected |
Alters a color by modifying the value of a specific color component.
color | color to alter |
component | color component to alter |
newValue | new value of color component in the range between 0 and the value returned by componentRange(). Values are automatically clipped to range 0.0-1.0 |
Definition at line 215 of file qgscolorwidgets.cpp.
QColor QgsColorWidget::color | ( | ) | const |
Returns the current color for the widget.
Definition at line 374 of file qgscolorwidgets.cpp.
|
signal |
Emitted when the widget's color changes.
color | new widget color |
|
protected |
Returns color widget type of color, either RGB, HSV, CMYK, or Invalid if this component value is Multiple or Alpha.
Definition at line 303 of file qgscolorwidgets.cpp.
|
staticprotected |
Returns component type of color, either RGB, HSV, CMYK, or Invalid if component value is Multiple or Alpha.
Definition at line 278 of file qgscolorwidgets.cpp.
|
inline |
Returns the color component which the widget controls.
Definition at line 93 of file qgscolorwidgets.h.
|
protected |
Returns the range of valid values for the color widget's component.
Definition at line 166 of file qgscolorwidgets.cpp.
|
staticprotected |
Returns the range of valid values a color component.
Definition at line 171 of file qgscolorwidgets.cpp.
|
static |
Returns color component unit.
Definition at line 96 of file qgscolorwidgets.cpp.
int QgsColorWidget::componentValue | ( | ) | const |
Returns the current value of the widget's color component.
Definition at line 66 of file qgscolorwidgets.cpp.
|
protected |
Returns the value of a component of the widget's current color.
This method correctly handles hue values when the color has an ambiguous hue (e.g., black or white shades)
component | color component to return |
Definition at line 121 of file qgscolorwidgets.cpp.
float QgsColorWidget::componentValueF | ( | ) | const |
Returns the current value of the widget's color component.
Definition at line 71 of file qgscolorwidgets.cpp.
|
protected |
Returns the value of a component of the widget's current color.
This method correctly handles hue values when the color has an ambiguous hue (e.g., black or white shades)
component | color component to return |
Definition at line 126 of file qgscolorwidgets.cpp.
|
static |
Create an icon for dragging colors.
color | for icon |
Definition at line 76 of file qgscolorwidgets.cpp.
|
overrideprotected |
Definition at line 318 of file qgscolorwidgets.cpp.
|
overrideprotected |
Definition at line 331 of file qgscolorwidgets.cpp.
|
signal |
Emitted when mouse hovers over widget.
|
protected |
Returns the hue for the widget.
This may differ from the hue for the QColor returned by color(), as QColor returns a hue of -1 if the color's hue is ambiguous (e.g., if the saturation is zero).
Definition at line 191 of file qgscolorwidgets.cpp.
|
protected |
Returns the hue for the widget.
This may differ from the hue for the QColor returned by color(), as QColor returns a hue of -1 if the color's hue is ambiguous (e.g., if the saturation is zero).
Definition at line 196 of file qgscolorwidgets.cpp.
|
overrideprotected |
Definition at line 355 of file qgscolorwidgets.cpp.
|
overrideprotected |
Definition at line 362 of file qgscolorwidgets.cpp.
|
overrideprotected |
Definition at line 368 of file qgscolorwidgets.cpp.
|
virtualslot |
Sets the color for the widget.
color | widget color |
emitSignals | set to true to emit the colorChanged signal after setting color |
Reimplemented in QgsColorSliderWidget, and QgsColorTextWidget.
Definition at line 424 of file qgscolorwidgets.cpp.
|
virtualslot |
Sets the color component which the widget controls.
component | color component for widget |
Reimplemented in QgsColorBox, and QgsColorSliderWidget.
Definition at line 379 of file qgscolorwidgets.cpp.
|
virtualslot |
Alters the widget's color by setting the value for the widget's color component.
value | value for widget's color component in the range between 0 and the value returned by componentRange(). This value is automatically clipped to the range of valid values for the color component. |
Definition at line 390 of file qgscolorwidgets.cpp.
|
virtualslot |
Alters the widget's color by setting the value for the widget's color component.
value | value for widget's color component in the range 0.0-1.0. This value is automatically clipped to the range 0.0-1.0. |
Reimplemented in QgsColorSliderWidget.
Definition at line 395 of file qgscolorwidgets.cpp.
|
staticprotected |
Generates a checkboard pattern pixmap for use as a background to transparent colors.
Definition at line 308 of file qgscolorwidgets.cpp.
|
friend |
Definition at line 288 of file qgscolorwidgets.h.
|
protected |
Definition at line 185 of file qgscolorwidgets.h.
|
protected |
Definition at line 183 of file qgscolorwidgets.h.
|
protected |
QColor wipes the hue information when it is ambiguous (e.g., for saturation = 0).
So the hue is stored in mExplicit hue to keep it around, as it is useful when modifying colors
Definition at line 191 of file qgscolorwidgets.h.