Gdk::Color Class Reference

Gdk::Color is used to describe an allocated or unallocated color. More...

`#include <gdkmm/color.h>`

## Public Member Functions

| Color (GdkColor * gobject, bool make_a_copy=true)
| Color (const Color & other)
Color & | operator= (const Color & other)
| Color (Color && other) noexcept
Color & | operator= (Color && other) noexcept
| ~Color () noexcept
void | swap (Color & other) noexcept
GdkColor * | gobj ()
| Provides access to the underlying C instance.
const GdkColor * | gobj () const
| Provides access to the underlying C instance.
GdkColor * | gobj_copy () const
| Provides access to the underlying C instance. The caller is responsible for freeing it. Use when directly setting fields in structs.
| Color ()
| Instantiate a new Gdk::Color.
| Color (const Glib::ustring & value)
| Instantiate a new Gdk::Color.
void | set_grey (gushort value)
| Set a grey color, by using the same value for all color components.
void | set_grey_p (double g)
| Set a grey color, by using the same value for all color components.
void | set_rgb (gushort red_, gushort green_, gushort blue_)
| Set the color, by specifying red, green, and blue color component values.
void | set_rgb_p (double red_, double green_, double blue_)
| Set the color, by specifying red, green, and blue color component values, as fractions.
void | set_hsv (double h, double s, double v)
| Set the color, by specifying hue, saturation, and value (brightness).
void | set_hsl (double h, double s, double l)
| Set the color, by specifying hue, saturation, and lightness.
bool | set (const Glib::ustring & value)
| Parses a textual specification of a color and fills in the red, green, and blue values.
gushort | get_red () const
| Get the red component of the color.
gushort | get_green () const
| Get the green component of the color.
gushort | get_blue () const
| Get the blue component of the color.
void | set_red (gushort value)
| Set the red component of the color.
void | set_green (gushort value)
| Set the green component of the color.
void | set_blue (gushort value)
| Set the blue component of the color.
guint | get_pixel () const
| Get the pixel value, for allocated colors.
double | get_red_p () const
| Get the red component of the color, as a fraction.
double | get_green_p () const
| Get the green component of the color, as a fraction.
double | get_blue_p () const
| Get the blue component of the color, as a fraction.
Glib::ustring | to_string () const
| Get a textual specification of color in the hexadecimal form #rrrrggggbbbb, where r, g and b are hex digits representing the red, green and blue components respectively.

## Static Public Member Functions

static GType | get_type ()
| Get the GType for this class, for use with the underlying GObject type system.

## Protected Attributes

GdkColor * | gobject_

## Related Symbols

(Note that these are not member symbols.)
bool | operator== (const Color & lhs, const Color & rhs)
bool | operator!= (const Color & lhs, const Color & rhs)
void | swap (Color & lhs, Color & rhs) noexcept
Gdk::Color | wrap (GdkColor * object, bool take_copy=false)
| A Glib::wrap() method for this object.

## Detailed Description

Gdk::Color is used to describe an allocated or unallocated color.

It contains the following data:

- pixel: For allocated colors, the value used to draw this color on the screen.
- red: The red component of the color. This is a value between 0 and 65535, with 65535 indicating full intensitiy.
- green: The green component of the color.

- blue: The blue component of the color.

  Deprecated:
    Use Gdk::RGBA instead.

## Constructor & Destructor Documentation

## Color() [1/5]

Gdk::Color::Color | ( | GdkColor * | gobject,
|  | bool | make_a_copy = `true`
| ) |  |

explicit

## Color() [2/5]

Gdk::Color::Color | ( | const Color & | other | ) |

## Color() [3/5]

Gdk::Color::Color | ( | Color && | other | ) |

noexcept

## ~Color()

Gdk::Color::~Color | ( |  | ) |

noexcept

## Color() [4/5]

Gdk::Color::Color | ( |  | ) |

Instantiate a new Gdk::Color.

You should then use the set methods.

## Color() [5/5]

Gdk::Color::Color | ( | const Glib::ustring & | value | ) |

explicit

Instantiate a new Gdk::Color.

The text string can be in any of the forms accepted by XParseColor; these include names for a color from rgb.txt, such as DarkSlateGray, or a hex specification such as 305050.

Parameters

  value | the string specifying the color.

## Member Function Documentation

## get_blue()

gushort Gdk::Color::get_blue | ( |  | ) | const

Get the blue component of the color.

Returns
  The blue component of the color.

## get_blue_p()

double Gdk::Color::get_blue_p | ( |  | ) | const

Get the blue component of the color, as a fraction.

Returns
  The blue component of the color, as a fraction.

## get_green()

gushort Gdk::Color::get_green | ( |  | ) | const

Get the green component of the color.

Returns
  The green component of the color.

## get_green_p()

double Gdk::Color::get_green_p | ( |  | ) | const

Get the green component of the color, as a fraction.

Returns
  The green component of the color, as a fraction.

## get_pixel()

guint Gdk::Color::get_pixel | ( |  | ) | const

Get the pixel value, for allocated colors.

Returns
  For allocated colors, the value used to draw this color on the screen.

## get_red()

gushort Gdk::Color::get_red | ( |  | ) | const

Get the red component of the color.

Returns
  The red component of the color.

## get_red_p()

double Gdk::Color::get_red_p | ( |  | ) | const

Get the red component of the color, as a fraction.

Returns
  The red component of the color, as a fraction.

## get_type()

static GType Gdk::Color::get_type | ( |  | ) |

static

Get the GType for this class, for use with the underlying GObject type system.

## gobj() [1/2]

GdkColor * Gdk::Color::gobj | ( |  | ) |

inline

Provides access to the underlying C instance.

## gobj() [2/2]

const GdkColor * Gdk::Color::gobj | ( |  | ) | const

inline

Provides access to the underlying C instance.

## gobj_copy()

GdkColor * Gdk::Color::gobj_copy | ( |  | ) | const

Provides access to the underlying C instance. The caller is responsible for freeing it. Use when directly setting fields in structs.

## operator=() [1/2]

Color & Gdk::Color::operator= | ( | Color && | other | ) |

noexcept

## operator=() [2/2]

Color & Gdk::Color::operator= | ( | const Color & | other | ) |

## set()

bool Gdk::Color::set | ( | const Glib::ustring & | value | ) |

Parses a textual specification of a color and fills in the red, green, and blue values.

The text string can be in any of the forms accepted by XParseColor; these include names for a color from rgb.txt, such as DarkSlateGray, or a hex specification such as 305050.

Parameters

  value | the string specifying the color.

Returns
  true if the parsing succeeded.

## set_blue()

void Gdk::Color::set_blue | ( | gushort | value | ) |

Set the blue component of the color.

Parameters

  value | The blue component of the color.

## set_green()

void Gdk::Color::set_green | ( | gushort | value | ) |

Set the green component of the color.

Parameters

  value | The green component of the color.

## set_grey()

void Gdk::Color::set_grey | ( | gushort | value | ) |

Set a grey color, by using the same value for all color components.

Parameters

  value | The value to be used for the red, green, and blue components.

## set_grey_p()

void Gdk::Color::set_grey_p | ( | double | g | ) |

Set a grey color, by using the same value for all color components.

Parameters

  g | The value to be used for the red, green, and blue components, as a fraction.

## set_hsl()

void Gdk::Color::set_hsl | ( | double | h,
|  | double | s,
|  | double | l
| ) |  |

Set the color, by specifying hue, saturation, and lightness.

Parameters

  h | Hue, in the range 0..360 degrees.
  s | Saturation, in the range 0..1.
  l | Lightness, in the range 0..1.

## set_hsv()

void Gdk::Color::set_hsv | ( | double | h,
|  | double | s,
|  | double | v
| ) |  |

Set the color, by specifying hue, saturation, and value (brightness).

Parameters

  h | Hue, in the range 0..360 degrees.
  s | Saturation, in the range 0..1.
  v | Value (a.k.a. brightness), in the range 0..1.

## set_red()

void Gdk::Color::set_red | ( | gushort | value | ) |

Set the red component of the color.

Parameters

  value | The red component of the color.

## set_rgb()

void Gdk::Color::set_rgb | ( | gushort | red_,
|  | gushort | green_,
|  | gushort | blue_
| ) |  |

Set the color, by specifying red, green, and blue color component values.

Parameters

  red_ | The red component of the color.
  green_ | The green component of the color.
  blue_ | The blue component of the color.

## set_rgb_p()

void Gdk::Color::set_rgb_p | ( | double | red_,
|  | double | green_,
|  | double | blue_
| ) |  |

Set the color, by specifying red, green, and blue color component values, as fractions.

Parameters

  red_ | The red component of the color, as a fraction.
  green_ | The green component of the color, as a fraction.
  blue_ | The blue component of the color, as a fraction.

## swap()

void Gdk::Color::swap | ( | Color & | other | ) |

noexcept

## to_string()

Glib::ustring Gdk::Color::to_string | ( |  | ) | const

Get a textual specification of color in the hexadecimal form #rrrrggggbbbb, where r, g and b are hex digits representing the red, green and blue components respectively.

Returns
  The string representation.

Since gtkmm 2.14:

## Friends And Related Symbol Documentation

## operator!=()

bool operator!= | ( | const Color & | lhs,
|  | const Color & | rhs
| ) |  |

related

Parameters

  lhs | The left-hand side
  rhs | The right-hand side

Returns
  The result

## operator==()

bool operator== | ( | const Color & | lhs,
|  | const Color & | rhs
| ) |  |

related

Parameters

  lhs | The left-hand side
  rhs | The right-hand side

Returns
  The result

## swap()

void swap | ( | Color & | lhs,
|  | Color & | rhs
| ) |  |

related

Parameters

  lhs | The left-hand side
  rhs | The right-hand side

## wrap()

Gdk::Color wrap | ( | GdkColor * | object,
|  | bool | take_copy = `false`
| ) |  |

related

A Glib::wrap() method for this object.

Parameters

  object | The C instance.
  take_copy | False if the result should take ownership of the C instance. True if it should take a new copy or ref.

Returns
  A C++ instance that wraps this C instance.

## Member Data Documentation

## gobject_

GdkColor* Gdk::Color::gobject_

protected