Merge lp:~oif-team/libgrope/676473-fixup-examples into lp:libgrope

Proposed by Duncan McGreggor
Status: Merged
Merged at revision: 8
Proposed branch: lp:~oif-team/libgrope/676473-fixup-examples
Merge into: lp:libgrope
Diff against target: 179 lines (+65/-66)
6 files modified
Makefile.am (+1/-1)
configure.ac (+1/-1)
example/python/example.py (+0/-48)
example/python/pygrope-gestures.xml (+0/-16)
examples/pygrope/pygrope-gestures.xml (+16/-0)
examples/pygrope/pygrope.py (+47/-0)
To merge this branch: bzr merge lp:~oif-team/libgrope/676473-fixup-examples
Reviewer Review Type Date Requested Status
Cody Russell (community) Approve
Review via email: mp+41082@code.launchpad.net

Description of the change

Okay, I've cleaned up the examples. Additionally, this branch includes the full dev history of the Python example.

To post a comment you must log in.
Revision history for this message
Cody Russell (bratsche) :
review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'Makefile.am'
2--- Makefile.am 2010-11-10 20:06:03 +0000
3+++ Makefile.am 2010-11-17 18:29:14 +0000
4@@ -4,7 +4,7 @@
5 Q = $(V:1=)
6 QUIET_GEN = $(Q:@=@echo ' GEN '$@;)
7
8-SUBDIRS = build src example
9+SUBDIRS = build src examples/rectangle-mover
10
11 libgrope-0.1.pc: libgrope.pc
12 $(QUIET_GEN) cp -f libgrope.pc libgrope-0.1.pc
13
14=== modified file 'configure.ac'
15--- configure.ac 2010-11-10 20:49:49 +0000
16+++ configure.ac 2010-11-17 18:29:14 +0000
17@@ -119,7 +119,7 @@
18 build/autotools/shave-libtool
19 build/autotools/shave
20 src/Makefile
21- example/Makefile
22+ examples/rectangle-mover/Makefile
23 libgrope.pc
24 ])
25
26
27=== removed directory 'example/python'
28=== removed file 'example/python/example.py'
29--- example/python/example.py 2010-11-15 16:05:37 +0000
30+++ example/python/example.py 1970-01-01 00:00:00 +0000
31@@ -1,48 +0,0 @@
32-import pygtk
33-from gi.repository import Gtk
34-from gi.repository import Grope
35-
36-# XXX For now, we'll use Grope directly. Once we have a good sense of what's
37-# going to be needed in general for general Python code using Grope, we might
38-# want to put that stuff in a wrapper grope module, and import everything from
39-# there instead.
40-
41-
42-class GestureTester(object):
43-
44- def __init__(self):
45- builder = Gtk.Builder()
46- builder.add_from_file("pygrope-gestures.xml")
47- builder.connect_signals(self)
48- self.window = builder.get_object("window1")
49- self.window.show()
50-
51- def window_mapped(self, widget, data=None):
52- # The gesture manager is only going to be needed for GTK2, since GTK3
53- # will have the gesture API natively. Conversely, pygrope will only be
54- # for GTK2, since PyGTK3 will having the bindings.
55- gesture_manager = Grope.GestureManager()
56- # For the purpose of this example, we are registering all gestures; we
57- # could limit this by choosing a different pygrope.GROPE_GESTURE_*
58- # mask. Similarly, we're using one set of callbacks for all the
59- # gestures; we could have different callbacks for different registered
60- # gestures.
61- # XXX the comment above is for the new API; the example below has been
62- # reverted to the older API until the new one is merged to trunk.
63- finger_count = 2
64- gesture_manager.register_window(self.window,
65- Grope.GestureType.PINCH,
66- finger_count,
67- self.callback,
68- None, None)
69-
70- def callback(self, window, time_type, gesture_type, gesture_event):
71- print "received gesture"
72-
73- def quit(self, widget, data=None):
74- Gtk.main_quit()
75-
76-
77-if __name__ == "__main__":
78- app = GestureTester()
79- Gtk.main()
80
81=== removed file 'example/python/pygrope-gestures.xml'
82--- example/python/pygrope-gestures.xml 2010-11-12 20:27:52 +0000
83+++ example/python/pygrope-gestures.xml 1970-01-01 00:00:00 +0000
84@@ -1,16 +0,0 @@
85-<?xml version="1.0"?>
86-<interface>
87- <requires lib="gtk+" version="2.16"/>
88- <!-- interface-naming-policy project-wide -->
89- <object class="GtkWindow" id="window1">
90- <property name="width_request">0</property>
91- <property name="height_request">0</property>
92- <property name="default_width">1400</property>
93- <property name="default_height">800</property>
94- <signal name="map_event" handler="window_mapped"/>
95- <signal name="delete_event" handler="quit"/>
96- <child>
97- <placeholder/>
98- </child>
99- </object>
100-</interface>
101
102=== renamed directory 'example' => 'examples'
103=== added directory 'examples/pygrope'
104=== added file 'examples/pygrope/pygrope-gestures.xml'
105--- examples/pygrope/pygrope-gestures.xml 1970-01-01 00:00:00 +0000
106+++ examples/pygrope/pygrope-gestures.xml 2010-11-17 18:29:14 +0000
107@@ -0,0 +1,16 @@
108+<?xml version="1.0"?>
109+<interface>
110+ <requires lib="gtk+" version="2.16"/>
111+ <!-- interface-naming-policy project-wide -->
112+ <object class="GtkWindow" id="window1">
113+ <property name="width_request">0</property>
114+ <property name="height_request">0</property>
115+ <property name="default_width">1400</property>
116+ <property name="default_height">800</property>
117+ <signal name="map_event" handler="window_mapped"/>
118+ <signal name="delete_event" handler="quit"/>
119+ <child>
120+ <placeholder/>
121+ </child>
122+ </object>
123+</interface>
124
125=== added file 'examples/pygrope/pygrope.py'
126--- examples/pygrope/pygrope.py 1970-01-01 00:00:00 +0000
127+++ examples/pygrope/pygrope.py 2010-11-17 18:29:14 +0000
128@@ -0,0 +1,47 @@
129+import pygtk
130+from gi.repository import Gtk
131+from gi.repository import Grope
132+
133+
134+# XXX For now, we'll use Grope directly. Once we have a good sense of what's
135+# going to be needed in general for general Python code using Grope, we might
136+# want to put that stuff in a wrapper grope module, and import everything from
137+# there instead.
138+
139+
140+class GestureTester(object):
141+
142+ def __init__(self):
143+ builder = Gtk.Builder()
144+ builder.add_from_file("pygrope-gestures.xml")
145+ builder.connect_signals(self)
146+ self.window = builder.get_object("window1")
147+ self.window.show()
148+
149+ def window_mapped(self, widget, data=None):
150+ # The gesture manager is only going to be needed for GTK2, since GTK3
151+ # will have the gesture API natively. Conversely, pygrope will only be
152+ # for GTK2, since PyGTK3 will having the bindings.
153+ gesture_manager = Grope.GestureManager()
154+ # For the purpose of this example, we are registering all gestures; we
155+ # could limit this by choosing a different pygrope.GROPE_GESTURE_*
156+ # mask. Similarly, we're using one set of callbacks for all the
157+ # gestures; we could have different callbacks for different registered
158+ # gestures.
159+ # XXX the comment above is for the new API; the example below has been
160+ # reverted to the older API until the new one is merged to trunk.
161+ finger_count = 2
162+ gesture_manager.register_window(
163+ self.window, Grope.GestureType.PINCH, finger_count,self.callback,
164+ None, None)
165+
166+ def callback(self, window, time_type, gesture_type, gesture_event):
167+ print "received gesture"
168+
169+ def quit(self, widget, data=None):
170+ Gtk.main_quit()
171+
172+
173+if __name__ == "__main__":
174+ app = GestureTester()
175+ Gtk.main()
176
177=== added directory 'examples/rectangle-mover'
178=== renamed file 'example/Makefile.am' => 'examples/rectangle-mover/Makefile.am'
179=== renamed file 'example/gesture.c' => 'examples/rectangle-mover/gesture.c'

Subscribers

People subscribed via source and target branches

to all changes: