Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/pysamples/forward_push.py
diff options
context:
space:
mode:
authorWalter Bender <walter@sugarlabs.org>2013-06-25 19:42:11 (GMT)
committer Walter Bender <walter@sugarlabs.org>2013-06-25 19:42:11 (GMT)
commit1be78ae1e76d5ecc5862edf4a96479f2995b3a74 (patch)
tree8df1b358d0da6e2624da3e669582a0b8b7cfcc3e /pysamples/forward_push.py
parentf322249fb367a52e82de092ac8a3433320dacf3a (diff)
migrate to turtle-centric model
Diffstat (limited to 'pysamples/forward_push.py')
-rw-r--r--pysamples/forward_push.py27
1 files changed, 15 insertions, 12 deletions
diff --git a/pysamples/forward_push.py b/pysamples/forward_push.py
index b98c726..ca527db 100644
--- a/pysamples/forward_push.py
+++ b/pysamples/forward_push.py
@@ -1,10 +1,13 @@
-#Copyright (c) 2012, Walter Bender
+#Copyright (c) 2012-2013, Walter Bender
# Usage: Import this code into a Python (user-definable) block; when
-# this code is run, the turtle will draw a line of the length of the
-# numeric argument block docked to the Python block. But before
-# drawing the line, it pushes the rgb values of the destination to the
-# FILO.
+# this code is run, a new block will be added to the Turtle Palette.
+# This block will be named 'name', the value of the argument block
+# docked to the Python block.
+#
+# The new block will cause the turtle to draw a line of the
+# length. But before drawing the line, it pushes the rgb values of the
+# destination to the FILO.
def myblock(tw, name):
@@ -15,16 +18,16 @@ def myblock(tw, name):
line_length = float(line_length)
except ValueError:
return
- penstatus = tw.canvas.pendown
- tw.canvas.setpen(False)
- tw.canvas.forward(line_length)
- r, g, b, a = tw.canvas.get_pixel()
+ penstatus = tw.turtles.get_active_turtle().get_pen_status()
+ tw.turtles.get_active_turtle().set_pen_state(False)
+ tw.turtles.get_active_turtle().forward(line_length)
+ r, g, b, a = tw.turtles.get_active_turtle().get_pixel()
tw.lc.heap.append(b)
tw.lc.heap.append(g)
tw.lc.heap.append(r)
- tw.canvas.forward(-line_length)
- tw.canvas.setpen(penstatus)
- tw.canvas.forward(line_length)
+ tw.turtles.get_active_turtle().forward(-line_length)
+ tw.turtles.get_active_turtle().set_pen_state(penstatus)
+ tw.turtles.get_active_turtle().forward(line_length)
return
from TurtleArt.tapalette import make_palette, palette_name_to_index