GTK+ 2 Reference Manual |
---|
Since version 2.6, GTK+ provides the GtkColorButton widget as a replacement for the GnomeColorPicker widget in the libgnomeui library.
Porting an application from GnomeColorPicker to GtkColorButton is very simple. GtkColorButton doesn't support dithering (since it is rarely needed on modern hardware), and it doesn't have setters and getters to set the color from floating point or integer components. So instead of
1 2 3 |
guint red, green, blue, alpha; /* ... */ gnome_color_picker_set_i8 (color_picker, red, green, blue, alpha); |
you have to write
1 2 3 4 5 6 7 |
GdkColor color; color.red = red << 8; color.green = green << 8; color.blue = blue << 8; gtk_color_button_set_color (color_picker, &color); gtk_color_button_set_alpha (color_picker, alpha << 8); |
and similarly for the setters taking other number formats. For
no conversion is needed,
for gnome_color_picker_set_i16()
, you need to convert
the color components like this:
gnome_color_picker_set_d()
1 2 3 |
color.red = (guint16) (red * 65535.0 + 0.5); color.green = (guint16) (green * 65535.0 + 0.5); color.blue = (guint16) (blue * 65535.0 + 0.5); |