diff options
Diffstat (limited to 'TurtleArt/sprites.py')
-rw-r--r-- | TurtleArt/sprites.py | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/TurtleArt/sprites.py b/TurtleArt/sprites.py index d9c3a7b..9577656 100644 --- a/TurtleArt/sprites.py +++ b/TurtleArt/sprites.py @@ -365,14 +365,14 @@ class Sprite: def draw_label(self, cr): ''' Draw the label based on its attributes ''' # Create a pangocairo context - cr = PangoCairo.CairoContext(cr) my_width = self.rect.width - self._margins[0] - self._margins[2] if my_width < 0: my_width = 0 my_height = self.rect.height - self._margins[1] - self._margins[3] for i in range(len(self.labels)): - pl = cr.create_layout() - pl.set_text(str(self.labels[i])) + pcr = PangoCairo.create_context(cr) + pl = Pango.Layout.new(pcr) + pl.set_text(str(self.labels[i]), -1) # pl = self._sprites.canvas.create_pango_layout(str(self.labels[i])) self._fd.set_size(int(self._scale[i] * Pango.SCALE)) pl.set_font_description(self._fd) @@ -387,7 +387,7 @@ class Sprite: j = len(self.labels[i]) - 1 while(w > my_width and j > 0): pl.set_text( - "…" + self.labels[i][len(self.labels[i]) - j:]) + "…" + self.labels[i][len(self.labels[i]) - j:],-1) self._fd.set_size(int(self._scale[i] * Pango.SCALE)) pl.set_font_description(self._fd) w = pl.get_size()[0] / Pango.SCALE @@ -408,18 +408,18 @@ class Sprite: cr.save() cr.translate(x, y) cr.set_source_rgb(self._color[0], self._color[1], self._color[2]) - cr.update_layout(pl) - cr.show_layout(pl) + PangoCairo.update_layout(cr, pl) + PangoCairo.show_layout(cr, pl) cr.restore() def label_width(self): ''' Calculate the width of a label ''' - cr = PangoCairo.CairoContext(self._sprites.cr) + cr = PangoCairo.create_context(self._sprites.cr) if cr is not None: max = 0 for i in range(len(self.labels)): - pl = cr.create_layout() - pl.set_text(self.labels[i]) + pl = Pango.Layout.new(cr) + pl.set_text(self.labels[i], -1) self._fd.set_size(int(self._scale[i] * Pango.SCALE)) pl.set_font_description(self._fd) w = pl.get_size()[0] / Pango.SCALE |