(self, canvas=None,
shape=_CFG["shape"],
undobuffersize=_CFG["undobuffersize"],
visible=_CFG["visible"])
| 2416 | screens = [] |
| 2417 | |
| 2418 | def __init__(self, canvas=None, |
| 2419 | shape=_CFG["shape"], |
| 2420 | undobuffersize=_CFG["undobuffersize"], |
| 2421 | visible=_CFG["visible"]): |
| 2422 | if isinstance(canvas, _Screen): |
| 2423 | self.screen = canvas |
| 2424 | elif isinstance(canvas, TurtleScreen): |
| 2425 | if canvas not in RawTurtle.screens: |
| 2426 | RawTurtle.screens.append(canvas) |
| 2427 | self.screen = canvas |
| 2428 | elif isinstance(canvas, (ScrolledCanvas, Canvas)): |
| 2429 | for screen in RawTurtle.screens: |
| 2430 | if screen.cv == canvas: |
| 2431 | self.screen = screen |
| 2432 | break |
| 2433 | else: |
| 2434 | self.screen = TurtleScreen(canvas) |
| 2435 | RawTurtle.screens.append(self.screen) |
| 2436 | else: |
| 2437 | raise TurtleGraphicsError("bad canvas argument %s" % canvas) |
| 2438 | |
| 2439 | screen = self.screen |
| 2440 | TNavigator.__init__(self, screen.mode()) |
| 2441 | TPen.__init__(self) |
| 2442 | screen._turtles.append(self) |
| 2443 | self.drawingLineItem = screen._createline() |
| 2444 | self.turtle = _TurtleImage(screen, shape) |
| 2445 | self._poly = None |
| 2446 | self._creatingPoly = False |
| 2447 | self._fillitem = self._fillpath = None |
| 2448 | self._shown = visible |
| 2449 | self._hidden_from_screen = False |
| 2450 | self.currentLineItem = screen._createline() |
| 2451 | self.currentLine = [self._position] |
| 2452 | self.items = [self.currentLineItem] |
| 2453 | self.stampItems = [] |
| 2454 | self._undobuffersize = undobuffersize |
| 2455 | self.undobuffer = Tbuffer(undobuffersize) |
| 2456 | self._update() |
| 2457 | |
| 2458 | def reset(self): |
| 2459 | """Delete the turtle's drawings and restore its default values. |
nothing calls this directly
no test coverage detected