diff options
author | Terry Jan Reedy <tjreedy@udel.edu> | 2014-07-25 05:56:24 (GMT) |
---|---|---|
committer | Terry Jan Reedy <tjreedy@udel.edu> | 2014-07-25 05:56:24 (GMT) |
commit | 280aace067e7df3b706c09e27b044dfea3bacaff (patch) | |
tree | 9d07ab60bf0775fc4e35bbd56eb0bdc17889f65a /Lib/turtledemo | |
parent | fea6a100dc51012cb0187374ad31de330ebc0035 (diff) | |
download | cpython-280aace067e7df3b706c09e27b044dfea3bacaff.zip cpython-280aace067e7df3b706c09e27b044dfea3bacaff.tar.gz cpython-280aace067e7df3b706c09e27b044dfea3bacaff.tar.bz2 |
Issue #22053: Make help work, after previous patch for this issue disabled it
by removing global 'demo'. Refactor and remove duplicate code.
Diffstat (limited to 'Lib/turtledemo')
-rwxr-xr-x | Lib/turtledemo/__main__.py | 26 |
1 files changed, 9 insertions, 17 deletions
diff --git a/Lib/turtledemo/__main__.py b/Lib/turtledemo/__main__.py index 0c151a3..92b6186 100755 --- a/Lib/turtledemo/__main__.py +++ b/Lib/turtledemo/__main__.py @@ -27,17 +27,11 @@ def getExampleEntries(): return [entry[:-3] for entry in os.listdir(demo_dir) if entry.endswith(".py") and entry[0] != '_'] -def showDemoHelp(): - view_file(demo.root, "Help on turtleDemo", - os.path.join(demo_dir, "demohelp.txt")) - -def showAboutDemo(): - view_file(demo.root, "About turtleDemo", - os.path.join(demo_dir, "about_turtledemo.txt")) - -def showAboutTurtle(): - view_file(demo.root, "About the new turtle module.", - os.path.join(demo_dir, "about_turtle.txt")) +help_entries = ( # (help_label, help_file) + ('Turtledemo help', "demohelp.txt"), + ('About turtledemo', "about_turtledemo.txt"), + ('About turtle module', "about_turtle.txt"), + ) class DemoWindow(object): @@ -177,12 +171,10 @@ class DemoWindow(object): CmdBtn.pack(side=LEFT, padx='2m') CmdBtn.menu = Menu(CmdBtn) - CmdBtn.menu.add_command(label='About turtle.py', font=menufont, - command=showAboutTurtle) - CmdBtn.menu.add_command(label='turtleDemo - Help', font=menufont, - command=showDemoHelp) - CmdBtn.menu.add_command(label='About turtleDemo', font=menufont, - command=showAboutDemo) + for help_label, help_file in help_entries: + def show(help_label=help_label, help_file=help_file): + view_file(self.root, help_label, os.path.join(demo_dir, help_file)) + CmdBtn.menu.add_command(label=help_label, font=menufont, command=show) CmdBtn['menu'] = CmdBtn.menu return CmdBtn |