gtkmm: Gdk::Colormap Class Reference

A Colormap is an object that contains the mapping between the color values stored in memory and the RGB values that are used to display color values. More...

Inheritance diagram for Gdk::Colormap:
Collaboration diagram for Gdk::Colormap:

Public Member Functions

 Colormap (Colormap&& src) noexcept
 
Colormapoperator= (Colormap&& src) noexcept
 
 ~Colormap () noexceptoverride
 
GdkColormap* gobj ()
 Provides access to the underlying C GObject. More...

 
const GdkColormap* gobj () const
 Provides access to the underlying C GObject. More...

 
GdkColormap* gobj_copy ()
 Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs. More...

 
int alloc_colors (ArrayHandle_Color& colors, int ncolors, bool writeable, bool best_match, Glib::ArrayHandle< bool >& success)
 
void free_colors (Color& colors, int ncolors)
 
bool alloc_color (Color& color, bool writeable=false, bool best_match=true)
 Allocates a single color from a colormap. More...

 
void free_color (Color& color)
 
void query_color (gulong pixel, Color& result)
 Locates the RGB color in colormap corresponding to the given hardware pixel pixel. More...

 
Glib::RefPtr< Visualget_visual ()
 Returns the visual for which a given colormap was created. More...

 
Glib::RefPtr< const Visualget_visual () const
 Returns the visual for which a given colormap was created. More...

 
Glib::RefPtr< Screenget_screen ()
 Gets the screen for which this colormap was created. More...

 
Glib::RefPtr< const Screenget_screen () const
 Gets the screen for which this colormap was created. More...

 
- Public Member Functions inherited from Glib::Object
 Object (const Object &)=delete
 
Objectoperator= (const Object &)=delete
 
 Object (Object &&src) noexcept
 
Objectoperator= (Object &&src) noexcept
 
void * get_data (const QueryQuark &key)
 
void set_data (const Quark &key, void *data)
 
void set_data (const Quark &key, void *data, DestroyNotify notify)
 
void remove_data (const QueryQuark &quark)
 
void * steal_data (const QueryQuark &quark)
 
Glib::RefPtr< Glib::Objectwrap (GObject *object, bool take_copy=false)
 
- Public Member Functions inherited from Glib::ObjectBase
 ObjectBase (const ObjectBase &)=delete
 
ObjectBaseoperator= (const ObjectBase &)=delete
 
void set_property_value (const Glib::ustring &property_name, const Glib::ValueBase &value)
 
void get_property_value (const Glib::ustring &property_name, Glib::ValueBase &value) const
 
void set_property (const Glib::ustring &property_name, const PropertyType &value)
 
void get_property (const Glib::ustring &property_name, PropertyType &value) const
 
void connect_property_changed (const Glib::ustring &property_name, const sigc::slot< void > &slot)
 
void connect_property_changed (const Glib::ustring &property_name, sigc::slot< void > &&slot)
 
sigc::connection connect_property_changed_with_return (const Glib::ustring &property_name, const sigc::slot< void > &slot)
 
sigc::connection connect_property_changed_with_return (const Glib::ustring &property_name, sigc::slot< void > &&slot)
 
void freeze_notify ()
 
void thaw_notify ()
 
virtual void reference () const
 
virtual void unreference () const
 
GObject * gobj ()
 
const GObject * gobj () const
 
GObject * gobj_copy () const
 
- Public Member Functions inherited from sigc::trackable
 trackable () noexcept
 
 trackable (const trackable &src) noexcept
 
 trackable (trackable &&src)
 
 ~trackable ()
 
void add_destroy_notify_callback (void *data, func_destroy_notify func) const
 
void notify_callbacks ()
 
trackableoperator= (const trackable &src)
 
trackableoperator= (trackable &&src)
 
void remove_destroy_notify_callback (void *data) const
 

Static Public Member Functions

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

 
static Glib::RefPtr< Colormapcreate (const Glib::RefPtr< Visual >& visual, bool allocate)
 
static Glib::RefPtr< Colormapget_system ()
 Gets the system's default colormap for the default screen. More...

 

Protected Member Functions

 Colormap (const Glib::RefPtr< Visual >& visual, bool allocate)
 
- Protected Member Functions inherited from Glib::Object
 Object ()
 
 Object (const Glib::ConstructParams &construct_params)
 
 Object (GObject *castitem)
 
 ~Object () noexceptoverride
 
- Protected Member Functions inherited from Glib::ObjectBase
 ObjectBase ()
 
 ObjectBase (const char *custom_type_name)
 
 ObjectBase (const std::type_info &custom_type_info)
 
 ObjectBase (ObjectBase &&src) noexcept
 
ObjectBaseoperator= (ObjectBase &&src) noexcept
 
virtual ~ObjectBase () noexcept=0
 
void initialize (GObject *castitem)
 
void initialize_move (GObject *castitem, Glib::ObjectBase *previous_wrapper)
 

Related Functions

(Note that these are not member functions.)

Glib::RefPtr< Gdk::Colormapwrap (GdkColormap* object, bool take_copy=false)
 A Glib::wrap() method for this object. More...

 

Additional Inherited Members

- Public Types inherited from Glib::Object
typedef void(*)(gpointer data DestroyNotify)
 
- Public Types inherited from sigc::trackable
typedef internal::func_destroy_notify func_destroy_notify
 

Detailed Description

A Colormap is an object that contains the mapping between the color values stored in memory and the RGB values that are used to display color values.

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.

Constructor & Destructor Documentation

Gdk::Colormap::Colormap ( Colormap&&  src)
noexcept
Gdk::Colormap::~Colormap ( )
overridenoexcept
Gdk::Colormap::Colormap ( const Glib::RefPtr< Visual >&  visual,
bool  allocate 
)
explicitprotected

Member Function Documentation

bool Gdk::Colormap::alloc_color ( Color color,
bool  writeable = false,
bool  best_match = true 
)

Allocates a single color from a colormap.

Parameters
colorThe color to allocate. On return the pixel field will be filled in if allocation succeeds.
writeableIf true, the color is allocated writeable (their values can later be changed using gdk_color_change()). Writeable colors cannot be shared between applications.
best_matchIf true, GDK will attempt to do matching against existing colors if the color cannot be allocated as requested.
Returns
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<Screen> Gdk::Colormap::get_screen ( )

Gets the screen for which this colormap was created.

Since gtkmm 2.2:
Returns
The screen for which this colormap was created.
Glib::RefPtr<const Screen> Gdk::Colormap::get_screen ( ) const

Gets the screen for which this colormap was created.

Since gtkmm 2.2:
Returns
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())

Returns
The default colormap.
static GType Gdk::Colormap::get_type ( )
static

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

Glib::RefPtr<Visual> Gdk::Colormap::get_visual ( )

Returns the visual for which a given colormap was created.

Returns
The visual of the colormap.
Glib::RefPtr<const Visual> Gdk::Colormap::get_visual ( ) const

Returns the visual for which a given colormap was created.

Returns
The visual of the colormap.
GdkColormap* Gdk::Colormap::gobj ( )
inline

Provides access to the underlying C GObject.

const GdkColormap* Gdk::Colormap::gobj ( ) const
inline

Provides access to the underlying C GObject.

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.

Colormap& Gdk::Colormap::operator= ( Colormap&&  src)
noexcept
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.

Parameters
pixelPixel value in hardware display format.
resultGdk::Color with red, green, blue fields initialized.

Friends And Related Function Documentation

Glib::RefPtr< Gdk::Colormap > wrap ( GdkColormap *  object,
bool  take_copy = false 
)
related

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

Parameters
objectThe C instance.
take_copyFalse 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.

The documentation for this class was generated from the following file:
  • gdkmm/colormap.h