home *** CD-ROM | disk | FTP | other *** search
/ IRIS Development Option 6.2 / IRIS_Development_Option_6.2_814-0478-001.iso / dist / dev.idb / usr / include / abi / Xm / MwmUtil.h.z / MwmUtil.h
C/C++ Source or Header  |  1996-03-14  |  4KB  |  173 lines

  1. /* 
  2.  * (c) Copyright 1989, 1990, 1991, 1992, 1993, 1994 OPEN SOFTWARE FOUNDATION, INC. 
  3.  * ALL RIGHTS RESERVED 
  4. */ 
  5. /* 
  6.  * Motif Release 1.2.4
  7. */ 
  8. /*   $RCSfile: MwmUtil.h,v $ $Revision: 1.3 $ $Date: 1994/04/20 01:36:34 $ */
  9. /*
  10. *  (c) Copyright 1988, 1989, 1990, 1991, 1992 HEWLETT-PACKARD COMPANY */
  11. #ifndef _XmMwmUtil_h
  12. #define _XmMwmUtil_h
  13.  
  14. #include <X11/Xmd.h>    /* for protocol typedefs */
  15.  
  16. #ifdef __cplusplus
  17. extern "C" {
  18. #endif
  19.  
  20. /*
  21.  * Contents of the _MWM_HINTS property.
  22.  */
  23.  
  24. typedef struct
  25. {
  26.     /* These correspond to XmRInt resources. (VendorSE.c) */
  27.     int             flags;
  28.     int         functions;
  29.     int         decorations;
  30.     int        input_mode;
  31.     int         status;
  32. } MotifWmHints;
  33.  
  34. typedef MotifWmHints    MwmHints;
  35.  
  36. /* bit definitions for MwmHints.flags */
  37. #define MWM_HINTS_FUNCTIONS    (1L << 0)
  38. #define MWM_HINTS_DECORATIONS    (1L << 1)
  39. #define MWM_HINTS_INPUT_MODE    (1L << 2)
  40. #define MWM_HINTS_STATUS    (1L << 3)
  41.  
  42. /* bit definitions for MwmHints.functions */
  43. #define MWM_FUNC_ALL        (1L << 0)
  44. #define MWM_FUNC_RESIZE        (1L << 1)
  45. #define MWM_FUNC_MOVE        (1L << 2)
  46. #define MWM_FUNC_MINIMIZE    (1L << 3)
  47. #define MWM_FUNC_MAXIMIZE    (1L << 4)
  48. #define MWM_FUNC_CLOSE        (1L << 5)
  49.  
  50. /* bit definitions for MwmHints.decorations */
  51. #define MWM_DECOR_ALL        (1L << 0)
  52. #define MWM_DECOR_BORDER    (1L << 1)
  53. #define MWM_DECOR_RESIZEH    (1L << 2)
  54. #define MWM_DECOR_TITLE        (1L << 3)
  55. #define MWM_DECOR_MENU        (1L << 4)
  56. #define MWM_DECOR_MINIMIZE    (1L << 5)
  57. #define MWM_DECOR_MAXIMIZE    (1L << 6)
  58.  
  59. /* values for MwmHints.input_mode */
  60. #define MWM_INPUT_MODELESS            0
  61. #define MWM_INPUT_PRIMARY_APPLICATION_MODAL    1
  62. #define MWM_INPUT_SYSTEM_MODAL            2
  63. #define MWM_INPUT_FULL_APPLICATION_MODAL    3
  64.  
  65. /* bit definitions for MwmHints.status */
  66. #define MWM_TEAROFF_WINDOW    (1L << 0)
  67.  
  68. /*
  69.  * The following is for compatibility only. It use is deprecated.
  70.  */
  71. #define MWM_INPUT_APPLICATION_MODAL    MWM_INPUT_PRIMARY_APPLICATION_MODAL
  72.  
  73.  
  74. /*
  75.  * Contents of the _MWM_INFO property.
  76.  */
  77.  
  78. typedef struct
  79. {
  80.     long    flags;
  81.     Window    wm_window;
  82. } MotifWmInfo;
  83.  
  84. typedef MotifWmInfo    MwmInfo;
  85.  
  86. /* bit definitions for MotifWmInfo .flags */
  87. #define MWM_INFO_STARTUP_STANDARD    (1L << 0)
  88. #define MWM_INFO_STARTUP_CUSTOM        (1L << 1)
  89.  
  90.  
  91.  
  92. /*
  93.  * Definitions for the _MWM_HINTS property.
  94.  */
  95.  
  96. typedef struct
  97. {
  98.     /* 32-bit property items are stored as long on the client (whether
  99.      * that means 32 bits or 64).  XChangeProperty handles the conversion
  100.      * to the actual 32-bit quantities sent to the server.
  101.      */
  102.     unsigned long    flags;
  103.     unsigned long    functions;
  104.     unsigned long    decorations;
  105.     long             inputMode;
  106.     unsigned long    status;
  107. } PropMotifWmHints;
  108.  
  109. typedef PropMotifWmHints    PropMwmHints;
  110.  
  111.  
  112. /* number of elements of size 32 in _MWM_HINTS */
  113. #define PROP_MOTIF_WM_HINTS_ELEMENTS    5
  114. #define PROP_MWM_HINTS_ELEMENTS        PROP_MOTIF_WM_HINTS_ELEMENTS
  115.  
  116. /* atom name for _MWM_HINTS property */
  117. #define _XA_MOTIF_WM_HINTS    "_MOTIF_WM_HINTS"
  118. #define _XA_MWM_HINTS        _XA_MOTIF_WM_HINTS
  119.  
  120. /*
  121.  * Definitions for the _MWM_MESSAGES property.
  122.  */
  123.  
  124. #define _XA_MOTIF_WM_MESSAGES    "_MOTIF_WM_MESSAGES"
  125. #define _XA_MWM_MESSAGES    _XA_MOTIF_WM_MESSAGES
  126.  
  127. /* atom that enables client frame offset messages */
  128. #define _XA_MOTIF_WM_OFFSET    "_MOTIF_WM_OFFSET"
  129.  
  130. /*
  131.  * Definitions for the _MWM_MENU property.
  132.  */
  133.  
  134. /* atom name for _MWM_MENU property */
  135. #define _XA_MOTIF_WM_MENU    "_MOTIF_WM_MENU"
  136. #define _XA_MWM_MENU        _XA_MOTIF_WM_MENU
  137.  
  138.  
  139. /*
  140.  * Definitions for the _MWM_INFO property.
  141.  */
  142.  
  143. typedef struct
  144. {
  145.   long        flags;
  146.   Window    wmWindow;
  147. } PropMotifWmInfo;
  148.  
  149. typedef PropMotifWmInfo    PropMwmInfo;
  150.  
  151.  
  152. /* number of elements of size 32 in _MWM_INFO */
  153. #define PROP_MOTIF_WM_INFO_ELEMENTS    2
  154. #define PROP_MWM_INFO_ELEMENTS        PROP_MOTIF_WM_INFO_ELEMENTS
  155.  
  156. /* atom name for _MWM_INFO property */
  157. #define _XA_MOTIF_WM_INFO    "_MOTIF_WM_INFO"
  158. #define _XA_MWM_INFO        _XA_MOTIF_WM_INFO
  159.  
  160.  
  161. /*
  162.  * Miscellaneous atom definitions
  163.  */
  164.  
  165. /* atom for motif input bindings */
  166. #define _XA_MOTIF_BINDINGS    "_MOTIF_BINDINGS"
  167.  
  168. #ifdef __cplusplus
  169. }  /* Close scope of 'extern "C"' declaration which encloses file. */
  170. #endif
  171.  
  172. #endif /* _XmMwmUtil_h */
  173.