home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1993 #1 / NN_1993_1.iso / spool / comp / windows / x / 21018 < prev    next >
Encoding:
Text File  |  1993-01-11  |  1.3 KB  |  32 lines

  1. Newsgroups: comp.windows.x
  2. Path: sparky!uunet!uunet.ca!geac!censor!meadow!alo
  3. From: alo@meadow.uucp (Andrew Lo)
  4. Subject: Widget Grabs
  5. Message-ID: <1993Jan11.162326.27272@meadow.uucp>
  6. Reply-To: alo@meadow.UUCP (Andrew Lo)
  7. Organization: Amdahl Canada Ltd., Software Development Center
  8. References: <1740@esl.ESL.COM> <141770007@hpcupt1.cup.hp.com> <1992Dec3.094912.24676@sol.ctr.columbia.edu> <1992Dec12.121026.5907@fct.unl.pt>
  9. Date: Mon, 11 Jan 93 16:23:26 GMT
  10. Lines: 20
  11.  
  12.  
  13. Hi! I'm a widget programmer.  I have created a widget in which under certain
  14. circumstances I need the widget to grab all button presses for the entire
  15. screen.  Thus far, I have achieved this by using XtGrabPointer followed by
  16. an XAllowEvents.  I have an event handler for the widget that intercepts all
  17. the button press events at this time.  This works.  
  18. However, when I press a cascade button it takes the grab away from me without 
  19. me calling XtUngrabPointer.  How do I prevent this from happening.?  
  20. Please email me directly.
  21.  
  22.  
  23. Thanks in advance
  24. Andrew Lo
  25.  
  26. P.S. The code looks something like this...
  27.  
  28. XtAddEventHandler( widget, ButtonPressMask, TRUE, handleButtonPresses, NULL);
  29. XtGrabPointer( widget, TRUE, ButtonPress, GrabModeAsync, GrabModeAsync, None,
  30.         XmGetMenuCursor( XtDisplay(widget)), CurrentTime);
  31. XAllowEvents( XtDisplay(widget), SyncPointer, CurrentTime);
  32.