[Q] How to suppress modal dialogs while loading code updates?

Doug Way dway at riskmetrics.com
Thu Jun 12 16:43:03 UTC 2003


Markus Gaelli wrote:

>
> Am Dienstag, 10.06.03 um 20:56 Uhr schrieb John W. Sarkela:
>
>> 1. Raise a UserInterfaceNotification exception in the implementation 
>> of #inform: and friends and make the default handler action to be the 
>> current implementation.
>>
>> 2. Use the Squeak World Tour strategy of having a current UI handler 
>> object that handles all UI requests. For example, MorphicUIHandler, 
>> MVCUIHandler, RemoteUIHandler, HostWidgetUIHandler, 
>> TranscripterUIHandler, or even NullUIHandler. At first these classes 
>> may only handle basic UI modal functionality, ultimately, they would 
>> have a protocol that handles all UI creation and binding > 
>> functionality.
>>
> Thanks for your suggestions, I don't like exceptions to much, at least 
> not in this case,
> and the second solution meant a major refactoring, which I do not
> want to pursue at the moment.


John's second suggestion could be a good thing for the main release, if 
someone implements it or the SWT version is available and could be 
updated.  I agree that it's probably a bit much to implement in your own 
image as a temporary fix. :-)

> And I came to the conclusion, that the only modal dialogs / menus, we 
> should be
> able to skip automatically, are the ones which only _inform_ the user,
> in other words, only have one entry, like "ok", or "proceed" etc.


Right.  Typically in the update stream, the only time a yes/no prompt 
comes up is when you get to the beta/gamma phase and it asks you whether 
you want to skip ahead to the next alpha version.  We talked about maybe 
adding yes/no prompts when a bunch of packages are about to be removed, 
so that might be another time... although if we end up removing packages 
in small quantities here and there we probably don't want a bunch of 
prompts coming up.

I agree that it would be useful sometimes to be able to load updates for 
an older image without having to "babysit" it while the various prompts 
appear.  Another thing I could do as update-stream-maintainer is always 
have the "yes" option for any update prompt be the "default" course of 
action, which for example would be removing the packages.  Then you 
could even have those prompts skipped when loading updates, by 
automatically choosing "yes".  It's less clear whether proceeding to 
beta or the next alpha would be the default course of action, though.  I 
suppose continuing on the alpha course could be the default.  (And you'd 
have to temporarily turn on this automatic handling of yes/no prompts 
only while loading updates, you wouldn't want it always to be on. ;-)  
Or you could raise an exception and handle it in the updating code, etc.)

- Doug Way




More information about the Squeak-dev mailing list