From 5ac97501a38f9176da336a6a9ebf847ba3de1949 Mon Sep 17 00:00:00 2001 From: Walter Bender Date: Wed, 27 Jan 2010 16:55:10 +0000 Subject: fixed overlay sprite management --- diff --git a/TurtleArtActivity.py b/TurtleArtActivity.py index 18e6f82..1cbe1ce 100644 --- a/TurtleArtActivity.py +++ b/TurtleArtActivity.py @@ -418,18 +418,18 @@ class TurtleArtActivity(activity.Activity): """ def _do_cartesian_cb(self, button): if self.tw.cartesian is True: - self.tw.overlay_shapes[0].hide() + self.tw.overlay_shapes['Cartesian'].hide() self.tw.cartesian = False else: - self.tw.overlay_shapes[0].set_layer(OVERLAY_LAYER) + self.tw.overlay_shapes['Cartesian'].set_layer(OVERLAY_LAYER) self.tw.cartesian = True def _do_polar_cb(self, button): if self.tw.polar is True: - self.tw.overlay_shapes[1].hide() + self.tw.overlay_shapes['polar'].hide() self.tw.polar = False else: - self.tw.overlay_shapes[1].set_layer(OVERLAY_LAYER) + self.tw.overlay_shapes['polar'].set_layer(OVERLAY_LAYER) self.tw.polar = True """ diff --git a/sprite_factory.py b/sprite_factory.py index 69228ba..20ce42f 100755 --- a/sprite_factory.py +++ b/sprite_factory.py @@ -210,9 +210,9 @@ class SVG: return self._header() + svg def turtle(self, colors): - self._fill, self._stroke = "#D0D000", "none" + self._fill, self._stroke = colors[2], "none" svg = self._rect(21, 21, 19.5, 18) - self._fill = "#808000" + self._fill = colors[3] svg += self._rect(3, 3, 30, 24) svg += self._rect(3, 3, 24, 24) svg += self._rect(3, 3, 30, 30) diff --git a/tacanvas.py b/tacanvas.py index 5bf62a1..3f680d9 100644 --- a/tacanvas.py +++ b/tacanvas.py @@ -63,8 +63,9 @@ def tNew(tw,w,h): (t.cx,t.cy) = t.canvas.get_xy() t.canvas.type = 'canvas' t.canvas.set_layer(CANVAS_LAYER) - t.shapelist = [] - t.t = taturtle.Turtle(tw.turtle_list, tw.sprite_list, ["#800000", "#A00000"]) + # t.shapelist = [] + t.t = taturtle.Turtle(tw.turtle_list, tw.sprite_list, + ["#800000", "#A00000", "#D00000", "#800000"]) t.spr = t.t.spr t.spr.type = 'turtle' t.spr.set_layer(TURTLE_LAYER) diff --git a/taturtle.py b/taturtle.py index 6f6e0ca..63ea7f0 100644 --- a/taturtle.py +++ b/taturtle.py @@ -62,7 +62,8 @@ class Turtles: class Turtle: # The turtle is not a block, just a sprite with an orientation def __init__(self, turtle_list, sprite_list, - colors=["#008000", "#00A000"], scale=1.0): + colors=["#008000", "#00A000", "#D0D000", "#808000"], + scale=1.0): self.shapes = [] self.type = 'turtle' _svg = SVG() diff --git a/tawindow.py b/tawindow.py index 421f85c..1758873 100644 --- a/tawindow.py +++ b/tawindow.py @@ -285,25 +285,26 @@ class TurtleArtWindow(): """ def _setup_misc(self): # media blocks get positioned into other blocks - for i, name in enumerate(MEDIA_SHAPES): - self.media_shapes[i] = sprites.Sprite(self.sprite_list, 0, 0, + for name in MEDIA_SHAPES: + self.media_shapes[name] = sprites.Sprite(self.sprite_list, 0, 0, self._load_sprite_from_file("%s/%s.svg" % (self.path, name))) - self.media_shapes[i].set_layer(HIDE_LAYER) - self.media_shapes[i].type = 'media' + self.media_shapes[name].set_layer(HIDE_LAYER) + self.media_shapes[name].type = 'media' for i, name in enumerate(STATUS_SHAPES): - self.status_shapes[name] =\ - self._load_sprite_from_file("%s/%s.svg" % (self.path, name)) + self.status_shapes[name] = self._load_sprite_from_file( + "%s/%s.svg" % (self.path, name)) self.status_spr = sprites.Sprite(self.sprite_list, self.height-75, 0, self.status_shapes['status']) self.status_spr.set_layer(HIDE_LAYER) self.status_spr.type = 'status' - for i in enumerate(OVERLAY_SHAPES): - self.overlay_shapes[i] = sprites.Sprite(self.sprite_list, 0, 0, + for name in OVERLAY_SHAPES: + self.overlay_shapes[name] = sprites.Sprite(self.sprite_list, + int(self.width/2-600), int(self.height/2-450), self._load_sprite_from_file("%s/%s.svg" % (self.path, name))) - self.overlay_shapes[i].set_layer(HIDE_LAYER) - self.overlay_shapes[i].type = 'overlay' + self.overlay_shapes[name].set_layer(HIDE_LAYER) + self.overlay_shapes[name].type = 'overlay' def _load_sprite_from_file(self, name): svg = sprite_factory.SVG() -- cgit v0.9.1