Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/tawindow.py
diff options
context:
space:
mode:
authorWalter Bender <walter@walter-laptop.(none)>2010-02-25 14:24:13 (GMT)
committer Walter Bender <walter@walter-laptop.(none)>2010-02-25 14:24:13 (GMT)
commitb98a33bb8136c2de6b570491ad82f529696157f1 (patch)
tree4ec114b7f4a44878372a6242cec45b1adadce7db /tawindow.py
parenteff044092c104f321de3cb754f8fc5f4e7106cbc (diff)
autoload description blocks
Diffstat (limited to 'tawindow.py')
-rw-r--r--tawindow.py28
1 files changed, 28 insertions, 0 deletions
diff --git a/tawindow.py b/tawindow.py
index 46644dc..1330932 100644
--- a/tawindow.py
+++ b/tawindow.py
@@ -1372,6 +1372,8 @@ class TurtleArtWindow():
blk.spr.labels[0] += CURSOR
elif blk.name in BOX_STYLE_MEDIA:
self._import_from_journal(self.selected_blk)
+ if blk.name == 'journal' and self.running_sugar:
+ self._load_description_block(blk)
elif blk.name=='identity2' or blk.name=='hspace':
group = self._find_group(blk)
if self._hide_button_hit(blk.spr, x, y):
@@ -1874,6 +1876,32 @@ class TurtleArtWindow():
self._update_media_icon(blk, fname)
"""
+ When we load a journal block, look for a corresponding description block
+ """
+ def _load_description_block(self, blk):
+ if blk == None or blk.name != 'journal' or len(blk.values) == 0 or\
+ blk.connections[0] is None:
+ return
+ cblk = blk.connections[0]
+ dblk = self._find_blk_below(cblk, 'description')
+ # Only autoupdate the block if it is empty
+ if dblk != None and (len(dblk.values) == 0 or dblk.values[0] == None):
+ # Copy the dsobject id and update the icon
+ self._update_media_icon(dblk, None, blk.values[0])
+
+ """
+ Find a specific block below this block.
+ """
+ def _find_blk_below(self, blk, name):
+ if blk == None or len(blk.connections) == 0:
+ return
+ group = self._find_group(blk)
+ for b in group:
+ if b.name == name:
+ return b
+ return None
+
+ """
Update the icon on a 'loaded' media block.
"""
def _update_media_icon(self, blk, name, value=''):