Kaydet (Commit) 8bfacc79 authored tarafından Terry Jan Reedy's avatar Terry Jan Reedy

Issue #25173: Replace 'master' with 'parent' in tkinter.messagebox calls.

This associates the message box with the widget and is better for Mac OSX.
Patch by Mark Roseman.
üst 647412fb
...@@ -250,7 +250,7 @@ class IOBinding: ...@@ -250,7 +250,7 @@ class IOBinding:
with open(filename, 'rb') as f: with open(filename, 'rb') as f:
chars = f.read() chars = f.read()
except IOError as msg: except IOError as msg:
tkMessageBox.showerror("I/O Error", str(msg), master=self.text) tkMessageBox.showerror("I/O Error", str(msg), parent=self.text)
return False return False
chars = self.decode(chars) chars = self.decode(chars)
...@@ -297,7 +297,7 @@ class IOBinding: ...@@ -297,7 +297,7 @@ class IOBinding:
title="Error loading the file", title="Error loading the file",
message="The encoding '%s' is not known to this Python "\ message="The encoding '%s' is not known to this Python "\
"installation. The file may not display correctly" % name, "installation. The file may not display correctly" % name,
master = self.text) parent = self.text)
enc = None enc = None
if enc: if enc:
try: try:
...@@ -327,7 +327,7 @@ class IOBinding: ...@@ -327,7 +327,7 @@ class IOBinding:
title="Save On Close", title="Save On Close",
message=message, message=message,
default=tkMessageBox.YES, default=tkMessageBox.YES,
master=self.text) parent=self.text)
if confirm: if confirm:
reply = "yes" reply = "yes"
self.save(None) self.save(None)
...@@ -386,7 +386,7 @@ class IOBinding: ...@@ -386,7 +386,7 @@ class IOBinding:
return True return True
except IOError as msg: except IOError as msg:
tkMessageBox.showerror("I/O Error", str(msg), tkMessageBox.showerror("I/O Error", str(msg),
master=self.text) parent=self.text)
return False return False
def encode(self, chars): def encode(self, chars):
...@@ -416,7 +416,7 @@ class IOBinding: ...@@ -416,7 +416,7 @@ class IOBinding:
tkMessageBox.showerror( tkMessageBox.showerror(
"I/O Error", "I/O Error",
"%s. Saving as UTF-8" % failed, "%s. Saving as UTF-8" % failed,
master = self.text) parent = self.text)
# If there was a UTF-8 signature, use that. This should not fail # If there was a UTF-8 signature, use that. This should not fail
if self.fileencoding == BOM_UTF8 or failed: if self.fileencoding == BOM_UTF8 or failed:
return BOM_UTF8 + chars.encode("utf-8") return BOM_UTF8 + chars.encode("utf-8")
...@@ -429,7 +429,7 @@ class IOBinding: ...@@ -429,7 +429,7 @@ class IOBinding:
"I/O Error", "I/O Error",
"Cannot save this as '%s' anymore. Saving as UTF-8" \ "Cannot save this as '%s' anymore. Saving as UTF-8" \
% self.fileencoding, % self.fileencoding,
master = self.text) parent = self.text)
return BOM_UTF8 + chars.encode("utf-8") return BOM_UTF8 + chars.encode("utf-8")
# Nothing was declared, and we had not determined an encoding # Nothing was declared, and we had not determined an encoding
# on loading. Recommend an encoding line. # on loading. Recommend an encoding line.
...@@ -473,7 +473,7 @@ class IOBinding: ...@@ -473,7 +473,7 @@ class IOBinding:
title="Print", title="Print",
message="Print to Default Printer", message="Print to Default Printer",
default=tkMessageBox.OK, default=tkMessageBox.OK,
master=self.text) parent=self.text)
if not confirm: if not confirm:
self.text.focus_set() self.text.focus_set()
return "break" return "break"
...@@ -510,10 +510,10 @@ class IOBinding: ...@@ -510,10 +510,10 @@ class IOBinding:
status + output status + output
if output: if output:
output = "Printing command: %s\n" % repr(command) + output output = "Printing command: %s\n" % repr(command) + output
tkMessageBox.showerror("Print status", output, master=self.text) tkMessageBox.showerror("Print status", output, parent=self.text)
else: #no printing for this platform else: #no printing for this platform
message = "Printing is not enabled for this platform: %s" % platform message = "Printing is not enabled for this platform: %s" % platform
tkMessageBox.showinfo("Print status", message, master=self.text) tkMessageBox.showinfo("Print status", message, parent=self.text)
if tempfilename: if tempfilename:
os.unlink(tempfilename) os.unlink(tempfilename)
return "break" return "break"
...@@ -532,7 +532,7 @@ class IOBinding: ...@@ -532,7 +532,7 @@ class IOBinding:
def askopenfile(self): def askopenfile(self):
dir, base = self.defaultfilename("open") dir, base = self.defaultfilename("open")
if not self.opendialog: if not self.opendialog:
self.opendialog = tkFileDialog.Open(master=self.text, self.opendialog = tkFileDialog.Open(parent=self.text,
filetypes=self.filetypes) filetypes=self.filetypes)
filename = self.opendialog.show(initialdir=dir, initialfile=base) filename = self.opendialog.show(initialdir=dir, initialfile=base)
if isinstance(filename, unicode): if isinstance(filename, unicode):
...@@ -555,7 +555,7 @@ class IOBinding: ...@@ -555,7 +555,7 @@ class IOBinding:
dir, base = self.defaultfilename("save") dir, base = self.defaultfilename("save")
if not self.savedialog: if not self.savedialog:
self.savedialog = tkFileDialog.SaveAs( self.savedialog = tkFileDialog.SaveAs(
master=self.text, parent=self.text,
filetypes=self.filetypes, filetypes=self.filetypes,
defaultextension=self.defaultextension) defaultextension=self.defaultextension)
filename = self.savedialog.show(initialdir=dir, initialfile=base) filename = self.savedialog.show(initialdir=dir, initialfile=base)
......
...@@ -96,7 +96,7 @@ class OutputWindow(EditorWindow): ...@@ -96,7 +96,7 @@ class OutputWindow(EditorWindow):
"No special line", "No special line",
"The line you point at doesn't look like " "The line you point at doesn't look like "
"a valid file name followed by a line number.", "a valid file name followed by a line number.",
master=self.text) parent=self.text)
return return
filename, lineno = result filename, lineno = result
edit = self.flist.open(filename) edit = self.flist.open(filename)
......
...@@ -799,7 +799,7 @@ class ModifiedInterpreter(InteractiveInterpreter): ...@@ -799,7 +799,7 @@ class ModifiedInterpreter(InteractiveInterpreter):
"Exit?", "Exit?",
"Do you want to exit altogether?", "Do you want to exit altogether?",
default="yes", default="yes",
master=self.tkconsole.text): parent=self.tkconsole.text):
raise raise
else: else:
self.showtraceback() self.showtraceback()
...@@ -837,7 +837,7 @@ class ModifiedInterpreter(InteractiveInterpreter): ...@@ -837,7 +837,7 @@ class ModifiedInterpreter(InteractiveInterpreter):
"Run IDLE with the -n command line switch to start without a " "Run IDLE with the -n command line switch to start without a "
"subprocess and refer to Help/IDLE Help 'Running without a " "subprocess and refer to Help/IDLE Help 'Running without a "
"subprocess' for further details.", "subprocess' for further details.",
master=self.tkconsole.text) parent=self.tkconsole.text)
def display_no_subprocess_error(self): def display_no_subprocess_error(self):
tkMessageBox.showerror( tkMessageBox.showerror(
...@@ -845,14 +845,14 @@ class ModifiedInterpreter(InteractiveInterpreter): ...@@ -845,14 +845,14 @@ class ModifiedInterpreter(InteractiveInterpreter):
"IDLE's subprocess didn't make connection. Either IDLE can't " "IDLE's subprocess didn't make connection. Either IDLE can't "
"start a subprocess or personal firewall software is blocking " "start a subprocess or personal firewall software is blocking "
"the connection.", "the connection.",
master=self.tkconsole.text) parent=self.tkconsole.text)
def display_executing_dialog(self): def display_executing_dialog(self):
tkMessageBox.showerror( tkMessageBox.showerror(
"Already executing", "Already executing",
"The Python Shell window is already executing a command; " "The Python Shell window is already executing a command; "
"please wait until it is finished.", "please wait until it is finished.",
master=self.tkconsole.text) parent=self.tkconsole.text)
class PyShell(OutputWindow): class PyShell(OutputWindow):
...@@ -948,7 +948,7 @@ class PyShell(OutputWindow): ...@@ -948,7 +948,7 @@ class PyShell(OutputWindow):
if self.executing: if self.executing:
tkMessageBox.showerror("Don't debug now", tkMessageBox.showerror("Don't debug now",
"You can only toggle the debugger when idle", "You can only toggle the debugger when idle",
master=self.text) parent=self.text)
self.set_debugger_indicator() self.set_debugger_indicator()
return "break" return "break"
else: else:
...@@ -1256,7 +1256,7 @@ class PyShell(OutputWindow): ...@@ -1256,7 +1256,7 @@ class PyShell(OutputWindow):
tkMessageBox.showerror("No stack trace", tkMessageBox.showerror("No stack trace",
"There is no stack trace yet.\n" "There is no stack trace yet.\n"
"(sys.last_traceback is not defined)", "(sys.last_traceback is not defined)",
master=self.text) parent=self.text)
return return
from idlelib.StackViewer import StackBrowser from idlelib.StackViewer import StackBrowser
StackBrowser(self.root, self.flist) StackBrowser(self.root, self.flist)
......
...@@ -213,10 +213,10 @@ class ScriptBinding: ...@@ -213,10 +213,10 @@ class ScriptBinding:
confirm = tkMessageBox.askokcancel(title="Save Before Run or Check", confirm = tkMessageBox.askokcancel(title="Save Before Run or Check",
message=msg, message=msg,
default=tkMessageBox.OK, default=tkMessageBox.OK,
master=self.editwin.text) parent=self.editwin.text)
return confirm return confirm
def errorbox(self, title, message): def errorbox(self, title, message):
# XXX This should really be a function of EditorWindow... # XXX This should really be a function of EditorWindow...
tkMessageBox.showerror(title, message, master=self.editwin.text) tkMessageBox.showerror(title, message, parent=self.editwin.text)
self.editwin.text.focus_set() self.editwin.text.focus_set()
...@@ -164,7 +164,7 @@ def show_socket_error(err, address): ...@@ -164,7 +164,7 @@ def show_socket_error(err, address):
tkMessageBox.showerror("IDLE Subprocess Error", msg, parent=root) tkMessageBox.showerror("IDLE Subprocess Error", msg, parent=root)
else: else:
tkMessageBox.showerror("IDLE Subprocess Error", tkMessageBox.showerror("IDLE Subprocess Error",
"Socket Error: %s" % err.args[1]) "Socket Error: %s" % err.args[1], parent=root)
root.destroy() root.destroy()
def print_exception(): def print_exception():
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment