home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1993 #1 / NN_1993_1.iso / spool / comp / windows / x / 20976 < prev    next >
Encoding:
Internet Message Format  |  1993-01-10  |  1.6 KB

  1. Path: sparky!uunet!van-bc!mdavcr!brian
  2. From: brian@mdavcr.mda.ca (Brian Lemire)
  3. Newsgroups: comp.windows.x
  4. Subject: olwm, how do popup menus work ?
  5. Message-ID: <3940@mowgli.mdavcr.mda.ca>
  6. Date: 11 Jan 93 00:44:30 GMT
  7. Lines: 34
  8.  
  9.  
  10.     We are using wrappers to write an extension for an X server. We have
  11. wrapped the graphics context functions and operations successfully as well
  12. as the CreateGC(), PaintWindowBackground(), and CopyWindow() functions on the
  13. screen. We seem to be handling most window operations correctly except for
  14. popup menus. For some reason our wrapper functions are not called when these
  15. windows are created.
  16.  
  17.     My question is... What happens when a menu "pops up" under the olwm.
  18. We are currently looking at the menu that "pops up" on the root window. We
  19. have figured out this much so far...
  20.  
  21.     1. The client makes a call to map the window containing the popup
  22.        menu.
  23.  
  24.     2. At the server side this translates into a call to MapWindow() in
  25.        the /dix/window.c file.
  26.  
  27.     3. The MapWindow() function makes a call to pScreen->ValidateTree() 
  28.        followed by a call to HandleExposures(). { HandleExposures() is not
  29.        significant in that the call to it can be commented out and the
  30.        menu still "pops up".}
  31.  
  32.     4. The call to pScreen->ValidateTree() is in fact a call to 
  33.        miValidateTree(). miValidateTree() in turn calls miComputeClips(),
  34.        however neither one seems to call any drawing routines, or event
  35.        generation routines that would result in a window draw. These 
  36.        functions only perform calculations on regions.
  37.  
  38.     Any information of ideas would be appreaciated.
  39.  
  40. Brian Lemire
  41. brian@mda.ca
  42.  
  43.