[gnome-devel-docs] Samples python: Added GMenu example



commit 9628813563c0b8b381d5cd05f71f2a41a7525fa9
Author: Tiffany Antopolski <tiffany antopolski gmail com>
Date:   Tue May 1 12:52:25 2012 -0400

    Samples python: Added GMenu example

 platform-demos/C/gmenu.py.page      |   33 ++++++++++++++++++++++
 platform-demos/C/media/gmenu.py.png |  Bin 0 -> 29950 bytes
 platform-demos/C/samples/gmenu.py   |   51 +++++++++++++++++++++++++++++++++++
 platform-demos/Makefile.am          |    3 ++
 4 files changed, 87 insertions(+), 0 deletions(-)
---
diff --git a/platform-demos/C/gmenu.py.page b/platform-demos/C/gmenu.py.page
new file mode 100644
index 0000000..2e5e5c2
--- /dev/null
+++ b/platform-demos/C/gmenu.py.page
@@ -0,0 +1,33 @@
+<page xmlns="http://projectmallard.org/1.0/";
+      xmlns:xi="http://www.w3.org/2001/XInclude";
+      type="guide" style="task"
+      id="gmenu.py">
+  <info>
+    <link type="guide" xref="beginner.py#cmenu-combo-toolbar"/>
+    <revision version="0.1" date="2012-04-28" status="draft"/>
+
+    <credit type="author copyright">
+      <name>Tiffany Antopolski</name>
+      <email>tiffany antopolski gmail com</email>
+      <years>2012</years>
+    </credit>
+
+    <desc>A simple implementation of GMenuModel</desc>
+  </info>
+
+  <title>GMenu</title>
+  <media type="image" mime="image/png" src="media/gmenu.py.png"/>
+  <p>A GtkApplication with a simple GMenu and SimpleActions</p>
+  <note><p><em style="bold">You need to be running Gtk3.4 or later for this to work</em></p></note>
+
+<code mime="text/x-vala" style="numbered">
+<xi:include href="samples/gmenu.py" parse="text"><xi:fallback/></xi:include>		
+</code>
+<p>
+  In this sample we used the following:
+</p>
+<list>
+  <item><p><link href="http://developer.gnome.org/gio/unstable/GMenu.html";>GMenu</link></p></item>
+  <item><p><link href="http://developer.gnome.org/gio/stable/GSimpleAction.html";>GSimpleAction</link></p></item>
+</list>
+</page>
diff --git a/platform-demos/C/media/gmenu.py.png b/platform-demos/C/media/gmenu.py.png
new file mode 100644
index 0000000..e905c94
Binary files /dev/null and b/platform-demos/C/media/gmenu.py.png differ
diff --git a/platform-demos/C/samples/gmenu.py b/platform-demos/C/samples/gmenu.py
new file mode 100644
index 0000000..155f33d
--- /dev/null
+++ b/platform-demos/C/samples/gmenu.py
@@ -0,0 +1,51 @@
+from gi.repository import GLib
+from gi.repository import Gtk
+from gi.repository import Gio
+import sys
+
+class MyWindow(Gtk.ApplicationWindow):
+    def __init__(self, app):
+        Gtk.Window.__init__(self, title="GMenu Example", application=app)
+
+class MyApplication(Gtk.Application):
+    def __init__(self):
+        Gtk.Application.__init__(self, application_id="org.gtk.example.grid")
+
+    def do_activate(self):
+        win = MyWindow(self)
+        win.show_all()
+
+    def new_cb(self, action, parameter):
+        print "This does nothing. It is only a demonstration."
+
+    def about_cb(self, action, parameter):
+        print "No AboutDialog for you. This is only a demonstration"
+
+    def quit_cb(self, action, parameter):
+        self.quit()
+
+    def do_startup (self):
+        Gtk.Application.do_startup (self)
+
+        menu = Gio.Menu()
+        menu.append("New", "app.new")
+        menu.append ("Awesome", "app.awesome")
+        menu.append ("About", "app.about")
+        menu.append("Quit", "app.quit")
+        self.set_app_menu (menu)
+
+        new_action = Gio.SimpleAction.new ("new", None)
+        new_action.connect ("activate", self.new_cb)
+        self.add_action (new_action)
+	
+        about_action = Gio.SimpleAction.new ("about", None)
+        about_action.connect ("activate", self.about_cb)
+        self.add_action (about_action)
+
+        quit_action = Gio.SimpleAction.new("quit", None)
+        quit_action.connect("activate", self.quit_cb)
+        self.add_action (quit_action)
+
+app = MyApplication()
+exit_status = app.run(sys.argv)
+sys.exit(exit_status)
diff --git a/platform-demos/Makefile.am b/platform-demos/Makefile.am
index 9c7c568..b35512a 100644
--- a/platform-demos/Makefile.am
+++ b/platform-demos/Makefile.am
@@ -25,6 +25,7 @@ demo_sources = \
 	samples/button.vala			\
 	samples/dialog.vala			\
 	samples/gmenu.c				\
+	samples/gmenu.py			\
 	samples/grid.py				\
 	samples/GtkApplicationWindow.c		\
 	samples/GtkApplicationWindow.vala	\
@@ -43,6 +44,7 @@ DOC_FIGURES = \
 	media/fedora.png			\
 	media/opensuse.png			\
 	media/gmenu.png				\
+	media/gmenu.py.png			\
 	media/grid.png				\
 	media/GtkApplication1.png		\
 	media/GtkApplication2.png		\
@@ -83,6 +85,7 @@ DOC_PAGES =				\
 	getting-ready.page		\
 	grid.js.page			\
 	gmenu.c.page			\
+	gmenu.py.page			\
 	grid.py.page			\
 	GtkApplication.vala.page	\
 	GtkApplicationWindow.c.page	\



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