gpm: hl-Functions

 
 4.3.3 Functions
 ---------------
 
  -- Function: Gpm_Roi* Gpm_PushRoi (int XMIN, int YMIN, int XMAX, int
           YMAX,
      int MASK, Gpm_Handler *FUN, void *XTRADATA);
 
      This function pushes a Region of Interest on top of the stack,
      after allocating it and filling with the provided values.  FUN is
      the function which will be called in order to handle events, and
      the roi itself will be passed to the function as clientdata.  The
      Roi is represented by a 'struct Gpm_Roi' structure, described in
      'gpm.h'.  The 'xtradata' field will be used to fill the 'xtradata'
      field in 'Gpm_Roi'.  the return value is the Roi just pushed (i.e.
      the top of stack).
 
  -- Function: char* Gpm_UseRoi (Gpm_Roi *ROI);
 
      While 'Gpm_PushRoi' has to allocate the Region before pushing it,
      this function passes a pre-allocated function to the stack manager.
      The return value is the Roi just used.
 
  -- Function: Gpm_Roi* Gpm_PopRoi (Gpm_Roi *ROI);
 
      Used to extract a Region of Interest from the stack, this function
      will also clear the Region if it is needed.
 
  -- Function: Gpm_Roi* Gpm_RaiseRoi (Gpm_Roi *WHICH, Gpm_Roi *BEFORE);
 
      Raise the specified roi, either before the second Roi or at top-of-
      stack (if BEFORE is 'NULL').  The return value is the new
      top-of-stack.
 
  -- Function: Gpm_Roi* Gpm_LowerRoi (Gpm_Roi *WHICH, Gpm_Roi *AFTER);
 
      Lower the specified roi, either after the second Roi or at
      bottom-of- stack (if BEFORE is NULL). The return value is the new
      top-of-stack.
 
  -- Function: Gpm_Roi* Gpm_HandleRoi (Gpm_Event *EPTR, void *
           CLIENTDATA);
 
      This function, which should not be invoked by the user, is the
      dispatching manager within the application for mouse events.  This
      function will browse the stack of regions of interest in order to
      notify windows about Enter and Leave events (if they are interested
      in them), and then delivers the current event to the relevant Roi.
 
      If no Roi is interested in he event the '*gpm_roi_handler' function
      is invoked (if not null), with null clientdata.
 
      Reported events are all those in 'Gpm_Event', and also 'GPM_ENTER'
      and 'GPM_LEAVE'.  These can be used to toggle highlighting on a
      button or to drop a menu if the menubutton is entered during a
      drag.  Remember that when Enter or Leave is notified, no other
      information in the event item should be used.