![]() |
![]() |
In general, colormaps only contain significant information for pseudo-color visuals, but even for other visual types, a colormap object is required in some circumstances.
There are a couple of special colormaps that can be retrieved. The system colormap (retrieved with get_system()) is the default colormap of the system. If you are using GdkRGB, there is another colormap that is important - the colormap in which GdkRGB works, retrieved with Gdk::rgb_get_colormap(). However, when using GdkRGB, it is not generally necessary to allocate colors directly.
Public Member Functions | |
bool | alloc_color (Color& color, bool writeable=false, bool best_match=true) |
Allocates a single color from a colormap. | |
int | alloc_colors (ArrayHandle_Color& colors, int ncolors, bool writeable, bool best_match, Glib::ArrayHandle<bool>& success) |
void | free_color (Color& color) |
void | free_colors (Color& colors, int ncolors) |
Glib::RefPtr<const Screen> | get_screen () const |
Gets the screen for which this colormap was created. | |
Glib::RefPtr<Screen> | get_screen () |
Gets the screen for which this colormap was created. | |
Glib::RefPtr<const Visual> | get_visual () const |
Returns the visual for which a given colormap was created. | |
Glib::RefPtr<Visual> | get_visual () |
Returns the visual for which a given colormap was created. | |
const GdkColormap* | gobj () const |
Provides access to the underlying C GObject. | |
GdkColormap* | gobj () |
Provides access to the underlying C GObject. | |
GdkColormap* | gobj_copy () |
Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs. | |
void | query_color (gulong pixel, Color& result) |
Locates the RGB color in colormap corresponding to the given hardware pixel pixel . | |
virtual | ~Colormap () |
Static Public Member Functions | |
static Glib::RefPtr<Colormap> | create (const Glib::RefPtr<Visual>& visual, bool allocate) |
static Glib::RefPtr<Colormap> | get_system () |
Gets the system's default colormap for the default screen. | |
Protected Member Functions | |
Colormap (const Glib::RefPtr<Visual>& visual, bool allocate) | |
Related Functions | |
(Note that these are not member functions.) | |
Glib::RefPtr<Gdk::Colormap> | wrap (GdkColormap* object, bool take_copy=false) |
A Glib::wrap() method for this object. |
virtual Gdk::Colormap::~Colormap | ( | ) | [virtual] |
Gdk::Colormap::Colormap | ( | const Glib::RefPtr<Visual>& | visual, | |
bool | allocate | |||
) | [explicit, protected] |
bool Gdk::Colormap::alloc_color | ( | Color& | color, | |
bool | writeable = false , |
|||
bool | best_match = true | |||
) |
Allocates a single color from a colormap.
color | The color to allocate. On return the <structfield>pixel</structfield> field will be filled in if allocation succeeds. | |
writeable | If true , the color is allocated writeable (their values can later be changed using gdk_color_change()). Writeable colors cannot be shared between applications. | |
best_match | If true , GDK will attempt to do matching against existing colors if the color cannot be allocated as requested. |
true
if the allocation succeeded. int Gdk::Colormap::alloc_colors | ( | ArrayHandle_Color & | colors, | |
int | ncolors, | |||
bool | writeable, | |||
bool | best_match, | |||
Glib::ArrayHandle< bool > & | success | |||
) |
static Glib::RefPtr<Colormap> Gdk::Colormap::create | ( | const Glib::RefPtr<Visual>& | visual, | |
bool | allocate | |||
) | [static] |
void Gdk::Colormap::free_color | ( | Color& | color | ) |
void Gdk::Colormap::free_colors | ( | Color& | colors, | |
int | ncolors | |||
) |
Glib::RefPtr<const Screen> Gdk::Colormap::get_screen | ( | ) | const |
Gets the screen for which this colormap was created.
Glib::RefPtr<Screen> Gdk::Colormap::get_screen | ( | ) |
Gets the screen for which this colormap was created.
static Glib::RefPtr<Colormap> Gdk::Colormap::get_system | ( | ) | [static] |
Gets the system's default colormap for the default screen.
(See gdk_colormap_get_system_for_screen())
Glib::RefPtr<const Visual> Gdk::Colormap::get_visual | ( | ) | const |
Returns the visual for which a given colormap was created.
Glib::RefPtr<Visual> Gdk::Colormap::get_visual | ( | ) |
Returns the visual for which a given colormap was created.
const GdkColormap* Gdk::Colormap::gobj | ( | ) | const [inline] |
GdkColormap* Gdk::Colormap::gobj | ( | ) | [inline] |
GdkColormap* Gdk::Colormap::gobj_copy | ( | ) |
Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.
void Gdk::Colormap::query_color | ( | gulong | pixel, | |
Color& | result | |||
) |
Locates the RGB color in colormap corresponding to the given hardware pixel pixel .
pixel must be a valid pixel in the colormap; it's a programmer error to call this function with a pixel which is not in the colormap. Hardware pixels are normally obtained from alloc_colors(), or from a Gdk::Image. (A Gdk::Image contains image data in hardware format, a Gdk::Pixbuf contains image data in a canonical 24-bit RGB format.)
This function is rarely useful; it's used for example to implement the eyedropper feature in Gtk::ColorSelection.
pixel | Pixel value in hardware display format. | |
result | Gdk::Color with red, green, blue fields initialized. |
Glib::RefPtr<Gdk::Colormap> wrap | ( | GdkColormap * | object, | |
bool | take_copy = false | |||
) | [related] |
A Glib::wrap() method for this object.
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. |