Hi All, Finally I succeeded to create a simple window with a button and a multiline text box!
Edward On 29/11/2015, Edward Bartolo <[email protected]> wrote: > Hi Aitor, > > Thanks for taking some time to answer my question. I did as you > instructed me and successfully compile and run the test program. > However, the test program failed to close even though I closed its > window. I had to kill it using Ctrl + C. > > Thanks > > On 29/11/2015, aitor_czr <[email protected]> wrote: >> Hi Edward, >> >> Replace by GtkObject* object by GtkWidget* widget in the routine >> 'on_window_destroy'. On the other hand, use -export-dynamic. Otherwise, >> you will get warnings running the executable: >> >> (prueba:4108): Gtk-WARNING **: Could not find signal handler >> 'on_togglebutton1_clicked'. Did you compile with -rdynamic? >> >> In other words: >> >> $ gcc -o gtkprog gtkprog.c -export-dynamic `pkg-config --libs --cflags >> gtk+-3.0` >> >> HTH, >> >> Aitor. >> >> On 11/28/2015 07:46 PM, Edward Bartolo <[email protected]> wrote: >>> Hi All, >>> >>> I am trying to practice creating a GUI with gtk but I am failing to >>> compile my little test application. >>> >>> -------------------------------------------- >>> >>> #include <gtk/gtk.h> >>> >>> void >>> on_window_destroy (GtkObject *object, gpointer user_data) >>> { >>> gtk_main_quit (); >>> } >>> >>> int >>> main (int argc, char *argv[]) >>> { >>> GtkBuilder *builder; >>> GtkWidget *window; >>> >>> gtk_init (&argc, &argv); >>> >>> builder = gtk_builder_new (); >>> gtk_builder_add_from_file (builder, "gui.glade", NULL); >>> window = GTK_WIDGET (gtk_builder_get_object (builder, "window1")); >>> gtk_builder_connect_signals (builder, NULL); >>> >>> g_object_unref (G_OBJECT (builder)); >>> >>> gtk_widget_show (window); >>> gtk_main (); >>> >>> return 0; >>> } >>> >>> ------------------------------ >>> >>> The .glade file: >>> >>> <?xml version="1.0" encoding="UTF-8"?> >>> <!-- Generated with glade 3.18.3 --> >>> <interface> >>> <requires lib="gtk+" version="3.12"/> >>> <object class="GtkWindow" id="window1"> >>> <property name="can_focus">False</property> >>> <child> >>> <object class="GtkBox" id="box1"> >>> <property name="visible">True</property> >>> <property name="can_focus">False</property> >>> <property name="orientation">vertical</property> >>> <child> >>> <object class="GtkMenuButton" id="menubutton1"> >>> <property name="visible">True</property> >>> <property name="can_focus">True</property> >>> <property name="receives_default">True</property> >>> <child> >>> <placeholder/> >>> </child> >>> </object> >>> <packing> >>> <property name="expand">False</property> >>> <property name="fill">True</property> >>> <property name="position">0</property> >>> </packing> >>> </child> >>> <child> >>> <object class="GtkTextView" id="textview1"> >>> <property name="visible">True</property> >>> <property name="can_focus">True</property> >>> <property name="wrap_mode">word</property> >>> </object> >>> <packing> >>> <property name="expand">True</property> >>> <property name="fill">True</property> >>> <property name="position">1</property> >>> </packing> >>> </child> >>> <child> >>> <object class="GtkToggleButton" id="togglebutton1"> >>> <property name="label" >>> translatable="yes">togglebutton</property> >>> <property name="width_request">100</property> >>> <property name="visible">True</property> >>> <property name="can_focus">True</property> >>> <property name="receives_default">True</property> >>> <property name="halign">end</property> >>> <property name="valign">center</property> >>> <property name="xalign">0.51999998092651367</property> >>> <property name="image_position">right</property> >>> <signal name="clicked" handler="on_togglebutton1_clicked" >>> object="textview1" swapped="no"/> >>> </object> >>> <packing> >>> <property name="expand">False</property> >>> <property name="fill">True</property> >>> <property name="pack_type">end</property> >>> <property name="position">2</property> >>> </packing> >>> </child> >>> </object> >>> </child> >>> </object> >>> </interface> >> ------------------------------ The command to compile: $ gcc -o gtkprog >> gtkprog.c `pkg-config --libs --cflags gtk+-3.0` Could anyone shed some >> light on what I am doing wrong? Edward >> > _______________________________________________ Dng mailing list [email protected] https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng
