Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/TurtleArt
diff options
context:
space:
mode:
Diffstat (limited to 'TurtleArt')
-rw-r--r--TurtleArt/sprites.py3
-rw-r--r--TurtleArt/tacanvas.py8
2 files changed, 6 insertions, 5 deletions
diff --git a/TurtleArt/sprites.py b/TurtleArt/sprites.py
index 9577656..a33b593 100644
--- a/TurtleArt/sprites.py
+++ b/TurtleArt/sprites.py
@@ -334,7 +334,8 @@ class Sprite:
self.rect.x + self._dx[i],
self.rect.y + self._dy[i])
elif _is_pixbuf(img):
- cr.set_source_pixbuf(img,
+ # on GTK2, cr must be a Gdk.CairoContext
+ Gdk.cairo_set_source_pixbuf(cr, img,
self.rect.x + self._dx[i],
self.rect.y + self._dy[i])
# self.surfaces[i] = cr.get_target()
diff --git a/TurtleArt/tacanvas.py b/TurtleArt/tacanvas.py
index 1c545a6..ac20092 100644
--- a/TurtleArt/tacanvas.py
+++ b/TurtleArt/tacanvas.py
@@ -106,7 +106,7 @@ class TurtleGraphics:
# Build a cairo.Context from a cairo.XlibSurface
self.canvas = cairo.Context(self.tw.turtle_canvas)
- cr = Gdk.CairoContext(self.canvas)
+ cr = Gdk.CairoContext(self.canvas) # GTK2 compat
cr.set_line_cap(1) # Set the line cap to be round
self.cx = 0
@@ -527,14 +527,14 @@ class TurtleGraphics:
def draw_pixbuf(self, pixbuf, a, b, x, y, w, h, path, share=True):
''' Draw a pixbuf '''
# Build a Gdk.CairoContext from a cairo.Context to access
- # the set_source_pixbuf attribute.
- cr = Gdk.CairoContext(self.canvas)
+ # the set_source_pixbuf attribute. (GTK2 only)
+ cr = Gdk.CairoContext(self.canvas) # GTK2 compat
cr.save()
# center the rotation on the center of the image
cr.translate(x + w / 2., y + h / 2.)
cr.rotate(self.heading * DEGTOR)
cr.translate(-x - w / 2., -y - h / 2.)
- cr.set_source_pixbuf(pixbuf, x, y)
+ Gdk.cairo_set_source_pixbuf(cr, pixbuf, x, y)
cr.rectangle(x, y, w, h)
cr.fill()
cr.restore()