Classes | Typedefs | Functions | Variables

go-color-selector.c File Reference

#include <goffice/goffice-config.h>
#include "go-color-selector.h"
#include <goffice/utils/go-color.h>
#include <goffice/gtk/go-color-group.h>
#include <glib/gi18n-lib.h>
#include <gtk/gtkcolorsel.h>
#include <gtk/gtkcolorseldialog.h>

Classes

struct  _ColorNamePair
struct  GOColorSelectorState

Typedefs

typedef struct _ColorNamePair ColorNamePair

Functions

static void go_color_selector_state_free (gpointer data)
static int get_index (int n_swatches, GOColorGroup *color_group, GOColor color)
static GOColor get_color (int n_swatches, GOColorGroup *color_group, int index)
GOColor go_color_selector_get_color (GOSelector *selector, gboolean *is_auto)
 go_color_selector_get_color: : a GOSelector : non-NULL result storage
static cairo_status_t draw_check (cairo_surface_t *surface, int width, int height)
static void go_color_palette_render_func (cairo_t *cr, GdkRectangle const *area, int index, gpointer data)
static void cb_color_dialog_response (GtkColorSelectionDialog *color_dialog, gint response, GOSelector *selector)
static void cb_combo_custom_activate (GOPalette *palette, GOSelector *selector)
static void go_color_selector_drag_data_received (GOSelector *selector, gpointer data)
static gpointer go_color_selector_drag_data_get (GOSelector *selector)
static void go_color_selector_drag_fill_icon (GOSelector *selector, GdkPixbuf *pixbuf)
GtkWidget * go_color_selector_new (GOColor initial_color, GOColor default_color, char const *group)
 go_color_selector_new: : initially selected color : automatic color : a GOColorGroup name
gboolean go_color_selector_set_color (GOSelector *selector, GOColor color)
 go_color_selector_set_color: : a color selector : a color

Variables

static ColorNamePair const default_color_set []

Typedef Documentation

typedef struct _ColorNamePair ColorNamePair

Function Documentation

static void cb_color_dialog_response ( GtkColorSelectionDialog *  color_dialog,
gint  response,
GOSelector *  selector 
) [static]
static void cb_combo_custom_activate ( GOPalette palette,
GOSelector *  selector 
) [static]
static cairo_status_t draw_check ( cairo_surface_t *  surface,
int  width,
int  height 
) [static]
static GOColor get_color ( int  n_swatches,
GOColorGroup color_group,
int  index 
) [static]
static int get_index ( int  n_swatches,
GOColorGroup color_group,
GOColor  color 
) [static]
static void go_color_palette_render_func ( cairo_t *  cr,
GdkRectangle const *  area,
int  index,
gpointer  data 
) [static]
static gpointer go_color_selector_drag_data_get ( GOSelector *  selector  )  [static]
static void go_color_selector_drag_data_received ( GOSelector *  selector,
gpointer  data 
) [static]
static void go_color_selector_drag_fill_icon ( GOSelector *  selector,
GdkPixbuf *  pixbuf 
) [static]
GOColor go_color_selector_get_color ( GOSelector *  selector,
gboolean *  is_auto 
)

go_color_selector_get_color: : a GOSelector : non-NULL result storage

Retrieves current color selection of a GOSelector created via . will be set to TRUE if current selection was set by clicking on automatic palette item.

Returns: current color selection.

References GOColorSelectorState::color_group, GOColorSelectorState::default_color, get_color(), GO_COLOR_WHITE, GOColorSelectorState::n_swatches, and RGB_WHITE.

GtkWidget* go_color_selector_new ( GOColor  initial_color,
GOColor  default_color,
char const *  group 
)

go_color_selector_new: : initially selected color : automatic color : a GOColorGroup name

Creates a new color selector, with selected. Palette will contain an automatic button, which can be used to select . This widget supports color drag and drop.

Returns: a GtkWidget.

References GOColorSelectorState::allow_alpha, cb_combo_custom_activate(), GOColorSelectorState::color_group, GOColorSelectorState::default_color, get_index(), go_color_group_fetch(), go_color_palette_render_func(), go_color_selector_drag_data_get(), go_color_selector_drag_data_received(), go_color_selector_drag_fill_icon(), go_color_selector_state_free(), GO_PALETTE, go_palette_new(), go_palette_show_automatic(), go_palette_show_custom(), and GOColorSelectorState::n_swatches.

gboolean go_color_selector_set_color ( GOSelector *  selector,
GOColor  color 
)

go_color_selector_set_color: : a color selector : a color

Sets current selection to . An "activate" signal will be emited. Selector has to be a selector created via .

Returns: TRUE if selection changed.

References GOColorSelectorState::color_group, get_index(), and GOColorSelectorState::n_swatches.

static void go_color_selector_state_free ( gpointer  data  )  [static]

Variable Documentation

ColorNamePair const default_color_set[] [static]