GtkColorSelection

GtkColorSelection — A widget used to select a color

Functions

Properties

guint current-alpha Read / Write
GdkColor * current-color Read / Write
gboolean has-opacity-control Read / Write
gboolean has-palette Read / Write

Signals

void color-changed Run First

Types and Values

Object Hierarchy

    GObject
    ╰── GInitiallyUnowned
        ╰── GtkObject
            ╰── GtkWidget
                ╰── GtkContainer
                    ╰── GtkBox
                        ╰── GtkVBox
                            ╰── GtkColorSelection

Implemented Interfaces

GtkColorSelection implements AtkImplementorIface, GtkBuildable and GtkOrientable.

Includes

#include <gtk/gtk.h>

Description

The GtkColorSelection is a widget that is used to select a color. It consists of a color wheel and number of sliders and entry boxes for color parameters such as hue, saturation, value, red, green, blue, and opacity. It is found on the standard color selection dialog box GtkColorSelectionDialog.

Functions

gtk_color_selection_new ()

GtkWidget *
gtk_color_selection_new (void);

Creates a new GtkColorSelection.

Returns

a new GtkColorSelection


gtk_color_selection_set_update_policy ()

void
gtk_color_selection_set_update_policy (GtkColorSelection *colorsel,
                                       GtkUpdateType policy);

gtk_color_selection_set_update_policy is deprecated and should not be used in newly-written code.

Sets the policy controlling when the color_changed signals are emitted. The available policies are:

Parameters

colorsel

a GtkColorSelection.

 

policy

a GtkUpdateType value indicating the desired policy.

 

gtk_color_selection_set_has_opacity_control ()

void
gtk_color_selection_set_has_opacity_control
                               (GtkColorSelection *colorsel,
                                gboolean has_opacity);

Sets the colorsel to use or not use opacity.

Parameters

colorsel

a GtkColorSelection.

 

has_opacity

TRUE if colorsel can set the opacity, FALSE otherwise.

 

gtk_color_selection_get_has_opacity_control ()

gboolean
gtk_color_selection_get_has_opacity_control
                               (GtkColorSelection *colorsel);

Determines whether the colorsel has an opacity control.

Parameters

colorsel

a GtkColorSelection.

 

Returns

TRUE if the colorsel has an opacity control. FALSE if it does't.


gtk_color_selection_set_has_palette ()

void
gtk_color_selection_set_has_palette (GtkColorSelection *colorsel,
                                     gboolean has_palette);

Shows and hides the palette based upon the value of has_palette .

Parameters

colorsel

a GtkColorSelection.

 

has_palette

TRUE if palette is to be visible, FALSE otherwise.

 

gtk_color_selection_get_has_palette ()

gboolean
gtk_color_selection_get_has_palette (GtkColorSelection *colorsel);

Determines whether the color selector has a color palette.

Parameters

colorsel

a GtkColorSelection.

 

Returns

TRUE if the selector has a palette. FALSE if it hasn't.


gtk_color_selection_get_current_alpha ()

guint16
gtk_color_selection_get_current_alpha (GtkColorSelection *colorsel);

Returns the current alpha value.

Parameters

colorsel

a GtkColorSelection.

 

Returns

an integer between 0 and 65535.


gtk_color_selection_set_current_alpha ()

void
gtk_color_selection_set_current_alpha (GtkColorSelection *colorsel,
                                       guint16 alpha);

Sets the current opacity to be alpha . The first time this is called, it will also set the original opacity to be alpha too.

Parameters

colorsel

a GtkColorSelection.

 

alpha

an integer between 0 and 65535.

 

gtk_color_selection_get_current_color ()

void
gtk_color_selection_get_current_color (GtkColorSelection *colorsel,
                                       GdkColor *color);

Sets color to be the current color in the GtkColorSelection widget.

Parameters

colorsel

a GtkColorSelection.

 

color

a GdkColor to fill in with the current color.

[out]

gtk_color_selection_set_current_color ()

void
gtk_color_selection_set_current_color (GtkColorSelection *colorsel,
                                       const GdkColor *color);

Sets the current color to be color . The first time this is called, it will also set the original color to be color too.

Parameters

colorsel

a GtkColorSelection.

 

color

A GdkColor to set the current color with.

 

gtk_color_selection_get_previous_alpha ()

guint16
gtk_color_selection_get_previous_alpha
                               (GtkColorSelection *colorsel);

Returns the previous alpha value.

Parameters

colorsel

a GtkColorSelection.

 

Returns

an integer between 0 and 65535.


gtk_color_selection_set_previous_alpha ()

void
gtk_color_selection_set_previous_alpha
                               (GtkColorSelection *colorsel,
                                guint16 alpha);

Sets the 'previous' alpha to be alpha . This function should be called with some hesitations, as it might seem confusing to have that alpha change.

Parameters

colorsel

a GtkColorSelection.

 

alpha

an integer between 0 and 65535.

 

gtk_color_selection_get_previous_color ()

void
gtk_color_selection_get_previous_color
                               (GtkColorSelection *colorsel,
                                GdkColor *color);

Fills color in with the original color value.

Parameters

colorsel

a GtkColorSelection.

 

color

a GdkColor to fill in with the original color value.

[out]

gtk_color_selection_set_previous_color ()

void
gtk_color_selection_set_previous_color
                               (GtkColorSelection *colorsel,
                                const GdkColor *color);

Sets the 'previous' color to be color . This function should be called with some hesitations, as it might seem confusing to have that color change. Calling gtk_color_selection_set_current_color() will also set this color the first time it is called.

Parameters

colorsel

a GtkColorSelection.

 

color

a GdkColor to set the previous color with.

 

gtk_color_selection_is_adjusting ()

gboolean
gtk_color_selection_is_adjusting (GtkColorSelection *colorsel);

Gets the current state of the colorsel .

Parameters

colorsel

a GtkColorSelection.

 

Returns

TRUE if the user is currently dragging a color around, and FALSE if the selection has stopped.


gtk_color_selection_palette_from_string ()

gboolean
gtk_color_selection_palette_from_string
                               (const gchar *str,
                                GdkColor **colors,
                                gint *n_colors);

Parses a color palette string; the string is a colon-separated list of color names readable by gdk_color_parse().

Parameters

str

a string encoding a color palette.

 

colors

return location for allocated array of GdkColor.

[out][array length=n_colors]

n_colors

return location for length of array.

 

Returns

TRUE if a palette was successfully parsed.


gtk_color_selection_palette_to_string ()

gchar *
gtk_color_selection_palette_to_string (const GdkColor *colors,
                                       gint n_colors);

Encodes a palette as a string, useful for persistent storage.

Parameters

colors

an array of colors.

[array length=n_colors]

n_colors

length of the array.

 

Returns

allocated string encoding the palette.


gtk_color_selection_set_change_palette_hook ()

GtkColorSelectionChangePaletteFunc
gtk_color_selection_set_change_palette_hook
                               (GtkColorSelectionChangePaletteFunc func);

gtk_color_selection_set_change_palette_hook has been deprecated since version 2.4 and should not be used in newly-written code.

This function does not work in multihead environments. Use gtk_color_selection_set_change_palette_with_screen_hook() instead.

Installs a global function to be called whenever the user tries to modify the palette in a color selection. This function should save the new palette contents, and update the GtkSettings property "gtk-color-palette" so all GtkColorSelection widgets will be modified.

Parameters

func

a function to call when the custom palette needs saving.

 

Returns

the previous change palette hook (that was replaced).


GtkColorSelectionChangePaletteFunc ()

void
(*GtkColorSelectionChangePaletteFunc) (const GdkColor *colors,
                                       gint n_colors);


gtk_color_selection_set_change_palette_with_screen_hook ()

GtkColorSelectionChangePaletteWithScreenFunc
gtk_color_selection_set_change_palette_with_screen_hook
                               (GtkColorSelectionChangePaletteWithScreenFunc func);

Installs a global function to be called whenever the user tries to modify the palette in a color selection. This function should save the new palette contents, and update the GtkSettings property "gtk-color-palette" so all GtkColorSelection widgets will be modified.

Parameters

func

a function to call when the custom palette needs saving.

 

Returns

the previous change palette hook (that was replaced).

Since 2.2


GtkColorSelectionChangePaletteWithScreenFunc ()

void
(*GtkColorSelectionChangePaletteWithScreenFunc)
                               (GdkScreen *screen,
                                const GdkColor *colors,
                                gint n_colors);

Since 2.2


gtk_color_selection_set_color ()

void
gtk_color_selection_set_color (GtkColorSelection *colorsel,
                               gdouble *color);

gtk_color_selection_set_color has been deprecated since version 2.0 and should not be used in newly-written code.

Use gtk_color_selection_set_current_color() instead.

Sets the current color to be color . The first time this is called, it will also set the original color to be color too.

Parameters

colorsel

a GtkColorSelection.

 

color

an array of 4 doubles specifying the red, green, blue and opacity to set the current color to.

 

gtk_color_selection_get_color ()

void
gtk_color_selection_get_color (GtkColorSelection *colorsel,
                               gdouble *color);

gtk_color_selection_get_color has been deprecated since version 2.0 and should not be used in newly-written code.

Use gtk_color_selection_get_current_color() instead.

Sets color to be the current color in the GtkColorSelection widget.

Parameters

colorsel

a GtkColorSelection.

 

color

an array of 4 gdouble to fill in with the current color.

 

Types and Values

struct GtkColorSelection

struct GtkColorSelection;

The GtkColorSelection struct contains private data only, and should be accessed using the functions below.

Property Details

The “current-alpha” property

  “current-alpha”            guint

The current opacity value (0 fully transparent, 65535 fully opaque).

Flags: Read / Write

Allowed values: <= 65535

Default value: 65535


The “current-color” property

  “current-color”            GdkColor *

The current color.

Flags: Read / Write


The “has-opacity-control” property

  “has-opacity-control”      gboolean

Whether the color selector should allow setting opacity.

Flags: Read / Write

Default value: FALSE


The “has-palette” property

  “has-palette”              gboolean

Whether a palette should be used.

Flags: Read / Write

Default value: FALSE

Signal Details

The “color-changed” signal

void
user_function (GtkColorSelection *colorselection,
               gpointer           user_data)

This signal is emitted when the color changes in the GtkColorSelection according to its update policy.

Parameters

colorselection

the object which received the signal.

 

user_data

user data set when the signal handler was connected.

 

Flags: Run First