Home   |   Guides and Tutorials   |   What's New?   |   Comments   |   About
 

GtkColorSelection - Color Selection Widget

by Tammy Fox
Last Modified: Wednesday, 19-May-2004 11:54:21 EDT

Introduction
    This example produces a GTK Color Selection Area. It allows the user to choose any color value from a color wheel or by typing in the RGB values.
Screenshot



Source Code
Source code for this example is also available in the file colorselection.c
/*
 *File name: colorselection.c
 */

#include <gtk/gtk.h>
#include <glib.h>

/*-- This function allows the program to exit properly when the window is closed --*/
gint destroyapp (GtkWidget *widget, gpointer gdata)
{
  g_print ("Quitting...\n");
  gtk_main_quit();
  return (FALSE);
}
int main (int argc, char *argv[])
{

	/*-- Declare the GTK Widgets used in the program --*/
	GtkWidget *window;
	GtkWidget *colorselection;
	
	/*--Initialize GTK--*/
	gtk_init (&argc, &argv);

	/*--Create the new window--*/
	window = gtk_window_new(GTK_WINDOW_TOPLEVEL);

	/*--Connect the window to the destroyapp function --*/
	gtk_signal_connect(GTK_OBJECT(window), "delete_event", GTK_SIGNAL_FUNC(destroyapp), NULL);

	
	/*--Create a new colorselection widget --*/
	colorselection = gtk_color_selection_new();
	
	/*--- Add colorselection widget to window-*/
	gtk_container_add(GTK_CONTAINER (window), colorselection);

	/*-- Add a border to the window to give the button a little room --*/
	gtk_container_border_width (GTK_CONTAINER (window), 15);
         
	/*-- Display the widgets --*/
	gtk_widget_show(colorselection);
	gtk_widget_show(window);

	/*-- Start the GTK event loop--*/
	gtk_main();

	/*--Return 0 if exit is successful--*/
	return 0;

}
Compile the Source Code
gcc -Wall -g colorselection.c -o colorselection `gtk-config --cflags` `gtk-config --libs`

Execute the Program
./colorselection

What's Related


All Rights Reserved Linux Headquarters © 2000-2007
Linux is a registered trademark of Linus Torvalds
All logos are registered trademarks of their respective owners
Last modified: Wednesday, May 19, 2004