[Python-checkins] cpython (2.7): Issue #16893: Replace help.txt with idle.html for Idle doc display.

terry.reedy python-checkins at python.org
Mon Sep 21 02:06:13 CEST 2015


https://hg.python.org/cpython/rev/4038508240a1
changeset:   98090:4038508240a1
branch:      2.7
parent:      98086:96eff21fc47e
user:        Terry Jan Reedy <tjreedy at udel.edu>
date:        Sun Sep 20 19:55:44 2015 -0400
summary:
  Issue #16893: Replace help.txt with idle.html for Idle doc display.
The new idlelib/idle.html is copied from Doc/build/html/idle.html.
It looks better than help.txt and will better document Idle as released.
The tkinter html viewer that works for this file was written by Rose Roseman.
The new code is in idlelib/help.py, a new file for help menu classes.
The now unused EditorWindow.HelpDialog class and helt.txt file are deprecated.

files:
  Lib/idlelib/EditorWindow.py    |  12 ++++++++++--
  Lib/idlelib/help.txt           |   4 ++++
  Lib/idlelib/idle_test/htest.py |  14 +++++++-------
  Lib/idlelib/macosxSupport.py   |   5 ++---
  4 files changed, 23 insertions(+), 12 deletions(-)


diff --git a/Lib/idlelib/EditorWindow.py b/Lib/idlelib/EditorWindow.py
--- a/Lib/idlelib/EditorWindow.py
+++ b/Lib/idlelib/EditorWindow.py
@@ -17,6 +17,7 @@
 from idlelib.configHandler import idleConf
 from idlelib import aboutDialog, textView, configDialog
 from idlelib import macosxSupport
+from idlelib import help
 
 # The default tab setting for a Text widget, in average-width characters.
 TK_TABWIDTH_DEFAULT = 8
@@ -71,6 +72,11 @@
 class HelpDialog(object):
 
     def __init__(self):
+        import warnings as w
+        w.warn("EditorWindow.HelpDialog is no longer used by Idle.\n"
+               "It will be removed in 3.6 or later.\n"
+               "It has been replaced by private help.HelpWindow\n",
+               DeprecationWarning, stacklevel=2)
         self.parent = None      # parent of help window
         self.dlg = None         # the help window iteself
 
@@ -566,11 +572,13 @@
         configDialog.ConfigExtensionsDialog(self.top)
 
     def help_dialog(self, event=None):
+        "Handle help doc event."
+        # edit maxosxSupport.overrideRootMenu.help_dialog to match
         if self.root:
             parent = self.root
         else:
             parent = self.top
-        helpDialog.display(parent, near=self.top)
+        help.show_idlehelp(parent)
 
     def python_docs(self, event=None):
         if sys.platform[:3] == 'win':
@@ -1717,4 +1725,4 @@
 
 if __name__ == '__main__':
     from idlelib.idle_test.htest import run
-    run(_help_dialog, _editor_window)
+    run(_editor_window)
diff --git a/Lib/idlelib/help.txt b/Lib/idlelib/help.txt
--- a/Lib/idlelib/help.txt
+++ b/Lib/idlelib/help.txt
@@ -1,3 +1,7 @@
+This file, idlelib/help.txt is out-of-date and no longer used by Idle.
+It is deprecated and will be removed in the future, possibly in 3.6
+----------------------------------------------------------------------
+
 [See the end of this file for ** TIPS ** on using IDLE !!]
 
 File Menu:
diff --git a/Lib/idlelib/idle_test/htest.py b/Lib/idlelib/idle_test/htest.py
--- a/Lib/idlelib/idle_test/htest.py
+++ b/Lib/idlelib/idle_test/htest.py
@@ -194,13 +194,6 @@
            "should open that file \nin a new EditorWindow."
     }
 
-_help_dialog_spec = {
-    'file': 'EditorWindow',
-    'kwds': {},
-    'msg': "If the help text displays, this works.\n"
-           "Text is selectable. Window is scrollable."
-    }
-
 _io_binding_spec = {
     'file': 'IOBinding',
     'kwds': {},
@@ -279,6 +272,13 @@
            "Right clicking an item will display a popup."
     }
 
+show_idlehelp_spec = {
+    'file': 'help',
+    'kwds': {},
+    'msg': "If the help text displays, this works.\n"
+           "Text is selectable. Window is scrollable."
+    }
+
 _stack_viewer_spec = {
     'file': 'StackViewer',
     'kwds': {},
diff --git a/Lib/idlelib/macosxSupport.py b/Lib/idlelib/macosxSupport.py
--- a/Lib/idlelib/macosxSupport.py
+++ b/Lib/idlelib/macosxSupport.py
@@ -170,9 +170,8 @@
         configDialog.ConfigDialog(root, 'Settings')
 
     def help_dialog(event=None):
-        from idlelib import textView
-        fn = path.join(path.abspath(path.dirname(__file__)), 'help.txt')
-        textView.view_file(root, 'Help', fn)
+        from idlelib import help
+        help.show_idlehelp(root)
 
     root.bind('<<about-idle>>', about_dialog)
     root.bind('<<open-config-dialog>>', config_dialog)

-- 
Repository URL: https://hg.python.org/cpython


More information about the Python-checkins mailing list