I wrote:
Is there a way to create a "real" modal dialog box using Win32::GUI?

I guess not. Maybe in a future release of Win32::GUI? I looked around in the XS code and the SDK documentation, but couldn't get anything to work. So, I wrote a class to handle this: Win32::GUI::Modalizer. Name suggestions welcome :)

In brief it works like this when a modal window is displayed:

* When the modal window receives an Activate() event, Modalizer makes sure all application windows are on top of other applications.

* When windows other than the modal window receives an Activate() event, the modal window is immediately brought to the top.

This was actually a bit tricky to get working with events fired off left and right, recursively to boot. The solution isn't perfect, but it goes a long way. If anyone knows how to get a Window to not be displayed in the taskbar, please let me know.

Win32::GUI::Modalizer is available in the Oasis source package. There is a complete example in the SYNOPSIS, so you can try it out and tell me that it doesn't work on your installation :)


/J


--
Johan Lindström, Sourcerer, Boss Casinos Ltd, Antigua
[EMAIL PROTECTED]


Reply via email to