(self, canvas=None,
shape=_CFG["shape"],
undobuffersize=_CFG["undobuffersize"],
visible=_CFG["visible"])
| 2601 | screens = [] |
| 2602 | |
| 2603 | def __init__(self, canvas=None, |
| 2604 | shape=_CFG["shape"], |
| 2605 | undobuffersize=_CFG["undobuffersize"], |
| 2606 | visible=_CFG["visible"]): |
| 2607 | if isinstance(canvas, _Screen): |
| 2608 | self.screen = canvas |
| 2609 | elif isinstance(canvas, TurtleScreen): |
| 2610 | if canvas not in RawTurtle.screens: |
| 2611 | RawTurtle.screens.append(canvas) |
| 2612 | self.screen = canvas |
| 2613 | elif isinstance(canvas, (ScrolledCanvas, Canvas)): |
| 2614 | for screen in RawTurtle.screens: |
| 2615 | if screen.cv == canvas: |
| 2616 | self.screen = screen |
| 2617 | break |
| 2618 | else: |
| 2619 | self.screen = TurtleScreen(canvas) |
| 2620 | RawTurtle.screens.append(self.screen) |
| 2621 | else: |
| 2622 | raise TurtleGraphicsError("bad canvas argument %s" % canvas) |
| 2623 | |
| 2624 | screen = self.screen |
| 2625 | TNavigator.__init__(self, screen.mode()) |
| 2626 | TPen.__init__(self) |
| 2627 | screen._turtles.append(self) |
| 2628 | self.drawingLineItem = screen._createline() |
| 2629 | self.turtle = _TurtleImage(screen, shape) |
| 2630 | self._poly = None |
| 2631 | self._creatingPoly = False |
| 2632 | self._fillitem = self._fillpath = None |
| 2633 | self._shown = visible |
| 2634 | self._hidden_from_screen = False |
| 2635 | self.currentLineItem = screen._createline() |
| 2636 | self.currentLine = [self._position] |
| 2637 | self.items = [self.currentLineItem] |
| 2638 | self.stampItems = [] |
| 2639 | self._undobuffersize = undobuffersize |
| 2640 | self.undobuffer = Tbuffer(undobuffersize) |
| 2641 | self._update() |
| 2642 | |
| 2643 | def reset(self): |
| 2644 | """Delete the turtle's drawings and restore its default values. |
nothing calls this directly
no test coverage detected