From 9d575d1de1bfae8212a936aaf64556dd98a9ee80 Mon Sep 17 00:00:00 2001 From: Walter Bender Date: Wed, 20 Jan 2010 13:44:27 +0000 Subject: beginning integration --- diff --git a/block.py b/block.py index d2ca4b5..45412b8 100644 --- a/block.py +++ b/block.py @@ -78,8 +78,10 @@ class Block: # debug code # etc. - def _new_block_from_prototype(self, prototype_style, labels, colors, scale): - if prototype_style == 'forward': + def _new_block_from_prototype(self, proto_name, labels, colors, scale): + basic_style = ['forward', 'back', 'left', 'right'] + box_style = ['number'] + if proto_name in basic_style: svg = block_factory.SVG() svg.set_scale(scale) svg.expand(20,0) @@ -89,8 +91,17 @@ class Block: svg.set_slot(True) svg.set_gradiant(True) svg.set_colors(colors) - self.spr = sprites.Sprite(self.blocks.sprites, 0, 0, - svg_str_to_pixbuf(svg.basic_block())) + self.spr = sprites.Sprite(self.blocks.sprites, 0, 0, + svg_str_to_pixbuf(svg.basic_block())) + elif proto_name in number_style: + svg = block_factory.SVG() + svg.set_scale(scale) + svg.expand(20,0) + svg.set_gradiant(True) + svg.set_colors(colors) + self.spr = sprites.Sprite(self.blocks.sprites, 0, 0, + svg_str_to_pixbuf(svg.basic_box())) + for l in labels: self.spr.set_label(l, labels.index(l)) diff --git a/tawindow.py b/tawindow.py index 4b8f485..7d61fc0 100644 --- a/tawindow.py +++ b/tawindow.py @@ -55,6 +55,9 @@ from tahoverhelp import * from gettext import gettext as _ +import sprites +import block + """ TurtleArt Window class abstraction """ @@ -87,7 +90,6 @@ class TurtleArtWindow(): setup_misc(self) self._select_category(self.selbuttons[0]) - def _setup_initial_values(self, win, path, lang, parent): self.window = win self.path = os.path.join(path,'images') @@ -147,6 +149,13 @@ class TurtleArtWindow(): self.polar = False self.spr = None # "currently selected spr" + """ + NEW SVG/BLOCK initializations + """ + self.nsprites = sprites.Sprites(self.window) + self.blocks = block.Blocks(self.nsprites) + + """ DEPRECATED """ @@ -333,7 +342,8 @@ class TurtleArtWindow(): XO-1 ? """ def _is_XO_1(self): - return os.path.exists('/etc/olpc-release') or os.path.exists('/sys/power/olpc-pm') + return os.path.exists('/etc/olpc-release') or \ + os.path.exists('/sys/power/olpc-pm') """ find a stack to run (any stack without a hat) @@ -524,17 +534,16 @@ class TurtleArtWindow(): if event.get_state()>k.gdk.MOD1_MASK: alt_mask = True + alt_flag = 'T' else: alt_mask = False + alt_flag = 'F' results = self._key_press(alt_mask, keyname, keyunicode) if keyname is not None and self._sharing(): - if alt_mask: - self.activity._send_event("k:"+'T'+":"+keyname+":"+str(keyunicode)) - else: - self.activity._send_event("k:"+'F'+":"+keyname+":"+str(keyunicode)) + self.activity._send_event("k:%s:%s:%s" % (alt_flag, keyname, + str(keyunicode))) return keyname - def _key_press(self, alt_mask, keyname, keyunicode, verbose=False): if keyname is None: return False -- cgit v0.9.1