Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/examples/scene/scene.py
diff options
context:
space:
mode:
Diffstat (limited to 'examples/scene/scene.py')
-rwxr-xr-xexamples/scene/scene.py39
1 files changed, 39 insertions, 0 deletions
diff --git a/examples/scene/scene.py b/examples/scene/scene.py
new file mode 100755
index 0000000..5468cd1
--- /dev/null
+++ b/examples/scene/scene.py
@@ -0,0 +1,39 @@
+#!/usr/bin/python
+
+import pygtk
+pygtk.require('2.0')
+import gtk
+
+from sugar.scene.Stage import Stage
+from sugar.scene.Group import Group
+from sugar.scene.PixbufActor import PixbufActor
+
+def drawing_area_expose_cb(widget, event, stage):
+ stage.render(widget.window)
+
+stage = Stage()
+
+pixbuf = gtk.gdk.pixbuf_new_from_file('background.png')
+stage.add(PixbufActor(pixbuf))
+
+icons_group = Group()
+
+i = 1
+while i <= 5:
+ pixbuf = gtk.gdk.pixbuf_new_from_file('activity%d.png' % i)
+ icons_group.add(PixbufActor(pixbuf))
+ i += 1
+
+stage.add(icons_group)
+
+window = gtk.Window()
+window.set_default_size(640, 480)
+
+drawing_area = gtk.DrawingArea()
+drawing_area.connect('expose_event', drawing_area_expose_cb, stage)
+window.add(drawing_area)
+drawing_area.show()
+
+window.show()
+
+gtk.main()