mirror of https://github.com/GNOME/gimp.git
made the color notebook a GimpColorSelector subclass so they have the same
2002-10-29 Michael Natterer <mitch@gimp.org> * libgimpwidgets/gimpcolornotebook.[ch]: made the color notebook a GimpColorSelector subclass so they have the same API. * app/gui/color-notebook.c: changed accordingly.
This commit is contained in:
parent
e4cd5ecdcb
commit
c97782f358
|
@ -1,3 +1,10 @@
|
||||||
|
2002-10-29 Michael Natterer <mitch@gimp.org>
|
||||||
|
|
||||||
|
* libgimpwidgets/gimpcolornotebook.[ch]: made the color notebook
|
||||||
|
a GimpColorSelector subclass so they have the same API.
|
||||||
|
|
||||||
|
* app/gui/color-notebook.c: changed accordingly.
|
||||||
|
|
||||||
2002-10-29 Sven Neumann <sven@gimp.org>
|
2002-10-29 Sven Neumann <sven@gimp.org>
|
||||||
|
|
||||||
* libgimpmodule/gimpmodule.c
|
* libgimpmodule/gimpmodule.c
|
||||||
|
|
|
@ -108,11 +108,11 @@ static void color_notebook_reset_clicked (ColorNotebook *cnp);
|
||||||
static void color_notebook_new_color_changed (GtkWidget *widget,
|
static void color_notebook_new_color_changed (GtkWidget *widget,
|
||||||
ColorNotebook *cnp);
|
ColorNotebook *cnp);
|
||||||
|
|
||||||
static void color_notebook_notebook_changed (GimpColorNotebook *notebook,
|
static void color_notebook_notebook_changed (GimpColorSelector *selector,
|
||||||
const GimpRGB *rgb,
|
const GimpRGB *rgb,
|
||||||
const GimpHSV *hsv,
|
const GimpHSV *hsv,
|
||||||
ColorNotebook *cnp);
|
ColorNotebook *cnp);
|
||||||
static void color_notebook_switch_page (GimpColorNotebook *notebook,
|
static void color_notebook_switch_page (GtkWidget *widget,
|
||||||
GtkNotebookPage *page,
|
GtkNotebookPage *page,
|
||||||
guint page_num,
|
guint page_num,
|
||||||
ColorNotebook *cnp);
|
ColorNotebook *cnp);
|
||||||
|
@ -366,21 +366,20 @@ color_notebook_new_internal (GimpViewable *viewable,
|
||||||
gtk_box_pack_start (GTK_BOX (main_hbox), right_vbox, TRUE, TRUE, 0);
|
gtk_box_pack_start (GTK_BOX (main_hbox), right_vbox, TRUE, TRUE, 0);
|
||||||
gtk_widget_show (right_vbox);
|
gtk_widget_show (right_vbox);
|
||||||
|
|
||||||
cnp->notebook = gimp_color_notebook_new ();
|
cnp->notebook = gimp_color_selector_new (GIMP_TYPE_COLOR_NOTEBOOK,
|
||||||
gimp_color_notebook_set_channel (GIMP_COLOR_NOTEBOOK (cnp->notebook),
|
&cnp->rgb,
|
||||||
cnp->active_channel);
|
&cnp->hsv,
|
||||||
gimp_color_notebook_set_color (GIMP_COLOR_NOTEBOOK (cnp->notebook),
|
cnp->active_channel);
|
||||||
&cnp->rgb, &cnp->hsv);
|
gtk_box_pack_start (GTK_BOX (left_vbox), cnp->notebook, TRUE, TRUE, 0);
|
||||||
gtk_box_pack_start (GTK_BOX (left_vbox), cnp->notebook,
|
|
||||||
TRUE, TRUE, 0);
|
|
||||||
gtk_widget_show (cnp->notebook);
|
gtk_widget_show (cnp->notebook);
|
||||||
|
|
||||||
g_signal_connect (G_OBJECT (cnp->notebook), "color_changed",
|
g_signal_connect (G_OBJECT (cnp->notebook), "color_changed",
|
||||||
G_CALLBACK (color_notebook_notebook_changed),
|
G_CALLBACK (color_notebook_notebook_changed),
|
||||||
cnp);
|
cnp);
|
||||||
g_signal_connect_after (G_OBJECT (cnp->notebook), "switch_page",
|
g_signal_connect (G_OBJECT (GIMP_COLOR_NOTEBOOK (cnp->notebook)->notebook),
|
||||||
G_CALLBACK (color_notebook_switch_page),
|
"switch_page",
|
||||||
cnp);
|
G_CALLBACK (color_notebook_switch_page),
|
||||||
|
cnp);
|
||||||
|
|
||||||
/* The table for the color_areas */
|
/* The table for the color_areas */
|
||||||
table = gtk_table_new (2, 4, FALSE);
|
table = gtk_table_new (2, 4, FALSE);
|
||||||
|
@ -587,12 +586,10 @@ color_notebook_ok_callback (GtkWidget *widget,
|
||||||
color_history_add_clicked (NULL, cnp);
|
color_history_add_clicked (NULL, cnp);
|
||||||
|
|
||||||
if (cnp->callback)
|
if (cnp->callback)
|
||||||
{
|
cnp->callback (cnp,
|
||||||
(* cnp->callback) (cnp,
|
&cnp->rgb,
|
||||||
&cnp->rgb,
|
COLOR_NOTEBOOK_OK,
|
||||||
COLOR_NOTEBOOK_OK,
|
cnp->client_data);
|
||||||
cnp->client_data);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
@ -600,12 +597,10 @@ color_notebook_cancel_callback (GtkWidget *widget,
|
||||||
ColorNotebook *cnp)
|
ColorNotebook *cnp)
|
||||||
{
|
{
|
||||||
if (cnp->callback)
|
if (cnp->callback)
|
||||||
{
|
cnp->callback (cnp,
|
||||||
(* cnp->callback) (cnp,
|
&cnp->orig_rgb,
|
||||||
&cnp->orig_rgb,
|
COLOR_NOTEBOOK_CANCEL,
|
||||||
COLOR_NOTEBOOK_CANCEL,
|
cnp->client_data);
|
||||||
cnp->client_data);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
@ -616,12 +611,12 @@ color_notebook_update (ColorNotebook *cnp,
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (update & UPDATE_NOTEBOOK)
|
if (update & UPDATE_NOTEBOOK)
|
||||||
gimp_color_notebook_set_color (GIMP_COLOR_NOTEBOOK (cnp->notebook),
|
gimp_color_selector_set_color (GIMP_COLOR_SELECTOR (cnp->notebook),
|
||||||
&cnp->rgb,
|
&cnp->rgb,
|
||||||
&cnp->hsv);
|
&cnp->hsv);
|
||||||
|
|
||||||
if (update & UPDATE_CHANNEL)
|
if (update & UPDATE_CHANNEL)
|
||||||
gimp_color_notebook_set_channel (GIMP_COLOR_NOTEBOOK (cnp->notebook),
|
gimp_color_selector_set_channel (GIMP_COLOR_SELECTOR (cnp->notebook),
|
||||||
cnp->active_channel);
|
cnp->active_channel);
|
||||||
|
|
||||||
if (update & UPDATE_SCALES)
|
if (update & UPDATE_SCALES)
|
||||||
|
@ -650,10 +645,10 @@ color_notebook_update (ColorNotebook *cnp,
|
||||||
if (update & UPDATE_CALLER)
|
if (update & UPDATE_CALLER)
|
||||||
{
|
{
|
||||||
if (cnp->wants_updates && cnp->callback)
|
if (cnp->wants_updates && cnp->callback)
|
||||||
(* cnp->callback) (cnp,
|
cnp->callback (cnp,
|
||||||
&cnp->rgb,
|
&cnp->rgb,
|
||||||
COLOR_NOTEBOOK_UPDATE,
|
COLOR_NOTEBOOK_UPDATE,
|
||||||
cnp->client_data);
|
cnp->client_data);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -714,10 +709,10 @@ color_notebook_new_color_changed (GtkWidget *widget,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/* color notebook callback */
|
/* color notebook callbacks */
|
||||||
|
|
||||||
static void
|
static void
|
||||||
color_notebook_notebook_changed (GimpColorNotebook *notebook,
|
color_notebook_notebook_changed (GimpColorSelector *selector,
|
||||||
const GimpRGB *rgb,
|
const GimpRGB *rgb,
|
||||||
const GimpHSV *hsv,
|
const GimpHSV *hsv,
|
||||||
ColorNotebook *cnp)
|
ColorNotebook *cnp)
|
||||||
|
@ -732,12 +727,15 @@ color_notebook_notebook_changed (GimpColorNotebook *notebook,
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
color_notebook_switch_page (GimpColorNotebook *notebook,
|
color_notebook_switch_page (GtkWidget *widget,
|
||||||
GtkNotebookPage *page,
|
GtkNotebookPage *page,
|
||||||
guint page_num,
|
guint page_num,
|
||||||
ColorNotebook *cnp)
|
ColorNotebook *cnp)
|
||||||
{
|
{
|
||||||
gboolean set_channel;
|
GimpColorNotebook *notebook;
|
||||||
|
gboolean set_channel;
|
||||||
|
|
||||||
|
notebook = GIMP_COLOR_NOTEBOOK (cnp->notebook);
|
||||||
|
|
||||||
set_channel =
|
set_channel =
|
||||||
(GIMP_COLOR_SELECTOR_GET_CLASS (notebook->cur_page)->set_channel != NULL);
|
(GIMP_COLOR_SELECTOR_GET_CLASS (notebook->cur_page)->set_channel != NULL);
|
||||||
|
|
|
@ -108,11 +108,11 @@ static void color_notebook_reset_clicked (ColorNotebook *cnp);
|
||||||
static void color_notebook_new_color_changed (GtkWidget *widget,
|
static void color_notebook_new_color_changed (GtkWidget *widget,
|
||||||
ColorNotebook *cnp);
|
ColorNotebook *cnp);
|
||||||
|
|
||||||
static void color_notebook_notebook_changed (GimpColorNotebook *notebook,
|
static void color_notebook_notebook_changed (GimpColorSelector *selector,
|
||||||
const GimpRGB *rgb,
|
const GimpRGB *rgb,
|
||||||
const GimpHSV *hsv,
|
const GimpHSV *hsv,
|
||||||
ColorNotebook *cnp);
|
ColorNotebook *cnp);
|
||||||
static void color_notebook_switch_page (GimpColorNotebook *notebook,
|
static void color_notebook_switch_page (GtkWidget *widget,
|
||||||
GtkNotebookPage *page,
|
GtkNotebookPage *page,
|
||||||
guint page_num,
|
guint page_num,
|
||||||
ColorNotebook *cnp);
|
ColorNotebook *cnp);
|
||||||
|
@ -366,21 +366,20 @@ color_notebook_new_internal (GimpViewable *viewable,
|
||||||
gtk_box_pack_start (GTK_BOX (main_hbox), right_vbox, TRUE, TRUE, 0);
|
gtk_box_pack_start (GTK_BOX (main_hbox), right_vbox, TRUE, TRUE, 0);
|
||||||
gtk_widget_show (right_vbox);
|
gtk_widget_show (right_vbox);
|
||||||
|
|
||||||
cnp->notebook = gimp_color_notebook_new ();
|
cnp->notebook = gimp_color_selector_new (GIMP_TYPE_COLOR_NOTEBOOK,
|
||||||
gimp_color_notebook_set_channel (GIMP_COLOR_NOTEBOOK (cnp->notebook),
|
&cnp->rgb,
|
||||||
cnp->active_channel);
|
&cnp->hsv,
|
||||||
gimp_color_notebook_set_color (GIMP_COLOR_NOTEBOOK (cnp->notebook),
|
cnp->active_channel);
|
||||||
&cnp->rgb, &cnp->hsv);
|
gtk_box_pack_start (GTK_BOX (left_vbox), cnp->notebook, TRUE, TRUE, 0);
|
||||||
gtk_box_pack_start (GTK_BOX (left_vbox), cnp->notebook,
|
|
||||||
TRUE, TRUE, 0);
|
|
||||||
gtk_widget_show (cnp->notebook);
|
gtk_widget_show (cnp->notebook);
|
||||||
|
|
||||||
g_signal_connect (G_OBJECT (cnp->notebook), "color_changed",
|
g_signal_connect (G_OBJECT (cnp->notebook), "color_changed",
|
||||||
G_CALLBACK (color_notebook_notebook_changed),
|
G_CALLBACK (color_notebook_notebook_changed),
|
||||||
cnp);
|
cnp);
|
||||||
g_signal_connect_after (G_OBJECT (cnp->notebook), "switch_page",
|
g_signal_connect (G_OBJECT (GIMP_COLOR_NOTEBOOK (cnp->notebook)->notebook),
|
||||||
G_CALLBACK (color_notebook_switch_page),
|
"switch_page",
|
||||||
cnp);
|
G_CALLBACK (color_notebook_switch_page),
|
||||||
|
cnp);
|
||||||
|
|
||||||
/* The table for the color_areas */
|
/* The table for the color_areas */
|
||||||
table = gtk_table_new (2, 4, FALSE);
|
table = gtk_table_new (2, 4, FALSE);
|
||||||
|
@ -587,12 +586,10 @@ color_notebook_ok_callback (GtkWidget *widget,
|
||||||
color_history_add_clicked (NULL, cnp);
|
color_history_add_clicked (NULL, cnp);
|
||||||
|
|
||||||
if (cnp->callback)
|
if (cnp->callback)
|
||||||
{
|
cnp->callback (cnp,
|
||||||
(* cnp->callback) (cnp,
|
&cnp->rgb,
|
||||||
&cnp->rgb,
|
COLOR_NOTEBOOK_OK,
|
||||||
COLOR_NOTEBOOK_OK,
|
cnp->client_data);
|
||||||
cnp->client_data);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
@ -600,12 +597,10 @@ color_notebook_cancel_callback (GtkWidget *widget,
|
||||||
ColorNotebook *cnp)
|
ColorNotebook *cnp)
|
||||||
{
|
{
|
||||||
if (cnp->callback)
|
if (cnp->callback)
|
||||||
{
|
cnp->callback (cnp,
|
||||||
(* cnp->callback) (cnp,
|
&cnp->orig_rgb,
|
||||||
&cnp->orig_rgb,
|
COLOR_NOTEBOOK_CANCEL,
|
||||||
COLOR_NOTEBOOK_CANCEL,
|
cnp->client_data);
|
||||||
cnp->client_data);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
@ -616,12 +611,12 @@ color_notebook_update (ColorNotebook *cnp,
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (update & UPDATE_NOTEBOOK)
|
if (update & UPDATE_NOTEBOOK)
|
||||||
gimp_color_notebook_set_color (GIMP_COLOR_NOTEBOOK (cnp->notebook),
|
gimp_color_selector_set_color (GIMP_COLOR_SELECTOR (cnp->notebook),
|
||||||
&cnp->rgb,
|
&cnp->rgb,
|
||||||
&cnp->hsv);
|
&cnp->hsv);
|
||||||
|
|
||||||
if (update & UPDATE_CHANNEL)
|
if (update & UPDATE_CHANNEL)
|
||||||
gimp_color_notebook_set_channel (GIMP_COLOR_NOTEBOOK (cnp->notebook),
|
gimp_color_selector_set_channel (GIMP_COLOR_SELECTOR (cnp->notebook),
|
||||||
cnp->active_channel);
|
cnp->active_channel);
|
||||||
|
|
||||||
if (update & UPDATE_SCALES)
|
if (update & UPDATE_SCALES)
|
||||||
|
@ -650,10 +645,10 @@ color_notebook_update (ColorNotebook *cnp,
|
||||||
if (update & UPDATE_CALLER)
|
if (update & UPDATE_CALLER)
|
||||||
{
|
{
|
||||||
if (cnp->wants_updates && cnp->callback)
|
if (cnp->wants_updates && cnp->callback)
|
||||||
(* cnp->callback) (cnp,
|
cnp->callback (cnp,
|
||||||
&cnp->rgb,
|
&cnp->rgb,
|
||||||
COLOR_NOTEBOOK_UPDATE,
|
COLOR_NOTEBOOK_UPDATE,
|
||||||
cnp->client_data);
|
cnp->client_data);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -714,10 +709,10 @@ color_notebook_new_color_changed (GtkWidget *widget,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/* color notebook callback */
|
/* color notebook callbacks */
|
||||||
|
|
||||||
static void
|
static void
|
||||||
color_notebook_notebook_changed (GimpColorNotebook *notebook,
|
color_notebook_notebook_changed (GimpColorSelector *selector,
|
||||||
const GimpRGB *rgb,
|
const GimpRGB *rgb,
|
||||||
const GimpHSV *hsv,
|
const GimpHSV *hsv,
|
||||||
ColorNotebook *cnp)
|
ColorNotebook *cnp)
|
||||||
|
@ -732,12 +727,15 @@ color_notebook_notebook_changed (GimpColorNotebook *notebook,
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
color_notebook_switch_page (GimpColorNotebook *notebook,
|
color_notebook_switch_page (GtkWidget *widget,
|
||||||
GtkNotebookPage *page,
|
GtkNotebookPage *page,
|
||||||
guint page_num,
|
guint page_num,
|
||||||
ColorNotebook *cnp)
|
ColorNotebook *cnp)
|
||||||
{
|
{
|
||||||
gboolean set_channel;
|
GimpColorNotebook *notebook;
|
||||||
|
gboolean set_channel;
|
||||||
|
|
||||||
|
notebook = GIMP_COLOR_NOTEBOOK (cnp->notebook);
|
||||||
|
|
||||||
set_channel =
|
set_channel =
|
||||||
(GIMP_COLOR_SELECTOR_GET_CLASS (notebook->cur_page)->set_channel != NULL);
|
(GIMP_COLOR_SELECTOR_GET_CLASS (notebook->cur_page)->set_channel != NULL);
|
||||||
|
|
|
@ -108,11 +108,11 @@ static void color_notebook_reset_clicked (ColorNotebook *cnp);
|
||||||
static void color_notebook_new_color_changed (GtkWidget *widget,
|
static void color_notebook_new_color_changed (GtkWidget *widget,
|
||||||
ColorNotebook *cnp);
|
ColorNotebook *cnp);
|
||||||
|
|
||||||
static void color_notebook_notebook_changed (GimpColorNotebook *notebook,
|
static void color_notebook_notebook_changed (GimpColorSelector *selector,
|
||||||
const GimpRGB *rgb,
|
const GimpRGB *rgb,
|
||||||
const GimpHSV *hsv,
|
const GimpHSV *hsv,
|
||||||
ColorNotebook *cnp);
|
ColorNotebook *cnp);
|
||||||
static void color_notebook_switch_page (GimpColorNotebook *notebook,
|
static void color_notebook_switch_page (GtkWidget *widget,
|
||||||
GtkNotebookPage *page,
|
GtkNotebookPage *page,
|
||||||
guint page_num,
|
guint page_num,
|
||||||
ColorNotebook *cnp);
|
ColorNotebook *cnp);
|
||||||
|
@ -366,21 +366,20 @@ color_notebook_new_internal (GimpViewable *viewable,
|
||||||
gtk_box_pack_start (GTK_BOX (main_hbox), right_vbox, TRUE, TRUE, 0);
|
gtk_box_pack_start (GTK_BOX (main_hbox), right_vbox, TRUE, TRUE, 0);
|
||||||
gtk_widget_show (right_vbox);
|
gtk_widget_show (right_vbox);
|
||||||
|
|
||||||
cnp->notebook = gimp_color_notebook_new ();
|
cnp->notebook = gimp_color_selector_new (GIMP_TYPE_COLOR_NOTEBOOK,
|
||||||
gimp_color_notebook_set_channel (GIMP_COLOR_NOTEBOOK (cnp->notebook),
|
&cnp->rgb,
|
||||||
cnp->active_channel);
|
&cnp->hsv,
|
||||||
gimp_color_notebook_set_color (GIMP_COLOR_NOTEBOOK (cnp->notebook),
|
cnp->active_channel);
|
||||||
&cnp->rgb, &cnp->hsv);
|
gtk_box_pack_start (GTK_BOX (left_vbox), cnp->notebook, TRUE, TRUE, 0);
|
||||||
gtk_box_pack_start (GTK_BOX (left_vbox), cnp->notebook,
|
|
||||||
TRUE, TRUE, 0);
|
|
||||||
gtk_widget_show (cnp->notebook);
|
gtk_widget_show (cnp->notebook);
|
||||||
|
|
||||||
g_signal_connect (G_OBJECT (cnp->notebook), "color_changed",
|
g_signal_connect (G_OBJECT (cnp->notebook), "color_changed",
|
||||||
G_CALLBACK (color_notebook_notebook_changed),
|
G_CALLBACK (color_notebook_notebook_changed),
|
||||||
cnp);
|
cnp);
|
||||||
g_signal_connect_after (G_OBJECT (cnp->notebook), "switch_page",
|
g_signal_connect (G_OBJECT (GIMP_COLOR_NOTEBOOK (cnp->notebook)->notebook),
|
||||||
G_CALLBACK (color_notebook_switch_page),
|
"switch_page",
|
||||||
cnp);
|
G_CALLBACK (color_notebook_switch_page),
|
||||||
|
cnp);
|
||||||
|
|
||||||
/* The table for the color_areas */
|
/* The table for the color_areas */
|
||||||
table = gtk_table_new (2, 4, FALSE);
|
table = gtk_table_new (2, 4, FALSE);
|
||||||
|
@ -587,12 +586,10 @@ color_notebook_ok_callback (GtkWidget *widget,
|
||||||
color_history_add_clicked (NULL, cnp);
|
color_history_add_clicked (NULL, cnp);
|
||||||
|
|
||||||
if (cnp->callback)
|
if (cnp->callback)
|
||||||
{
|
cnp->callback (cnp,
|
||||||
(* cnp->callback) (cnp,
|
&cnp->rgb,
|
||||||
&cnp->rgb,
|
COLOR_NOTEBOOK_OK,
|
||||||
COLOR_NOTEBOOK_OK,
|
cnp->client_data);
|
||||||
cnp->client_data);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
@ -600,12 +597,10 @@ color_notebook_cancel_callback (GtkWidget *widget,
|
||||||
ColorNotebook *cnp)
|
ColorNotebook *cnp)
|
||||||
{
|
{
|
||||||
if (cnp->callback)
|
if (cnp->callback)
|
||||||
{
|
cnp->callback (cnp,
|
||||||
(* cnp->callback) (cnp,
|
&cnp->orig_rgb,
|
||||||
&cnp->orig_rgb,
|
COLOR_NOTEBOOK_CANCEL,
|
||||||
COLOR_NOTEBOOK_CANCEL,
|
cnp->client_data);
|
||||||
cnp->client_data);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
@ -616,12 +611,12 @@ color_notebook_update (ColorNotebook *cnp,
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (update & UPDATE_NOTEBOOK)
|
if (update & UPDATE_NOTEBOOK)
|
||||||
gimp_color_notebook_set_color (GIMP_COLOR_NOTEBOOK (cnp->notebook),
|
gimp_color_selector_set_color (GIMP_COLOR_SELECTOR (cnp->notebook),
|
||||||
&cnp->rgb,
|
&cnp->rgb,
|
||||||
&cnp->hsv);
|
&cnp->hsv);
|
||||||
|
|
||||||
if (update & UPDATE_CHANNEL)
|
if (update & UPDATE_CHANNEL)
|
||||||
gimp_color_notebook_set_channel (GIMP_COLOR_NOTEBOOK (cnp->notebook),
|
gimp_color_selector_set_channel (GIMP_COLOR_SELECTOR (cnp->notebook),
|
||||||
cnp->active_channel);
|
cnp->active_channel);
|
||||||
|
|
||||||
if (update & UPDATE_SCALES)
|
if (update & UPDATE_SCALES)
|
||||||
|
@ -650,10 +645,10 @@ color_notebook_update (ColorNotebook *cnp,
|
||||||
if (update & UPDATE_CALLER)
|
if (update & UPDATE_CALLER)
|
||||||
{
|
{
|
||||||
if (cnp->wants_updates && cnp->callback)
|
if (cnp->wants_updates && cnp->callback)
|
||||||
(* cnp->callback) (cnp,
|
cnp->callback (cnp,
|
||||||
&cnp->rgb,
|
&cnp->rgb,
|
||||||
COLOR_NOTEBOOK_UPDATE,
|
COLOR_NOTEBOOK_UPDATE,
|
||||||
cnp->client_data);
|
cnp->client_data);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -714,10 +709,10 @@ color_notebook_new_color_changed (GtkWidget *widget,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/* color notebook callback */
|
/* color notebook callbacks */
|
||||||
|
|
||||||
static void
|
static void
|
||||||
color_notebook_notebook_changed (GimpColorNotebook *notebook,
|
color_notebook_notebook_changed (GimpColorSelector *selector,
|
||||||
const GimpRGB *rgb,
|
const GimpRGB *rgb,
|
||||||
const GimpHSV *hsv,
|
const GimpHSV *hsv,
|
||||||
ColorNotebook *cnp)
|
ColorNotebook *cnp)
|
||||||
|
@ -732,12 +727,15 @@ color_notebook_notebook_changed (GimpColorNotebook *notebook,
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
color_notebook_switch_page (GimpColorNotebook *notebook,
|
color_notebook_switch_page (GtkWidget *widget,
|
||||||
GtkNotebookPage *page,
|
GtkNotebookPage *page,
|
||||||
guint page_num,
|
guint page_num,
|
||||||
ColorNotebook *cnp)
|
ColorNotebook *cnp)
|
||||||
{
|
{
|
||||||
gboolean set_channel;
|
GimpColorNotebook *notebook;
|
||||||
|
gboolean set_channel;
|
||||||
|
|
||||||
|
notebook = GIMP_COLOR_NOTEBOOK (cnp->notebook);
|
||||||
|
|
||||||
set_channel =
|
set_channel =
|
||||||
(GIMP_COLOR_SELECTOR_GET_CLASS (notebook->cur_page)->set_channel != NULL);
|
(GIMP_COLOR_SELECTOR_GET_CLASS (notebook->cur_page)->set_channel != NULL);
|
||||||
|
|
|
@ -33,34 +33,37 @@
|
||||||
|
|
||||||
#include "gimpcolornotebook.h"
|
#include "gimpcolornotebook.h"
|
||||||
#include "gimpcolorscales.h"
|
#include "gimpcolorscales.h"
|
||||||
#include "gimpcolorselector.h"
|
|
||||||
#include "gimpwidgetsmarshal.h"
|
#include "gimpwidgetsmarshal.h"
|
||||||
|
|
||||||
|
|
||||||
enum
|
|
||||||
{
|
|
||||||
COLOR_CHANGED,
|
|
||||||
LAST_SIGNAL
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
static void gimp_color_notebook_class_init (GimpColorNotebookClass *klass);
|
static void gimp_color_notebook_class_init (GimpColorNotebookClass *klass);
|
||||||
static void gimp_color_notebook_init (GimpColorNotebook *notebook);
|
static void gimp_color_notebook_init (GimpColorNotebook *notebook);
|
||||||
|
|
||||||
static void gimp_color_notebook_finalize (GObject *object);
|
static void gimp_color_notebook_finalize (GObject *object);
|
||||||
|
|
||||||
|
static void gimp_color_notebook_set_show_alpha (GimpColorSelector *selector,
|
||||||
|
gboolean show_alpha);
|
||||||
|
static void gimp_color_notebook_set_color (GimpColorSelector *selector,
|
||||||
|
const GimpRGB *rgb,
|
||||||
|
const GimpHSV *hsv);
|
||||||
|
static void gimp_color_notebook_set_channel (GimpColorSelector *selector,
|
||||||
|
GimpColorSelectorChannel channel);
|
||||||
|
|
||||||
static void gimp_color_notebook_switch_page (GtkNotebook *gtk_notebook,
|
static void gimp_color_notebook_switch_page (GtkNotebook *gtk_notebook,
|
||||||
GtkNotebookPage *page,
|
GtkNotebookPage *page,
|
||||||
guint page_num);
|
guint page_num,
|
||||||
|
GimpColorNotebook *notebook);
|
||||||
|
|
||||||
static void gimp_color_notebook_update_callback (GimpColorSelector *selector,
|
static void gimp_color_notebook_color_changed (GimpColorSelector *page,
|
||||||
const GimpRGB *rgb,
|
const GimpRGB *rgb,
|
||||||
const GimpHSV *hsv,
|
const GimpHSV *hsv,
|
||||||
GimpColorNotebook *notebook);
|
GimpColorNotebook *notebook);
|
||||||
|
static void gimp_color_notebook_channel_changed (GimpColorSelector *page,
|
||||||
|
GimpColorSelectorChannel channel,
|
||||||
|
GimpColorNotebook *notebook);
|
||||||
|
|
||||||
|
|
||||||
static GtkNotebookClass *parent_class = NULL;
|
static GimpColorSelectorClass *parent_class = NULL;
|
||||||
|
|
||||||
static guint notebook_signals[LAST_SIGNAL] = { 0 };
|
|
||||||
|
|
||||||
|
|
||||||
GType
|
GType
|
||||||
|
@ -83,7 +86,7 @@ gimp_color_notebook_get_type (void)
|
||||||
(GInstanceInitFunc) gimp_color_notebook_init,
|
(GInstanceInitFunc) gimp_color_notebook_init,
|
||||||
};
|
};
|
||||||
|
|
||||||
notebook_type = g_type_register_static (GTK_TYPE_NOTEBOOK,
|
notebook_type = g_type_register_static (GIMP_TYPE_COLOR_SELECTOR,
|
||||||
"GimpColorNotebook",
|
"GimpColorNotebook",
|
||||||
¬ebook_info, 0);
|
¬ebook_info, 0);
|
||||||
}
|
}
|
||||||
|
@ -94,83 +97,87 @@ gimp_color_notebook_get_type (void)
|
||||||
static void
|
static void
|
||||||
gimp_color_notebook_class_init (GimpColorNotebookClass *klass)
|
gimp_color_notebook_class_init (GimpColorNotebookClass *klass)
|
||||||
{
|
{
|
||||||
GObjectClass *object_class;
|
GObjectClass *object_class;
|
||||||
GtkNotebookClass *notebook_class;
|
GimpColorSelectorClass *selector_class;
|
||||||
|
|
||||||
object_class = G_OBJECT_CLASS (klass);
|
object_class = G_OBJECT_CLASS (klass);
|
||||||
notebook_class = GTK_NOTEBOOK_CLASS (klass);
|
selector_class = GIMP_COLOR_SELECTOR_CLASS (klass);
|
||||||
|
|
||||||
parent_class = g_type_class_peek_parent (klass);
|
parent_class = g_type_class_peek_parent (klass);
|
||||||
|
|
||||||
notebook_signals[COLOR_CHANGED] =
|
object_class->finalize = gimp_color_notebook_finalize;
|
||||||
g_signal_new ("color_changed",
|
|
||||||
G_TYPE_FROM_CLASS (klass),
|
|
||||||
G_SIGNAL_RUN_FIRST,
|
|
||||||
G_STRUCT_OFFSET (GimpColorNotebookClass, color_changed),
|
|
||||||
NULL, NULL,
|
|
||||||
_gimp_widgets_marshal_VOID__POINTER_POINTER,
|
|
||||||
G_TYPE_NONE, 2,
|
|
||||||
G_TYPE_POINTER,
|
|
||||||
G_TYPE_POINTER);
|
|
||||||
|
|
||||||
object_class->finalize = gimp_color_notebook_finalize;
|
selector_class->name = "Notebook";
|
||||||
|
selector_class->help_page = "notebook.html";
|
||||||
notebook_class->switch_page = gimp_color_notebook_switch_page;
|
selector_class->set_show_alpha = gimp_color_notebook_set_show_alpha;
|
||||||
|
selector_class->set_color = gimp_color_notebook_set_color;
|
||||||
klass->color_changed = NULL;
|
selector_class->set_channel = gimp_color_notebook_set_channel;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
gimp_color_notebook_init (GimpColorNotebook *notebook)
|
gimp_color_notebook_init (GimpColorNotebook *notebook)
|
||||||
{
|
{
|
||||||
GtkWidget *selector;
|
GimpColorSelector *selector;
|
||||||
GtkWidget *label;
|
GtkWidget *page;
|
||||||
GType *selector_types;
|
GtkWidget *label;
|
||||||
gint n_selector_types;
|
GType *selector_types;
|
||||||
gint i;
|
gint n_selector_types;
|
||||||
|
gint i;
|
||||||
|
|
||||||
gimp_rgba_set (¬ebook->rgb, 0.0, 0.0, 0.0, 1.0);
|
selector = GIMP_COLOR_SELECTOR (notebook);
|
||||||
gimp_rgb_to_hsv (¬ebook->rgb, ¬ebook->hsv);
|
|
||||||
|
|
||||||
notebook->channel = GIMP_COLOR_SELECTOR_HUE;
|
notebook->notebook = gtk_notebook_new ();
|
||||||
|
gtk_box_pack_start (GTK_BOX (notebook), notebook->notebook, TRUE, TRUE, 0);
|
||||||
|
gtk_widget_show (notebook->notebook);
|
||||||
|
|
||||||
|
g_signal_connect (G_OBJECT (notebook->notebook), "switch_page",
|
||||||
|
G_CALLBACK (gimp_color_notebook_switch_page),
|
||||||
|
notebook);
|
||||||
|
|
||||||
selector_types = g_type_children (GIMP_TYPE_COLOR_SELECTOR, &n_selector_types);
|
selector_types = g_type_children (GIMP_TYPE_COLOR_SELECTOR, &n_selector_types);
|
||||||
|
|
||||||
if (n_selector_types == 1)
|
if (n_selector_types == 2)
|
||||||
{
|
{
|
||||||
gtk_notebook_set_show_tabs (GTK_NOTEBOOK (notebook), FALSE);
|
gtk_notebook_set_show_tabs (GTK_NOTEBOOK (notebook->notebook), FALSE);
|
||||||
gtk_notebook_set_show_border (GTK_NOTEBOOK (notebook), FALSE);
|
gtk_notebook_set_show_border (GTK_NOTEBOOK (notebook->notebook), FALSE);
|
||||||
}
|
}
|
||||||
|
|
||||||
for (i = 0; i < n_selector_types; i++)
|
for (i = 0; i < n_selector_types; i++)
|
||||||
{
|
{
|
||||||
|
/* skip ourselves */
|
||||||
|
if (g_type_is_a (selector_types[i], GIMP_TYPE_COLOR_NOTEBOOK))
|
||||||
|
continue;
|
||||||
|
|
||||||
/* skip the "Scales" color selector */
|
/* skip the "Scales" color selector */
|
||||||
if (g_type_is_a (selector_types[i], GIMP_TYPE_COLOR_SCALES))
|
if (g_type_is_a (selector_types[i], GIMP_TYPE_COLOR_SCALES))
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
selector = gimp_color_selector_new (selector_types[i],
|
page = gimp_color_selector_new (selector_types[i],
|
||||||
¬ebook->rgb,
|
&selector->rgb,
|
||||||
¬ebook->hsv,
|
&selector->hsv,
|
||||||
notebook->channel);
|
selector->channel);
|
||||||
|
|
||||||
if (! selector)
|
if (! page)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
gimp_color_selector_set_show_alpha (GIMP_COLOR_SELECTOR (selector), FALSE);
|
gimp_color_selector_set_show_alpha (GIMP_COLOR_SELECTOR (page), FALSE);
|
||||||
|
|
||||||
label = gtk_label_new (GIMP_COLOR_SELECTOR_GET_CLASS (selector)->name);
|
label = gtk_label_new (GIMP_COLOR_SELECTOR_GET_CLASS (page)->name);
|
||||||
|
|
||||||
gtk_notebook_append_page (GTK_NOTEBOOK (notebook), selector, label);
|
gtk_notebook_append_page (GTK_NOTEBOOK (notebook->notebook), page, label);
|
||||||
|
|
||||||
if (! notebook->cur_page)
|
if (! notebook->cur_page)
|
||||||
notebook->cur_page = GIMP_COLOR_SELECTOR (selector);
|
notebook->cur_page = GIMP_COLOR_SELECTOR (page);
|
||||||
|
|
||||||
notebook->selectors = g_list_append (notebook->selectors, selector);
|
notebook->selectors = g_list_append (notebook->selectors, page);
|
||||||
|
|
||||||
gtk_widget_show (selector);
|
gtk_widget_show (page);
|
||||||
|
|
||||||
g_signal_connect (G_OBJECT (selector), "color_changed",
|
g_signal_connect (G_OBJECT (page), "color_changed",
|
||||||
G_CALLBACK (gimp_color_notebook_update_callback),
|
G_CALLBACK (gimp_color_notebook_color_changed),
|
||||||
|
notebook);
|
||||||
|
g_signal_connect (G_OBJECT (page), "channel_changed",
|
||||||
|
G_CALLBACK (gimp_color_notebook_channel_changed),
|
||||||
notebook);
|
notebook);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -194,122 +201,124 @@ gimp_color_notebook_finalize (GObject *object)
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
gimp_color_notebook_switch_page (GtkNotebook *gtk_notebook,
|
gimp_color_notebook_set_show_alpha (GimpColorSelector *selector,
|
||||||
GtkNotebookPage *page,
|
gboolean show_alpha)
|
||||||
guint page_num)
|
|
||||||
{
|
{
|
||||||
GimpColorNotebook *notebook;
|
GimpColorNotebook *notebook;
|
||||||
|
GimpColorSelector *child;
|
||||||
|
GList *list;
|
||||||
|
|
||||||
|
notebook = GIMP_COLOR_NOTEBOOK (selector);
|
||||||
|
|
||||||
|
for (list = notebook->selectors; list; list = g_list_next (list))
|
||||||
|
{
|
||||||
|
child = (GimpColorSelector *) list->data;
|
||||||
|
|
||||||
|
gimp_color_selector_set_show_alpha (child, show_alpha);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
gimp_color_notebook_set_color (GimpColorSelector *selector,
|
||||||
|
const GimpRGB *rgb,
|
||||||
|
const GimpHSV *hsv)
|
||||||
|
{
|
||||||
|
GimpColorNotebook *notebook;
|
||||||
|
|
||||||
|
notebook = GIMP_COLOR_NOTEBOOK (selector);
|
||||||
|
|
||||||
|
g_signal_handlers_block_by_func (G_OBJECT (notebook->cur_page),
|
||||||
|
gimp_color_notebook_color_changed,
|
||||||
|
notebook);
|
||||||
|
|
||||||
|
gimp_color_selector_set_color (notebook->cur_page, rgb, hsv);
|
||||||
|
|
||||||
|
g_signal_handlers_unblock_by_func (G_OBJECT (notebook->cur_page),
|
||||||
|
gimp_color_notebook_color_changed,
|
||||||
|
notebook);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
gimp_color_notebook_set_channel (GimpColorSelector *selector,
|
||||||
|
GimpColorSelectorChannel channel)
|
||||||
|
{
|
||||||
|
GimpColorNotebook *notebook;
|
||||||
|
|
||||||
|
notebook = GIMP_COLOR_NOTEBOOK (selector);
|
||||||
|
|
||||||
|
g_signal_handlers_block_by_func (G_OBJECT (notebook->cur_page),
|
||||||
|
gimp_color_notebook_channel_changed,
|
||||||
|
notebook);
|
||||||
|
|
||||||
|
gimp_color_selector_set_channel (notebook->cur_page, channel);
|
||||||
|
|
||||||
|
g_signal_handlers_unblock_by_func (G_OBJECT (notebook->cur_page),
|
||||||
|
gimp_color_notebook_channel_changed,
|
||||||
|
notebook);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
gimp_color_notebook_switch_page (GtkNotebook *gtk_notebook,
|
||||||
|
GtkNotebookPage *page,
|
||||||
|
guint page_num,
|
||||||
|
GimpColorNotebook *notebook)
|
||||||
|
{
|
||||||
|
GimpColorSelector *selector;
|
||||||
GtkWidget *page_widget;
|
GtkWidget *page_widget;
|
||||||
|
|
||||||
notebook = GIMP_COLOR_NOTEBOOK (gtk_notebook);
|
selector = GIMP_COLOR_SELECTOR (notebook);
|
||||||
|
|
||||||
GTK_NOTEBOOK_CLASS (parent_class)->switch_page (gtk_notebook, page, page_num);
|
|
||||||
|
|
||||||
page_widget = gtk_notebook_get_nth_page (gtk_notebook, page_num);
|
page_widget = gtk_notebook_get_nth_page (gtk_notebook, page_num);
|
||||||
|
|
||||||
notebook->cur_page = GIMP_COLOR_SELECTOR (page_widget);
|
notebook->cur_page = GIMP_COLOR_SELECTOR (page_widget);
|
||||||
|
|
||||||
g_signal_handlers_block_by_func (G_OBJECT (notebook->cur_page),
|
g_signal_handlers_block_by_func (G_OBJECT (notebook->cur_page),
|
||||||
gimp_color_notebook_update_callback,
|
gimp_color_notebook_color_changed,
|
||||||
notebook);
|
notebook);
|
||||||
|
|
||||||
gimp_color_selector_set_channel (notebook->cur_page,
|
|
||||||
notebook->channel);
|
|
||||||
gimp_color_selector_set_color (notebook->cur_page,
|
|
||||||
¬ebook->rgb,
|
|
||||||
¬ebook->hsv);
|
|
||||||
|
|
||||||
g_signal_handlers_unblock_by_func (G_OBJECT (notebook->cur_page),
|
|
||||||
gimp_color_notebook_update_callback,
|
|
||||||
notebook);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/* public functions */
|
|
||||||
|
|
||||||
GtkWidget *
|
|
||||||
gimp_color_notebook_new (void)
|
|
||||||
{
|
|
||||||
GimpColorNotebook *notebook;
|
|
||||||
|
|
||||||
notebook = g_object_new (GIMP_TYPE_COLOR_NOTEBOOK, NULL);
|
|
||||||
|
|
||||||
return GTK_WIDGET (notebook);
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
|
||||||
gimp_color_notebook_set_color (GimpColorNotebook *notebook,
|
|
||||||
const GimpRGB *rgb,
|
|
||||||
const GimpHSV *hsv)
|
|
||||||
{
|
|
||||||
g_return_if_fail (GIMP_IS_COLOR_NOTEBOOK (notebook));
|
|
||||||
g_return_if_fail (rgb != NULL);
|
|
||||||
g_return_if_fail (hsv != NULL);
|
|
||||||
|
|
||||||
notebook->rgb = *rgb;
|
|
||||||
notebook->hsv = *hsv;
|
|
||||||
|
|
||||||
g_signal_handlers_block_by_func (G_OBJECT (notebook->cur_page),
|
g_signal_handlers_block_by_func (G_OBJECT (notebook->cur_page),
|
||||||
gimp_color_notebook_update_callback,
|
gimp_color_notebook_channel_changed,
|
||||||
notebook);
|
notebook);
|
||||||
|
|
||||||
gimp_color_selector_set_color (notebook->cur_page,
|
gimp_color_selector_set_color (notebook->cur_page,
|
||||||
¬ebook->rgb,
|
&selector->rgb,
|
||||||
¬ebook->hsv);
|
&selector->hsv);
|
||||||
|
gimp_color_selector_set_channel (notebook->cur_page,
|
||||||
|
selector->channel);
|
||||||
|
|
||||||
g_signal_handlers_unblock_by_func (G_OBJECT (notebook->cur_page),
|
g_signal_handlers_unblock_by_func (G_OBJECT (notebook->cur_page),
|
||||||
gimp_color_notebook_update_callback,
|
gimp_color_notebook_color_changed,
|
||||||
|
notebook);
|
||||||
|
g_signal_handlers_unblock_by_func (G_OBJECT (notebook->cur_page),
|
||||||
|
gimp_color_notebook_channel_changed,
|
||||||
notebook);
|
notebook);
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
|
||||||
gimp_color_notebook_get_color (GimpColorNotebook *notebook,
|
|
||||||
GimpRGB *rgb,
|
|
||||||
GimpHSV *hsv)
|
|
||||||
{
|
|
||||||
g_return_if_fail (GIMP_IS_COLOR_NOTEBOOK (notebook));
|
|
||||||
g_return_if_fail (rgb != NULL);
|
|
||||||
g_return_if_fail (hsv != NULL);
|
|
||||||
|
|
||||||
*rgb = notebook->rgb;
|
|
||||||
*hsv = notebook->hsv;
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
|
||||||
gimp_color_notebook_color_changed (GimpColorNotebook *notebook)
|
|
||||||
{
|
|
||||||
g_return_if_fail (GIMP_IS_COLOR_NOTEBOOK (notebook));
|
|
||||||
|
|
||||||
g_signal_emit (G_OBJECT (notebook), notebook_signals[COLOR_CHANGED], 0,
|
|
||||||
¬ebook->rgb, ¬ebook->hsv);
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
|
||||||
gimp_color_notebook_set_channel (GimpColorNotebook *notebook,
|
|
||||||
GimpColorSelectorChannel channel)
|
|
||||||
{
|
|
||||||
g_return_if_fail (GIMP_IS_COLOR_NOTEBOOK (notebook));
|
|
||||||
|
|
||||||
if (channel != notebook->channel)
|
|
||||||
{
|
|
||||||
notebook->channel = channel;
|
|
||||||
|
|
||||||
gimp_color_selector_set_channel (notebook->cur_page,
|
|
||||||
notebook->channel);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/* private functions */
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
gimp_color_notebook_update_callback (GimpColorSelector *selector,
|
gimp_color_notebook_color_changed (GimpColorSelector *page,
|
||||||
const GimpRGB *rgb,
|
const GimpRGB *rgb,
|
||||||
const GimpHSV *hsv,
|
const GimpHSV *hsv,
|
||||||
GimpColorNotebook *notebook)
|
GimpColorNotebook *notebook)
|
||||||
{
|
{
|
||||||
notebook->rgb = *rgb;
|
GimpColorSelector *selector;
|
||||||
notebook->hsv = *hsv;
|
|
||||||
|
|
||||||
gimp_color_notebook_color_changed (notebook);
|
selector = GIMP_COLOR_SELECTOR (notebook);
|
||||||
|
|
||||||
|
selector->rgb = *rgb;
|
||||||
|
selector->hsv = *hsv;
|
||||||
|
|
||||||
|
gimp_color_selector_color_changed (selector);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
gimp_color_notebook_channel_changed (GimpColorSelector *page,
|
||||||
|
GimpColorSelectorChannel channel,
|
||||||
|
GimpColorNotebook *notebook)
|
||||||
|
{
|
||||||
|
GimpColorSelector *selector;
|
||||||
|
|
||||||
|
selector = GIMP_COLOR_SELECTOR (notebook);
|
||||||
|
|
||||||
|
selector->channel = channel;
|
||||||
|
|
||||||
|
gimp_color_selector_channel_changed (selector);
|
||||||
}
|
}
|
||||||
|
|
|
@ -26,6 +26,8 @@
|
||||||
#ifndef __GIMP_COLOR_NOTEBOOK_H__
|
#ifndef __GIMP_COLOR_NOTEBOOK_H__
|
||||||
#define __GIMP_COLOR_NOTEBOOK_H__
|
#define __GIMP_COLOR_NOTEBOOK_H__
|
||||||
|
|
||||||
|
#include <libgimpwidgets/gimpcolorselector.h>
|
||||||
|
|
||||||
G_BEGIN_DECLS
|
G_BEGIN_DECLS
|
||||||
|
|
||||||
|
|
||||||
|
@ -41,42 +43,21 @@ typedef struct _GimpColorNotebookClass GimpColorNotebookClass;
|
||||||
|
|
||||||
struct _GimpColorNotebook
|
struct _GimpColorNotebook
|
||||||
{
|
{
|
||||||
GtkNotebook parent_instance;
|
GimpColorSelector parent_instance;
|
||||||
|
|
||||||
GimpRGB rgb;
|
GtkWidget *notebook;
|
||||||
GimpHSV hsv;
|
|
||||||
|
|
||||||
GimpColorSelectorChannel channel;
|
GList *selectors;
|
||||||
|
GimpColorSelector *cur_page;
|
||||||
GList *selectors;
|
|
||||||
GimpColorSelector *cur_page;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
struct _GimpColorNotebookClass
|
struct _GimpColorNotebookClass
|
||||||
{
|
{
|
||||||
GtkNotebookClass parent_class;
|
GimpColorSelectorClass parent_class;
|
||||||
|
|
||||||
/* signals */
|
|
||||||
void (* color_changed) (GimpColorNotebook *notebook,
|
|
||||||
const GimpRGB *rgb,
|
|
||||||
const GimpHSV *hsv);
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
GType gimp_color_notebook_get_type (void) G_GNUC_CONST;
|
GType gimp_color_notebook_get_type (void) G_GNUC_CONST;
|
||||||
|
|
||||||
GtkWidget * gimp_color_notebook_new (void);
|
|
||||||
|
|
||||||
void gimp_color_notebook_set_color (GimpColorNotebook *notebook,
|
|
||||||
const GimpRGB *rgb,
|
|
||||||
const GimpHSV *hsv);
|
|
||||||
void gimp_color_notebook_get_color (GimpColorNotebook *notebook,
|
|
||||||
GimpRGB *rgb,
|
|
||||||
GimpHSV *hsv);
|
|
||||||
void gimp_color_notebook_color_changed (GimpColorNotebook *notebook);
|
|
||||||
|
|
||||||
void gimp_color_notebook_set_channel (GimpColorNotebook *notebook,
|
|
||||||
GimpColorSelectorChannel channel);
|
|
||||||
|
|
||||||
|
|
||||||
G_END_DECLS
|
G_END_DECLS
|
||||||
|
|
Loading…
Reference in New Issue