1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
| #define GLADE_FILE "gui.glade"
#include <gtk/gtk.h>
#include <glade/glade.h>
void
on_hscale1_value_changed (GtkWidget *widget, gpointer user_data)
{
gdouble val;
val = gtk_range_get_value (GTK_RANGE(widget));
/* print to screen */
g_print("Range value: %d\n", (guint)val);
}
void
on_window1_destroy (GtkWidget *widget, gpointer user_data)
{
/* break gtk_main() loop */
gtk_main_quit();
}
int
main (int argc, char *argv[])
{
GtkWidget *main_window;
GladeXML *gxml;
/* initialize the GTK+ library */
gtk_init (&argc, &argv);
/*
create an instance of the GladeXML object and build widgets within
the window1 root node.
*/
gxml = glade_xml_new (GLADE_FILE, NULL, NULL);
/* get the window widget from the glade XML file */
main_window = glade_xml_get_widget (gxml, "window1");
/* connect signals */
glade_xml_signal_connect (gxml, "on_window1_destroy",
G_CALLBACK(on_window1_destroy));
glade_xml_signal_connect (gxml, "on_hscale1_value_changed",
G_CALLBACK(on_hscale1_value_changed));
/* show the main window */
gtk_widget_show (main_window);
/* begin main GTK loop */
gtk_main ();
return 0;
} |