From f0c891a2b2ed16a34ab433f6e084adf9c4647d25 Mon Sep 17 00:00:00 2001 From: Guido van Rossum Date: Wed, 29 Apr 1998 21:43:36 +0000 Subject: [PATCH] Import MacOS at the top instead of insize Tk.__init__() -- the latter repeats the I/O for the failed import on each interpreter creation. --- Lib/lib-tk/Tkinter.py | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/Lib/lib-tk/Tkinter.py b/Lib/lib-tk/Tkinter.py index bc7dae753fb002..583e2263095336 100644 --- a/Lib/lib-tk/Tkinter.py +++ b/Lib/lib-tk/Tkinter.py @@ -8,6 +8,10 @@ from types import * from Tkconstants import * import string; _string = string; del string +try: + import MacOS; _MacOS = MacOS; del MacOS +except ImportError: + _MacOS = None TkVersion = _string.atof(_tkinter.TK_VERSION) TclVersion = _string.atof(_tkinter.TCL_VERSION) @@ -845,18 +849,11 @@ def __init__(self, screenName=None, baseName=None, className='Tk'): baseName, ext = os.path.splitext(baseName) if ext not in ('.py', 'pyc'): baseName = baseName + ext self.tk = _tkinter.create(screenName, baseName, className) - try: + if _MacOS: # Disable event scanning except for Command-Period - import MacOS - try: - MacOS.SchedParams(1, 0) - except AttributeError: - # pre-1.5, use old routine - MacOS.EnableAppswitch(0) - except ImportError: - pass - else: + _MacOS.SchedParams(1, 0) # Work around nasty MacTk bug + # XXX Is this one still needed? self.update() # Version sanity checks tk_version = self.tk.getvar('tk_version')