bpo-27115: Move IDLE Query error blanking (GH-18868) · python/cpython@f3f0c7a
@@ -108,6 +108,7 @@ def create_widgets(self, ok_text='OK'): # Do not replace.
108108exists=True, root=self.parent)
109109self.entry_error = Label(frame, text=' ', foreground='red',
110110font=self.error_font)
111+# Display or blank error by setting ['text'] =.
111112entrylabel.grid(column=0, row=0, columnspan=3, padx=5, sticky=W)
112113self.entry.grid(column=0, row=1, columnspan=3, padx=5, sticky=W+E,
113114pady=[10,0])
@@ -132,7 +133,6 @@ def showerror(self, message, widget=None):
132133133134def entry_ok(self): # Example: usually replace.
134135"Return non-blank entry or None."
135-self.entry_error['text'] = ''
136136entry = self.entry.get().strip()
137137if not entry:
138138self.showerror('blank line.')
@@ -144,6 +144,7 @@ def ok(self, event=None): # Do not replace.
144144145145 Otherwise leave dialog open for user to correct entry or cancel.
146146 '''
147+self.entry_error['text'] = ''
147148entry = self.entry_ok()
148149if entry is not None:
149150self.result = entry
@@ -173,7 +174,6 @@ def __init__(self, parent, title, message, used_names,
173174174175def entry_ok(self):
175176"Return sensible ConfigParser section name or None."
176-self.entry_error['text'] = ''
177177name = self.entry.get().strip()
178178if not name:
179179self.showerror('no name specified.')
@@ -198,7 +198,6 @@ def __init__(self, parent, title, message, text0,
198198199199def entry_ok(self):
200200"Return entered module name as file path or None."
201-self.entry_error['text'] = ''
202201name = self.entry.get().strip()
203202if not name:
204203self.showerror('no name specified.')
@@ -311,7 +310,6 @@ def path_ok(self):
311310312311def entry_ok(self):
313312"Return apparently valid (name, path) or None"
314-self.entry_error['text'] = ''
315313self.path_error['text'] = ''
316314name = self.item_ok()
317315path = self.path_ok()
@@ -362,7 +360,6 @@ def cli_args_ok(self):
362360363361def entry_ok(self):
364362"Return apparently valid (cli_args, restart) or None"
365-self.entry_error['text'] = ''
366363cli_args = self.cli_args_ok()
367364restart = self.restartvar.get()
368365return None if cli_args is None else (cli_args, restart)