[ba.windows.x] Is there an equivalent to the OL _OL_WIN_BUSY in Motif?

tracy@goshawk.Unify.Com (10/25/90)

Hello,

This is a question along the lines of: 

	Open Look has a particular feature that I am using, 
	and I would like to find an equivalent feature or method 
	in Motif (or in Xt!).

The Open Look feature that I am using is the _OL_WIN_BUSY_ property 
that a client may set on a window.  When this property is set on a 
window, the Open Look window manager assumes that that window is busy, 
grays out the window header and traps all keyboard and mouse input to 
the window.  The window will beep in response to any input.  (This is 
detailed on p74, Open Look Intrinsics Toolkit Widget Set Programmers 
Guide, version printed 6/11/90.)


Different ideas I have considered using in Motif are: setting 
XtNsensitive to FALSE on a parent widget inside a particular window, 
and/or not accepting Focus events.  But, there doesn't seem to be any
way to ask MWM or other WM's to change the appearance of the window
header to appear inactive.

Has anyone else considered this?  Or devised/found some method for
accomplishing this?

thanks in advance,

Tracy Wiseman

* Unify Corporation * Sacramento, CA * (916)920-9092 * tracy@unify.com *

argv%turnpike@Sun.COM (Dan Heller) (10/26/90)

[note: I could not followup to comp.windows.open-look because that
newsgroup doesn't exist (here, at least)]

In article <ltvzojx@Unify.Com> tracy@goshawk.Unify.Com writes:
> 	Open Look has a particular feature that I am using, 
> 	and I would like to find an equivalent feature or method 
> 	in Motif (or in Xt!).

Open Look has *lots* of features like this that are gravely needed
in Motif.

> The Open Look feature that I am using is the _OL_WIN_BUSY_ property 
> that a client may set on a window.  When this property is set on a 
> window, the Open Look window manager assumes that that window is busy, 
> grays out the window header and traps all keyboard and mouse input to 
> the window.

It sounds misleading, your last part -- it does not confine mouse
movement to the window.  It sounded as tho you implied that.  It also
changes the cursor to a timeout cursor.  The fact that the cursor is
specified causes consistency among all OL apps -- this is the part that
Motif needs (a specific and consistent description of what should happen
in such a state [popping up a "working dialog" is not sufficient]).

> Different ideas I have considered using in Motif are: setting 
> XtNsensitive to FALSE on a parent widget inside a particular window, 
> and/or not accepting Focus events.

What you can do is use XtGrabPointer()/XtGrabKeyboard() (both have
masks to grab both the mouse and the keyboard) and you can specify a
function to call in case of mouse or keyboard events.  That function
can call XBell().  The XtGrab* functions can also set the cursor to
be whatever you want (might as well steal the OL cursor :-) and you
have just about everything.

> But, there doesn't seem to be any
> way to ask MWM or other WM's to change the appearance of the window
> header to appear inactive.

That you're going to have to live without.
dan
----------------------------------------------------
O'Reilly && Associates   argv@sun.com / argv@ora.com
Opinions expressed reflect those of the author only.