From: Terry Jan Reedy Date: Wed, 27 Aug 2014 05:43:50 +0000 (-0400) Subject: Issue #22065: Menus, unlike Menubottons, do not have a state option. X-Git-Tag: v3.4.2rc1~79 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=8450c5331548e396d31639776c91e191a5f3147e;p=python Issue #22065: Menus, unlike Menubottons, do not have a state option. Since a new demo can now be loaded while one is running, adjust loadfile to do the same cleanup as stopIt. --- diff --git a/Lib/turtledemo/__main__.py b/Lib/turtledemo/__main__.py index d64f887c58..586b2a8662 100755 --- a/Lib/turtledemo/__main__.py +++ b/Lib/turtledemo/__main__.py @@ -260,12 +260,13 @@ class DemoWindow(object): return menu def refreshCanvas(self): - if not self.dirty: return - self.screen.clear() - self.dirty=False + if self.dirty: + self.screen.clear() + self.dirty=False def loadfile(self, filename): - self.refreshCanvas() + self.clearCanvas() + turtle.TurtleScreen._RUNNING = False modname = 'turtledemo.' + filename __import__(modname) self.module = sys.modules[modname] @@ -318,9 +319,7 @@ class DemoWindow(object): self.exitflag = False self.configGUI(NORMAL, NORMAL, DISABLED, DISABLED, "STOPPED!", "red") - turtle.TurtleScreen._RUNNING = False - else: - turtle.TurtleScreen._RUNNING = False + turtle.TurtleScreen._RUNNING = False def _destroy(self): self.root.destroy() diff --git a/Lib/turtledemo/nim.py b/Lib/turtledemo/nim.py index 25ff3128f6..9ae6cc5c01 100644 --- a/Lib/turtledemo/nim.py +++ b/Lib/turtledemo/nim.py @@ -219,7 +219,7 @@ def main(): mainscreen.mode("standard") mainscreen.setup(SCREENWIDTH, SCREENHEIGHT) nim = Nim(mainscreen) - return "EVENTLOOP!" + return "EVENTLOOP" if __name__ == "__main__": main()