<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
</head>
<body>
<style type="text/css" style="display:none;"><!-- P {margin-top:0;margin-bottom:0;} --></style>
<div id="divtagdefaultwrapper" style="font-size:12pt;color:#000000;font-family:Calibri,Helvetica,sans-serif;" dir="ltr">
<p>Hi Eliot,</p>
<p><br>
</p>
<p>> <span>Would you?  Why wouldn't you discard the entire compilation continuation?  That is what I would expect t.  So killing the dialog effectively kills the process up to the point of invoking the Unused Variable dialog.</span></p>
<p><span><br>
</span></p>
<p><span>I don't think that toggling the "be modally exclusive" box should be meant as killing the process. Otherwise, we should really rename it ... I would rather think of this feature as a fork.</span></p>
<p><span><br>
</span></p>
<p><span>(Moreover, I never was really happy with the way to pause the UI process ... In particular, MC modal dialogs, which are not exclusive, don't need to decorate the whole UI process. Why can't these things work with the observer pattern instead?)</span></p>
<p><span><br>
</span></p>
<p><span>> </span><span style="font-size: 12pt;">That doesn't work for me because the modal dialog emerges from a subcomponent (the FilePlugin) not from the VM level itself.  It is from a plugin in the VM, and making that dialog able to reach out and smite
 the entire VM feels like working out-of-bounds.</span><span></p>
<div><br>
</div>
<div>I may have expressed myself inaccurately: Why is your plugin not able to do something like</div>
<div><br>
</div>
<div><span>UIManager default chooseFrom: #('Yes' 'No' 'Quit this operations')</span><br>
</div>
<div><span><br>
</span></div>
<div><span>?</span></div>
</span>
<p></p>
<p><span><br>
</span></p>
<p><span>However, in my humble opinion, adding an extra button for closing the parent window of a modal dialog sounds kind of insular solution to me. In most scenarios, modal dialogs come without any window. In other scenarios, a window might control multiple
 processes. What if the "parent window" is detected to be a debugger debugging a process that spawns a modal dialog? Would you then close the debugger?</span></p>
<p><span>Other opinions? :-)</span></p>
<p><span><br>
</span></p>
<p><span>Best,</span></p>
<p><span>Christoph</span></p>
<div id="Signature">
<div id="divtagdefaultwrapper" dir="ltr" style="font-size: 12pt; color: rgb(0, 0, 0); font-family: Calibri, Helvetica, sans-serif, EmojiFont, "Apple Color Emoji", "Segoe UI Emoji", NotoColorEmoji, "Segoe UI Symbol", "Android Emoji", EmojiSymbols;">
<div name="divtagdefaultwrapper" style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:; margin:0">
<div><font size="2" color="#808080"></font></div>
</div>
</div>
</div>
</div>
<hr style="display:inline-block;width:98%" tabindex="-1">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" style="font-size:11pt" color="#000000"><b>Von:</b> Squeak-dev <squeak-dev-bounces@lists.squeakfoundation.org> im Auftrag von Eliot Miranda <eliot.miranda@gmail.com><br>
<b>Gesendet:</b> Freitag, 10. Januar 2020 19:02:45<br>
<b>An:</b> The general-purpose Squeak developers list<br>
<b>Betreff:</b> Re: [squeak-dev] Closing modal dialogs...</font>
<div> </div>
</div>
<div>
<div dir="ltr">
<div dir="ltr">Hi Christoph,<br>
</div>
<br>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">On Fri, Jan 10, 2020 at 4:35 AM Thiede, Christoph <<a href="mailto:Christoph.Thiede@student.hpi.uni-potsdam.de">Christoph.Thiede@student.hpi.uni-potsdam.de</a>> wrote:<br>
</div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">
<div>
<div id="gmail-m_2664776608154551533divtagdefaultwrapper" style="font-size:12pt;color:rgb(0,0,0);font-family:Calibri,Helvetica,sans-serif" dir="ltr">
<p>Hi Eliot,</p>
<p>I did not ever work with the VM simulator, but from what you say, I guess that your modal dialog might simply lack a third button labeled "Quit"?</p>
</div>
</div>
</blockquote>
<div><br>
</div>
<div>That doesn't work for me because the modal dialog emerges from a subcomponent (the FilePlugin) not from the VM level itself.  It is from a plugin in the VM, and making that dialog able to reach out and smite the entire VM feels like working out-of-bounds.</div>
<div> </div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">
<div>
<div id="gmail-m_2664776608154551533divtagdefaultwrapper" style="font-size:12pt;color:rgb(0,0,0);font-family:Calibri,Helvetica,sans-serif" dir="ltr">
<p>In general, to me, the idea of modal windows appears to require an immediate user response that precedes any different user interactions with the notifying view. If this assumption is violated, many models might show bad behavior.* I would rather prefer
 not to change this behavior. :)</p>
<p>* For an example, do-it |x| (sic, just three characters) in a workspace. Disable modal exclusivity of the appearing Unused Variable dialog, clear the Workspace and then answer the dialog. Of course, you will get an internal compiler error ...</p>
</div>
</div>
</blockquote>
<div><br>
</div>
<div>Would you?  Why wouldn't you discard the entire compilation continuation?  That is what I would expect t.  So killing the dialog effectively kills the process up to the point of invoking the Unused Variable dialog.  It would not allow computation to continue. 
 What should happen is the current process is terminated, a new UI process created, and the user be free to interact with the UI afresh. </div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">
<div>
<div id="gmail-m_2664776608154551533divtagdefaultwrapper" style="font-size:12pt;color:rgb(0,0,0);font-family:Calibri,Helvetica,sans-serif" dir="ltr">
<p><span style="font-size:12pt">Best,</span><br>
</p>
<p>Christoph</p>
<div id="gmail-m_2664776608154551533Signature">
<div id="gmail-m_2664776608154551533divtagdefaultwrapper" dir="ltr" style="font-size:12pt;color:rgb(0,0,0);font-family:Calibri,Helvetica,sans-serif,EmojiFont,"Apple Color Emoji","Segoe UI Emoji",NotoColorEmoji,"Segoe UI Symbol","Android Emoji",EmojiSymbols">
<div name="divtagdefaultwrapper">
<div><font size="2" color="#808080"></font></div>
</div>
</div>
</div>
</div>
<hr style="display:inline-block;width:98%">
<div id="gmail-m_2664776608154551533divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" style="font-size:11pt" color="#000000"><b>Von:</b> Squeak-dev <<a href="mailto:squeak-dev-bounces@lists.squeakfoundation.org" target="_blank">squeak-dev-bounces@lists.squeakfoundation.org</a>>
 im Auftrag von Eliot Miranda <<a href="mailto:eliot.miranda@gmail.com" target="_blank">eliot.miranda@gmail.com</a>><br>
<b>Gesendet:</b> Freitag, 10. Januar 2020 00:58:18<br>
<b>An:</b> The general-purpose Squeak developers list<br>
<b>Betreff:</b> [squeak-dev] Closing modal dialogs...</font>
<div> </div>
</div>
<div>
<div dir="ltr">Hi All,
<div><br>
</div>
<div>    would it be easy to modify modal dialog box interaction to allow closing the "parent window" of a dialog while in the modal dialog?  In the VMSimulator I use a modal dialog to prompt the user for input to evaluate, to test the sim.  Often I simply
 want to stop after the first expression and so wish to diss,iss the entire simulation omg the second modal dialog.  Bit I'm always forced to select "don't be modal" before I can close the thing.  It;'s a little annoying.</div>
</div>
</div>
</div>
</blockquote>
</div>
</div>
</div>
</body>
</html>