From: Brad Myers
Subject: Help with CLX events
Date: 
Message-ID: <1992Feb10.202033.224951@cs.cmu.edu>
Does anyone understand CLX event masks?

In the CLX manual, the event mask keywords includes things like 
:owner-grab-button that I think I want to use.  However, if I do
(defparameter *report-motion-grab-pem* (xlib:make-event-mask
						 :button-press
						 :button-release
						 :pointer-motion
						 :owner-grab-button
						 ))
The value returned is 16777292.  If I then try to use this value for either
(setf (xlib:window-event-mask drawable) *report-motion-grab-pem*)
or for xlib:change-active-pointer-grab, then CLX complains that
16777292 is not an INT-16.  So when can you use :owner-grab-button in an
event mask?  Is this a bug in CLX that it won't let me use the bits or that it
has the wrong value for the bits (there seem to be about 25 different choices
of bits, so they can't all fit in INT-16)?  Or is there some other function 
I can use to set the event mask when it is bigger than INT-16?

I am using Allegro CL 4.0.1 [Sun4] (2/8/91) and CLX "MIT R4.4 (Franz ACL 4.0)"


P.S. Does anyone know what :owner-grab-button would do if I could set it?  
I want to achieve the same effect as xlib:grab-pointer with owner-p T, 
but have X ungrab automatically when the button is released, instead of 
waiting for an explicit ungrab-pointer.  Does someone know another way to
achieve this?  I was told by C folk to use the :owner-grab-button parameter.

P.P.S. Is there a CLX mailing list for asking questions on?

Thanks,
Brad A. Myers
School of Computer Science
Carnegie Mellon University
5000 Forbes Avenue
Pittsburgh, PA  15213-3890
(412) 268-5150
FAX: (412) 681-5739
ยทยทยท@a.gp.cs.cmu.edu