[pygi] add the builder demo



commit ffca02536bafb55e8c3bce31cd992365207429f6
Author: John (J5) Palmieri <johnp redhat com>
Date:   Sat Jun 5 14:54:47 2010 -0400

    add the builder demo

 demos/gtk-demo/demos/builder.py |   57 +++++++++++++++++++++++++++++++++++++++
 1 files changed, 57 insertions(+), 0 deletions(-)
---
diff --git a/demos/gtk-demo/demos/builder.py b/demos/gtk-demo/demos/builder.py
new file mode 100644
index 0000000..cddb1c2
--- /dev/null
+++ b/demos/gtk-demo/demos/builder.py
@@ -0,0 +1,57 @@
+#!/bin/env python
+# -*- Mode: Python; py-indent-offset: 4 -*-
+# vim: tabstop=4 shiftwidth=4 expandtab
+#
+# Copyright (C) 2010 Red Hat, Inc., John (J5) Palmieri <johnp redhat com>
+#
+# 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.1 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., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301
+# USA
+
+title = "Builder"
+description = """
+Demonstrates an interface loaded from a XML description.
+"""
+
+# See FIXME's
+is_fully_bound = False
+
+from gi.repository import Gtk, GdkPixbuf, Gdk
+import os
+
+class BuilderApp:
+    def __init__(self):
+        self.builder = Gtk.Builder()
+        filename = os.path.join('data', 'demo.ui')
+        self.builder.add_from_file(filename)
+        self.builder.connect_signals(self)
+
+        window = self.builder.get_object('window1')
+        window.connect('destroy', lambda x: Gtk.main_quit())
+        window.show_all()
+
+    def about_activate(self, action):
+        about_dlg = self.builder.get_object('aboutdialog1')
+        about_dlg.run()
+        about_dlg.hide()
+
+    def quit_activate(self, action):
+        Gtk.main_quit()
+
+def main():
+    app = BuilderApp()
+    Gtk.main()
+
+if __name__ == '__main__':
+    main()



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]