]> git.draconx.ca Git - aspectbin.git/commitdiff
Add an example program which uses glade.
authorNick Bowler <nbowler@draconx.ca>
Mon, 23 Mar 2009 02:56:06 +0000 (22:56 -0400)
committerNick Bowler <nbowler@draconx.ca>
Mon, 23 Mar 2009 02:59:04 +0000 (22:59 -0400)
examples/.gitignore
examples/Makefile.am
examples/glade_simple.c [new file with mode: 0644]
examples/simple.glade [new file with mode: 0644]

index 65988982e705b08d532234664f712b5fc1c5dd17..3d465d65df5946f33462e63a0b2bbd11759b9999 100644 (file)
@@ -1 +1,2 @@
 simplebuttons
+glade_simple
index 88a41d41dead0c25d127a9d8d0b8f4c633ebc7b7..1ac8dd4b7b3bd4f0af3e6d58c55e06c73559a8b5 100644 (file)
@@ -6,3 +6,11 @@ simplebuttons_SOURCES = simplebuttons.c
 simplebuttons_CFLAGS  = $(GTK_CFLAGS)
 simplebuttons_LDFLAGS = $(GTK_LIBS)
 simplebuttons_LDADD   = $(top_builddir)/libaspectbin.la
+
+if BUILD_LIBGLADE
+noinst_PROGRAMS     += glade_simple
+glade_simple_SOURCES = glade_simple.c
+glade_simple_CFLAGS  = $(GTK_CFLAGS) $(LIBGLADE_CFLAGS)
+glade_simple_LDFLAGS = $(GTK_LIBS)   $(LIBGLADE_LIBS) -static
+glade_simple_LDADD   = $(top_builddir)/libaspectbin.la
+endif
diff --git a/examples/glade_simple.c b/examples/glade_simple.c
new file mode 100644 (file)
index 0000000..0431a63
--- /dev/null
@@ -0,0 +1,49 @@
+/* AspectBin - A GTK+ container for packing with consrained aspect ratio.
+ * Copyright (C) 2009 Nick Bowler
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+#include <stdio.h>
+#include <stdlib.h>
+
+#include <glade/glade.h>
+#include <gtk/gtk.h>
+
+int main(int argc, char **argv)
+{
+       GladeXML *xml;
+       GtkWidget *win;
+
+       gtk_init(&argc, &argv);
+
+       // Register the aspect bin widgets with libglade.
+       aspect_bin_register_widgets();
+
+       xml = glade_xml_new("simple.glade", NULL, NULL);
+       if (!xml) {
+               fprintf(stderr, "Failed to load simple.glade\n");
+               return EXIT_FAILURE;
+       }
+
+       glade_xml_signal_autoconnect(xml);
+
+       win = glade_xml_get_widget(xml, "mainWindow");
+       gtk_widget_show_all(win);
+       gtk_main();
+
+       return 0;
+}
diff --git a/examples/simple.glade b/examples/simple.glade
new file mode 100644 (file)
index 0000000..8397d79
--- /dev/null
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!DOCTYPE glade-interface SYSTEM "glade-2.0.dtd">
+<!--Generated with glade3 3.4.5 on Sun Mar 22 18:48:12 2009 -->
+<glade-interface>
+  <requires lib="aspectbin"/>
+  <widget class="GtkWindow" id="mainWindow">
+    <property name="default_width">400</property>
+    <property name="default_height">300</property>
+    <signal name="destroy" handler="gtk_main_quit"/>
+    <child>
+      <widget class="AspectBin" id="aspectbin1">
+        <property name="visible">True</property>
+        <child>
+          <widget class="GtkButton" id="button1">
+            <property name="visible">True</property>
+            <property name="can_focus">True</property>
+            <property name="receives_default">True</property>
+            <property name="label" translatable="yes">button</property>
+            <property name="response_id">0</property>
+          </widget>
+        </child>
+        <child>
+          <widget class="GtkButton" id="button2">
+            <property name="visible">True</property>
+            <property name="can_focus">True</property>
+            <property name="receives_default">True</property>
+            <property name="label" translatable="yes">button</property>
+            <property name="response_id">0</property>
+          </widget>
+        </child>
+      </widget>
+    </child>
+  </widget>
+</glade-interface>