"System wide" modal dialogs

I need to have a particular dialog be modal but for ALL the
applications running, not just the dialog’s owning application.

I’ve tried creating a large region and placing just ‘behind’ the
dialog’s window region - no problem. But making that region mask ALL
events to everything ‘behind it’ is just a mystery.

Any ideas?

Hello

You want to change the opaque events structure show that it includes all
of the events that you do no want to get through.

What version of QNX are you using?

Thanks,
Rodney


jkohler wrote:

I need to have a particular dialog be modal but for ALL the
applications running, not just the dialog’s owning application.

I’ve tried creating a large region and placing just ‘behind’ the
dialog’s window region - no problem. But making that region mask ALL
events to everything ‘behind it’ is just a mystery.

Any ideas?

QNX: 6.3

I can block most of the events - all but the window manager, if I
click on a window frame from another application
it pops to the front and my carefully crafted region is now in back.

So the question is: how do I block the window manager events?

Hello

What are you setting your region opaque and sensitive too?

Thanks,
Rodney

jkohler wrote:

QNX: 6.3

I can block most of the events - all but the window manager, if I
click on a window frame from another application
it pops to the front and my carefully crafted region is now in back.

So the question is: how do I block the window manager events?

region.events_opaque = Ph_EV_WIN_OPAQUE;

Ph_EV_WIN_OPAQUE evals to virtually everything (PhT.h)
I tried 0xffffffff just to make sure.

Draw & exposure events obviously get blocked, - the problem seems
to be with the window manager.

I’m just creating a raw region, does it need to be a particular type?
A Ph_WINDOW_REGION or one of those?

I would say that the problem is that your region is in the wrong place,
or it’s a child of the wrong region. Are you making it a child of the
window? If so, try making it a child of the root region and make it
force front.

Thanks,
Rodney

jkohler wrote:

region.events_opaque = Ph_EV_WIN_OPAQUE;

Ph_EV_WIN_OPAQUE evals to virtually everything (PhT.h)
I tried 0xffffffff just to make sure.

Draw & exposure events obviously get blocked, - the problem seems
to be with the window manager.

I’m just creating a raw region, does it need to be a particular type?
A Ph_WINDOW_REGION or one of those?