diff options
author | Walter Bender <walter.bender@gmail.com> | 2011-11-03 17:00:42 (GMT) |
---|---|---|
committer | Walter Bender <walter.bender@gmail.com> | 2011-11-03 17:00:42 (GMT) |
commit | 4cb33de1c1ac56189c1094ba414c021da7fd77a5 (patch) | |
tree | 3a6650b69ecdb8a202fef50c81fdca30a879d8f0 /TurtleArt | |
parent | 8e9416820d33cec89ab01350569933fc10ac662c (diff) |
fix problem with hide/restore for collapsed stacks (no more canvas layer to hide behind)
Diffstat (limited to 'TurtleArt')
-rw-r--r-- | TurtleArt/sprites.py | 4 | ||||
-rw-r--r-- | TurtleArt/tautils.py | 2 |
2 files changed, 6 insertions, 0 deletions
diff --git a/TurtleArt/sprites.py b/TurtleArt/sprites.py index e3d6e6d..f4ca4b4 100644 --- a/TurtleArt/sprites.py +++ b/TurtleArt/sprites.py @@ -305,6 +305,10 @@ class Sprite: self.inval() self._sprites.remove_from_list(self) + def restore(self): + ''' Restore a hidden sprite ''' + self.inval() + def inval(self): ''' Invalidate a region for gtk ''' # self._sprites.window.invalidate_rect(self.rect, False) diff --git a/TurtleArt/tautils.py b/TurtleArt/tautils.py index a47c063..9372576 100644 --- a/TurtleArt/tautils.py +++ b/TurtleArt/tautils.py @@ -491,6 +491,7 @@ def restore_stack(top): _dy += _newdy - _olddy else: if not _hit_bottom: + _blk.spr.restore() _blk.spr.set_layer(BLOCK_LAYER) _blk.status = None else: @@ -575,6 +576,7 @@ def collapse_stack(top): else: if not _hit_bottom: _blk.spr.set_layer(HIDE_LAYER) + _blk.spr.hide() _blk.status = 'collapsed' else: _blk.spr.move_relative((_dx, _dy)) |