From 759765114fee66da86fe32adb9f8e72d96667b41 Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Sun, 29 Jan 2012 10:43:42 -0500 Subject: [PATCH] Add a simple color chooser test --- tests/Makefile.am | 4 ++++ tests/testcolorchooser.c | 50 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 54 insertions(+) create mode 100644 tests/testcolorchooser.c diff --git a/tests/Makefile.am b/tests/Makefile.am index 6c1c1d854e..828761336f 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -39,6 +39,7 @@ noinst_PROGRAMS = $(TEST_PROGS) \ testcairo \ testcalendar \ testclipboard \ + testcolorchooser \ testcombo \ testcombochange \ testcellrenderertext \ @@ -158,6 +159,7 @@ testbuttons_DEPENDENCIES = $(TEST_DEPS) testcairo_DEPENDENCIES = $(TEST_DEPS) testcalendar_DEPENDENCIES = $(TEST_DEPS) testclipboard_DEPENDENCIES = $(TEST_DEPS) +testcolorchooser_DEPENDENCIES = $(TEST_DEPS) testcombo_DEPENDENCIES = $(TEST_DEPS) testcombochange_DEPENDENCIES = $(TEST_DEPS) testcellrenderertext_DEPENDENCIES = $(TEST_DEPS) @@ -252,6 +254,7 @@ testbuttons_LDADD = $(LDADDS) testcairo_LDADD = $(LDADDS) testcalendar_LDADD = $(LDADDS) testclipboard_LDADD = $(LDADDS) +testcolorchooser_LDADD = $(LDADDS) testcombo_LDADD = $(LDADDS) testcombochange_LDADD = $(LDADDS) testcellrenderertext_LDADD = $(LDADDS) @@ -519,6 +522,7 @@ testpixbuf_color_SOURCES = testpixbuf-color.c testpixbuf_save_SOURCES = testpixbuf-save.c +testcolorchooser_SOURCES = testcolorchooser.c EXTRA_DIST += \ gradient1.png \ diff --git a/tests/testcolorchooser.c b/tests/testcolorchooser.c new file mode 100644 index 0000000000..c84d15730c --- /dev/null +++ b/tests/testcolorchooser.c @@ -0,0 +1,50 @@ +#include + +static void +color_changed (GObject *o, GParamSpec *pspect, gpointer data) +{ + GdkRGBA color; + + gtk_color_chooser_get_color (GTK_COLOR_CHOOSER (o), &color); + g_print ("color changed: %g %g %g %g\n", + color.red, color.green, color.blue, color.alpha); +} + +static void +dialog_response (GtkDialog *dialog, gint response) +{ + GdkRGBA color; + + switch (response) + { + case GTK_RESPONSE_OK: + gtk_color_chooser_get_color (GTK_COLOR_CHOOSER (dialog), &color); + g_print ("color accepted: %g %g %g %g\n", + color.red, color.green, color.blue, color.alpha); + break; + default: + g_print ("canceled\n"); + break; + } + + gtk_main_quit (); +} + +int +main (int argc, char *argv[]) +{ + GtkWidget *dialog; + + gtk_init (NULL, NULL); + + dialog = gtk_color_chooser_dialog_new ("Select a color", NULL); + g_signal_connect (dialog, "notify::color", G_CALLBACK (color_changed), NULL); + g_signal_connect (dialog, "response", G_CALLBACK (dialog_response), NULL); + + gtk_widget_show_all (dialog); + + gtk_main (); + + return 0; +} +