[Python-checkins] bpo-27115: Move IDLE Query error blanking (GH-18868)

Miss Islington (bot) webhook-mailer at python.org
Mon Mar 9 01:56:32 EDT 2020


https://github.com/python/cpython/commit/f3f0c7a108cd2a5071592e77e2f4b14ca35d4fcc
commit: f3f0c7a108cd2a5071592e77e2f4b14ca35d4fcc
branch: 3.8
author: Miss Islington (bot) <31488909+miss-islington at users.noreply.github.com>
committer: GitHub <noreply at github.com>
date: 2020-03-08T22:56:28-07:00
summary:

bpo-27115: Move IDLE Query error blanking (GH-18868)


Move required blanking of error text to non-overridden entry_ok().
(Omit news item.)
(cherry picked from commit e53a3932cb01683b0fa8a7448ca25a2e658c39e6)

Co-authored-by: Terry Jan Reedy <tjreedy at udel.edu>

files:
M Lib/idlelib/query.py

diff --git a/Lib/idlelib/query.py b/Lib/idlelib/query.py
index 097e6e61e3569..57616de4fe01d 100644
--- a/Lib/idlelib/query.py
+++ b/Lib/idlelib/query.py
@@ -108,6 +108,7 @@ def create_widgets(self, ok_text='OK'):  # Do not replace.
                                exists=True, root=self.parent)
         self.entry_error = Label(frame, text=' ', foreground='red',
                                  font=self.error_font)
+        # Display or blank error by setting ['text'] =.
         entrylabel.grid(column=0, row=0, columnspan=3, padx=5, sticky=W)
         self.entry.grid(column=0, row=1, columnspan=3, padx=5, sticky=W+E,
                         pady=[10,0])
@@ -132,7 +133,6 @@ def showerror(self, message, widget=None):
 
     def entry_ok(self):  # Example: usually replace.
         "Return non-blank entry or None."
-        self.entry_error['text'] = ''
         entry = self.entry.get().strip()
         if not entry:
             self.showerror('blank line.')
@@ -144,6 +144,7 @@ def ok(self, event=None):  # Do not replace.
 
         Otherwise leave dialog open for user to correct entry or cancel.
         '''
+        self.entry_error['text'] = ''
         entry = self.entry_ok()
         if entry is not None:
             self.result = entry
@@ -173,7 +174,6 @@ def __init__(self, parent, title, message, used_names,
 
     def entry_ok(self):
         "Return sensible ConfigParser section name or None."
-        self.entry_error['text'] = ''
         name = self.entry.get().strip()
         if not name:
             self.showerror('no name specified.')
@@ -198,7 +198,6 @@ def __init__(self, parent, title, message, text0,
 
     def entry_ok(self):
         "Return entered module name as file path or None."
-        self.entry_error['text'] = ''
         name = self.entry.get().strip()
         if not name:
             self.showerror('no name specified.')
@@ -311,7 +310,6 @@ def path_ok(self):
 
     def entry_ok(self):
         "Return apparently valid (name, path) or None"
-        self.entry_error['text'] = ''
         self.path_error['text'] = ''
         name = self.item_ok()
         path = self.path_ok()
@@ -362,7 +360,6 @@ def cli_args_ok(self):
 
     def entry_ok(self):
         "Return apparently valid (cli_args, restart) or None"
-        self.entry_error['text'] = ''
         cli_args = self.cli_args_ok()
         restart = self.restartvar.get()
         return None if cli_args is None else (cli_args, restart)



More information about the Python-checkins mailing list