Path: utzoo!mnetor!uunet!husc6!mailrus!tut.cis.ohio-state.edu!bloom-beacon!mit-eddie!ll-xn!ames!amdahl!apple!goldman
From: goldman@Apple.COM (Phil Goldman)
Newsgroups: comp.sys.mac.programmer
Subject: Re: MultiFinder and Dialog boxes (was Re: MultiFinder switch bug with custom WDEFs)
Message-ID: <9455@apple.Apple.Com>
Date: 10 May 88 00:01:15 GMT
References: <242@uvabick.UUCP> <8700@apple.Apple.Com> <2887@midas.TEK.COM> <9332@apple.Apple.Com> <305@piring.cwi.nl> <9448@apple.Apple.Com>
Reply-To: goldman@apple.UUCP (Phil Goldman)
Organization: Apple Computer Inc, Cupertino, CA
Lines: 33

In article <9448@apple.Apple.Com> tecot@apple.UUCP (Ed Tecot) writes:
>>In article <305@piring.cwi.nl> guido@cwi.nl (Guido van Rossum) writes:
>>
>>Please answer the question, Phil!  Was the non-reentrancy of StdFile a
>>reason or not?  Your cynism (if I read this well) looks like a rethoric
>>trick to duck the question.  Besides, what you suggest is not so strange
>>as it seems.
>
>One thing Phil did forget to mention is that since modal dialogs have their
>own event loop, there is no way to get the suspend and resume events to the
>application.

Yes, the loss of suspend/resume events is a good reason.  It still would
be possible to get them, but much more difficult (it's unfortunate that
the filter proc won't see them).

No, the non-reentrancy of StdFile was not an issue.  It probably *is*
reentrant given that MultiFinder switches the low memory globals that
drive it.  If not, it would have been minor to make it so.

The major issue, though, was User Interface.  It is still possible with the
current interface for an application to present dialogs that are modal within
an app and those that are globally modal.  This would not have been possible
if the decision was made to make _ModalDialog modal to a layer.

There was also a concern that the user interface presented nowadays on the
Mac is not as clean as it once was.  These concerns are natural
when an interface is extended.  What we have tried to do is to make the
application interface more complex, if absolutely necessary, in order to
keep the user interface clean while maintaining compatibility.  Nothing
has been sacrificed in the user interface itself.

-Phil Goldman