summaryrefslogtreecommitdiffstats
path: root/Lib/plat-mac/EasyDialogs.py
diff options
context:
space:
mode:
authorJack Jansen <jack.jansen@cwi.nl>2003-03-03 12:25:02 (GMT)
committerJack Jansen <jack.jansen@cwi.nl>2003-03-03 12:25:02 (GMT)
commit7451e3b4d5228a9e3efc837f6ecb2c156e07f538 (patch)
tree7fc8aaf6b447d9c4dce6fc37e3a90edbcb5b4adb /Lib/plat-mac/EasyDialogs.py
parent7f13489bdfbad313774aebd8db8e8d127cb9184f (diff)
downloadcpython-7451e3b4d5228a9e3efc837f6ecb2c156e07f538.zip
cpython-7451e3b4d5228a9e3efc837f6ecb2c156e07f538.tar.gz
cpython-7451e3b4d5228a9e3efc837f6ecb2c156e07f538.tar.bz2
Call AEInteractWithUser() before bringing up any of the dialogs (with the
exception of the ProgressBar, which I think is okay to show in the background). This is a prerequisitite for the fix of #684975.
Diffstat (limited to 'Lib/plat-mac/EasyDialogs.py')
-rw-r--r--Lib/plat-mac/EasyDialogs.py14
1 files changed, 13 insertions, 1 deletions
diff --git a/Lib/plat-mac/EasyDialogs.py b/Lib/plat-mac/EasyDialogs.py
index d9ebaa9..cbbe9bc 100644
--- a/Lib/plat-mac/EasyDialogs.py
+++ b/Lib/plat-mac/EasyDialogs.py
@@ -27,6 +27,7 @@ from Carbon import Dlg,Win,Evt,Events # sdm7g
from Carbon import Ctl
from Carbon import Controls
from Carbon import Menu
+from Carbon import AE
import Nav
import MacOS
import string
@@ -46,7 +47,10 @@ def _initialize():
global _initialized
if _initialized: return
macresource.need("DLOG", 260, "dialogs.rsrc", __name__)
-
+
+def _interact():
+ """Make sure the application is in the foreground"""
+ AE.AEInteractWithUser(50000000)
def cr2lf(text):
if '\r' in text:
@@ -68,6 +72,7 @@ def Message(msg, id=260, ok=None):
The MESSAGE string can be at most 255 characters long.
"""
_initialize()
+ _interact()
d = GetNewDialog(id, -1)
if not d:
print "EasyDialogs: Can't get DLOG resource with id =", id, " (missing resource file?)"
@@ -100,6 +105,7 @@ def AskString(prompt, default = "", id=261, ok=None, cancel=None):
"""
_initialize()
+ _interact()
d = GetNewDialog(id, -1)
if not d:
print "EasyDialogs: Can't get DLOG resource with id =", id, " (missing resource file?)"
@@ -141,6 +147,7 @@ def AskPassword(prompt, default='', id=264, ok=None, cancel=None):
can be at most 255 characters long.
"""
_initialize()
+ _interact()
d = GetNewDialog(id, -1)
if not d:
print "EasyDialogs: Can't get DLOG resource with id =", id, " (missing resource file?)"
@@ -184,6 +191,7 @@ def AskYesNoCancel(question, default = 0, yes=None, no=None, cancel=None, id=262
"""
_initialize()
+ _interact()
d = GetNewDialog(id, -1)
if not d:
print "EasyDialogs: Can't get DLOG resource with id =", id, " (missing resource file?)"
@@ -416,6 +424,7 @@ def _selectoption(d, optionlist, idx):
def GetArgv(optionlist=None, commandlist=None, addoldfile=1, addnewfile=1, addfolder=1, id=ARGV_ID):
_initialize()
+ _interact()
d = GetNewDialog(id, -1)
if not d:
print "EasyDialogs: Can't get DLOG resource with id =", id, " (missing resource file?)"
@@ -636,6 +645,7 @@ def AskFileForOpen(
message=message,preferenceKey=preferenceKey,
popupExtension=popupExtension,eventProc=eventProc,previewProc=previewProc,
filterProc=filterProc,typeList=typeList,wanted=wanted,multiple=multiple)
+ _interact()
try:
rr = Nav.NavChooseFile(args)
good = 1
@@ -688,6 +698,7 @@ def AskFileForSave(
savedFileName=savedFileName,message=message,preferenceKey=preferenceKey,
popupExtension=popupExtension,eventProc=eventProc,fileType=fileType,
fileCreator=fileCreator,wanted=wanted,multiple=multiple)
+ _interact()
try:
rr = Nav.NavPutFile(args)
good = 1
@@ -747,6 +758,7 @@ def AskFolder(
message=message,preferenceKey=preferenceKey,
popupExtension=popupExtension,eventProc=eventProc,filterProc=filterProc,
wanted=wanted,multiple=multiple)
+ _interact()
try:
rr = Nav.NavChooseFolder(args)
good = 1