djb@cbnews.att.com (David J. Bryant) (08/17/90)
According to the X Toolkit Intrinsics manual, page 90, when a widget has been made dormant through the use of XtSetSensitive(): "...a widget is considered to be insensitive. If a widget is insensitive, the Event Manager does not dispatch any events to the widget with an event type of KeyPress, KeyRelease, ButtonPress, ButtonRelease, MotionNotify, EnterNotify, LeaveNotify, FocusIn, or FocusOut." This is certainly clear, but my question is "does the Event Manager simply discard these events, or can it be persuaded to propagate them up to some ancestor of the dormant widget?" The documentation doesn't seem to specify this anywhere I've been able to spot. What I'd like to do is use XtSetSensitive() to "deactivate" widgets as part of interactive direct manipulation. Once widget(s) were desensitized, the user could "pick" one by clicking a mouse button on it, at which point the ButtonPress would be received by the widget's parent, who would then do the appropriate thing (e.g. move, destroy, refresh) to the selected widget. I realize I could accomplish something like this with "overlay" windows, but I'm looking for an a better, easier, or more straightforward way to do this, and I like the visual indication that many desensitized widgets give. UUCP: att!cbosgd!djb David Bryant att!cborion!djb AT&T Bell Laboratories INTERNET: djb@cbosgd.att.com Room 1B-256 cborion!djb@att.com 6200 East Broad Street PHONE: (614) 860-4516 Columbus, Ohio 43213 FAX: (614) 868-4302