home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / mod201j.zip / modula2.exe / os2bin / mod.h < prev    next >
C/C++ Source or Header  |  1995-08-19  |  11KB  |  297 lines

  1. /*************************************************************************
  2.    MOD.H      Common resource compiler definitions for Modula-2
  3.               Last update: 19.08.95 21.35
  4.  
  5.    Copyright (c) 1995 by Juergen Neuhoff
  6. **************************************************************************/
  7.  
  8. #ifndef _MOD_H_INCLUDED
  9. #define _MOD_H_INCLUDED 1
  10.  
  11.  
  12. /* Menu item styles & attributes.
  13.    Note: In multiple choice submenus a style of 'MIS_SINGLE' denotes 
  14.          the item is a radiobutton.  Absence of this style defaults 
  15.          the item to a checkbox.       
  16. */
  17.  
  18. #define MIS_TEXT                   0x0001
  19. #define MIS_BITMAP                 0x0002
  20. #define MIS_SEPARATOR              0x0004
  21. #define MIS_OWNERDRAW              0x0008
  22. #define MIS_SUBMENU                0x0010
  23. #define MIS_MULTMENU               0x0020    /* multiple choice submenu     */
  24. #define MIS_SYSCOMMAND             0x0040
  25. #define MIS_HELP                   0x0080
  26. #define MIS_STATIC                 0x0100
  27. #define MIS_BUTTONSEPARATOR        0x0200
  28. #define MIS_BREAK                  0x0400
  29. #define MIS_BREAKSEPARATOR         0x0800
  30. #define MIS_GROUP                  0x1000    /* multiple choice group start */
  31. #define MIS_SINGLE                 0x2000
  32.  
  33.  
  34.  
  35. #define MIA_NODISMISS              0x0020
  36. #define MIA_FRAMED                 0x1000
  37. #define MIA_CHECKED                0x2000
  38. #define MIA_DISABLED               0x4000
  39. #define MIA_HILITED                0x8000
  40.  
  41.  
  42.  
  43. /* Frame window styles */
  44. /* All unused FCF_xxx bits are reserved */
  45.  
  46. #define FCF_TITLEBAR               0x00000001L
  47. #define FCF_SYSMENU                0x00000002L
  48. #define FCF_MENU                   0x00000004L
  49. #define FCF_SIZEBORDER             0x00000008L
  50. #define FCF_MINBUTTON              0x00000010L
  51. #define FCF_MAXBUTTON              0x00000020L
  52. #define FCF_MINMAX                 0x00000030L /* minmax means BOTH buttons */
  53. #define FCF_VERTSCROLL             0x00000040L
  54. #define FCF_HORZSCROLL             0x00000080L
  55. #define FCF_DLGBORDER              0x00000100L
  56. #define FCF_BORDER                 0x00000200L
  57. #define FCF_SHELLPOSITION          0x00000400L
  58. #define FCF_TASKLIST               0x00000800L
  59. #define FCF_NOBYTEALIGN            0x00001000L
  60. #define FCF_NOMOVEWITHOWNER        0x00002000L
  61. #define FCF_ICON                   0x00004000L
  62. #define FCF_ACCELTABLE             0x00008000L
  63. #define FCF_SYSMODAL               0x00010000L
  64. #define FCF_SCREENALIGN            0x00020000L
  65. #define FCF_MOUSEALIGN             0x00040000L
  66. #define FCF_HIDEBUTTON             0x01000000L
  67. #define FCF_HIDEMAX                0x01000020L /* hidemax means BOTH buttons */
  68. #define FCF_DBE_APPSTAT            0x80000000L
  69. #define FCF_AUTOICON               0x40000000L
  70. #define FCF_STANDARD               0x0000CC3FL
  71.  
  72.  
  73.  
  74. /* frame styles */
  75.  
  76. #define FS_ICON                    0x00000001L
  77. #define FS_ACCELTABLE              0x00000002L
  78. #define FS_SHELLPOSITION           0x00000004L
  79. #define FS_TASKLIST                0x00000008L
  80. #define FS_NOBYTEALIGN             0x00000010L
  81. #define FS_NOMOVEWITHOWNER         0x00000020L
  82. #define FS_SYSMODAL                0x00000040L
  83. #define FS_DLGBORDER               0x00000080L
  84. #define FS_BORDER                  0x00000100L
  85. #define FS_SCREENALIGN             0x00000200L
  86. #define FS_MOUSEALIGN              0x00000400L
  87. #define FS_SIZEBORDER              0x00000800L
  88. #define FS_AUTOICON                0x00001000L
  89. #define FS_DBE_APPSTAT             0x00008000L
  90. #define FS_STANDARD                0x0000000FL
  91.  
  92.  
  93.  
  94. /* Standard Window Styles */
  95.  
  96. #define WS_VISIBLE                 0x80000000L
  97. #define WS_DISABLED                0x40000000L
  98. #define WS_CLIPCHILDREN            0x20000000L
  99. #define WS_CLIPSIBLINGS            0x10000000L
  100. #define WS_PARENTCLIP              0x08000000L
  101. #define WS_SAVEBITS                0x04000000L
  102. #define WS_SYNCPAINT               0x02000000L
  103. #define WS_MINIMIZED               0x01000000L
  104. #define WS_MAXIMIZED               0x00800000L
  105. #define WS_ANIMATE                 0x00400000L
  106.  
  107.  
  108.  
  109. /* Dialog manager styles */
  110.  
  111. #define WS_GROUP                   0x00010000L
  112. #define WS_TABSTOP                 0x00020000L
  113. #define WS_MULTISELECT             0x00040000L
  114.  
  115.  
  116.  
  117. /* Standard Window Classes */
  118.  
  119. typedef unsigned char *PSZ;
  120. #define WC_FRAME             ((PSZ)0xffff0001L)
  121. #define WC_COMBOBOX          ((PSZ)0xffff0002L)
  122. #define WC_BUTTON            ((PSZ)0xffff0003L)
  123. #define WC_MENU              ((PSZ)0xffff0004L)
  124. #define WC_STATIC            ((PSZ)0xffff0005L)
  125. #define WC_ENTRYFIELD        ((PSZ)0xffff0006L)
  126. #define WC_LISTBOX           ((PSZ)0xffff0007L)
  127. #define WC_SCROLLBAR         ((PSZ)0xffff0008L)
  128. #define WC_TITLEBAR          ((PSZ)0xffff0009L)
  129. #define WC_MLE               ((PSZ)0xffff000AL)
  130. /* 000B to 000F reserved */
  131. #define WC_APPSTAT           ((PSZ)0xffff0010L)
  132. #define WC_KBDSTAT           ((PSZ)0xffff0011L)
  133. #define WC_PECIC             ((PSZ)0xffff0012L)
  134. #define WC_DBE_KKPOPUP       ((PSZ)0xffff0013L)
  135. /* 0014 to 001F reserved */
  136. #define WC_SPINBUTTON        ((PSZ)0xffff0020L)
  137. /* 0021 to 0024 reserved */
  138. #define WC_CONTAINER         ((PSZ)0xffff0025L)
  139. #define WC_SLIDER            ((PSZ)0xffff0026L)
  140. #define WC_VALUESET          ((PSZ)0xffff0027L)
  141. #define WC_NOTEBOOK          ((PSZ)0xffff0028L)
  142. /* 0029 to 002C used by PEN */
  143. #define WC_PENFIRST          ((PSZ)0xffff0029L)
  144. #define WC_PENLAST           ((PSZ)0xffff002CL)
  145. /* 002D to 0030 reserved */
  146. /* 0030 to 003F reserved */
  147. #define WC_MMPMFIRST         ((PSZ)0xffff0040L)
  148. #define WC_MMPMLAST          ((PSZ)0xffff004fL)
  149.  
  150.  
  151.  
  152. /* SPINBUTTON Creation Flags : Character Acceptance */
  153.  
  154. #define SPBS_ALLCHARACTERS 0x00000000L /* Default: All chars accepted  */
  155. #define SPBS_NUMERICONLY   0x00000001L /* Only 0 - 9 accepted & VKeys  */
  156. #define SPBS_READONLY      0x00000002L /* No chars allowed in entryfld */
  157.  
  158.  
  159.  
  160. /* SPINBUTTON Creation Flags : Type of Component */
  161.  
  162. #define SPBS_MASTER        0x00000010L
  163. #define SPBS_SERVANT       0x00000000L /* Default: Servant            */
  164.  
  165.  
  166.  
  167. /* SPINBUTTON Creation Flags : Type of Justification */
  168.  
  169. #define SPBS_JUSTDEFAULT  0x00000000L /* Default: Same as Left        */
  170. #define SPBS_JUSTLEFT     0x00000008L
  171. #define SPBS_JUSTRIGHT    0x00000004L
  172. #define SPBS_JUSTCENTER   0x0000000CL
  173.  
  174.  
  175.  
  176. /* SPINBUTTON Creation Flags :  Border or not */
  177.  
  178. #define SPBS_NOBORDER     0x00000020L /* Borderless SpinField         */
  179.                                       /* Default is to have a border. */
  180.  
  181.  
  182. /* SPINBUTTON Creation Flags : Fast spin or not */
  183.  
  184. #define SPBS_FASTSPIN     0x00000100L /* Allow fast spinning.  Fast   */
  185.                                       /* spinning is performed by     */
  186.                                       /* skipping over numbers        */
  187.  
  188.  
  189.  
  190. /* SPINBUTTON Creation Flags : Pad numbers on front with 0's */
  191.  
  192. #define SPBS_PADWITHZEROS 0x00000080L /* Pad the number with zeroes   */
  193.  
  194.  
  195.  
  196. /* Virtual key values */
  197.  
  198. #define VK_BUTTON1                 0x01
  199. #define VK_BUTTON2                 0x02
  200. #define VK_BUTTON3                 0x03
  201. #define VK_BREAK                   0x04
  202. #define VK_BACKSPACE               0x05
  203. #define VK_TAB                     0x06
  204. #define VK_BACKTAB                 0x07
  205. #define VK_NEWLINE                 0x08
  206. #define VK_SHIFT                   0x09
  207. #define VK_CTRL                    0x0A
  208. #define VK_ALT                     0x0B
  209. #define VK_ALTGRAF                 0x0C
  210. #define VK_PAUSE                   0x0D
  211. #define VK_CAPSLOCK                0x0E
  212. #define VK_ESC                     0x0F
  213. #define VK_SPACE                   0x10
  214. #define VK_PAGEUP                  0x11
  215. #define VK_PAGEDOWN                0x12
  216. #define VK_END                     0x13
  217. #define VK_HOME                    0x14
  218. #define VK_LEFT                    0x15
  219. #define VK_UP                      0x16
  220. #define VK_RIGHT                   0x17
  221. #define VK_DOWN                    0x18
  222. #define VK_PRINTSCRN               0x19
  223. #define VK_INSERT                  0x1A
  224. #define VK_DELETE                  0x1B
  225. #define VK_SCRLLOCK                0x1C
  226. #define VK_NUMLOCK                 0x1D
  227. #define VK_ENTER                   0x1E
  228. #define VK_SYSRQ                   0x1F
  229. #define VK_F1                      0x20
  230. #define VK_F2                      0x21
  231. #define VK_F3                      0x22
  232. #define VK_F4                      0x23
  233. #define VK_F5                      0x24
  234. #define VK_F6                      0x25
  235. #define VK_F7                      0x26
  236. #define VK_F8                      0x27
  237. #define VK_F9                      0x28
  238. #define VK_F10                     0x29
  239. #define VK_F11                     0x2A
  240. #define VK_F12                     0x2B
  241. #define VK_F13                     0x2C
  242. #define VK_F14                     0x2D
  243. #define VK_F15                     0x2E
  244. #define VK_F16                     0x2F
  245. #define VK_F17                     0x30
  246. #define VK_F18                     0x31
  247. #define VK_F19                     0x32
  248. #define VK_F20                     0x33
  249. #define VK_F21                     0x34
  250. #define VK_F22                     0x35
  251. #define VK_F23                     0x36
  252. #define VK_F24                     0x37
  253. #define VK_ENDDRAG                 0x38
  254. #define VK_CLEAR                   0x39
  255. #define VK_EREOF                   0x3A
  256. #define VK_PA1                     0x3B
  257. #define VK_MENU                    VK_F10
  258. #define VK_DBCSFIRST               0x0080
  259. #define VK_DBCSLAST                0x00ff
  260. #define VK_USERFIRST               0x0100
  261. #define VK_USERLAST                0x01ff
  262.  
  263.  
  264. /* Button control styles */
  265.  
  266. #define BS_PUSHBUTTON              0L
  267. #define BS_CHECKBOX                1L
  268. #define BS_AUTOCHECKBOX            2L
  269. #define BS_RADIOBUTTON             3L
  270. #define BS_AUTORADIOBUTTON         4L
  271. #define BS_3STATE                  5L
  272. #define BS_AUTO3STATE              6L
  273. #define BS_USERBUTTON              7L
  274. #define BS_PRIMARYSTYLES           0x000fL
  275. #define BS_BITMAP                  0x0040L
  276. #define BS_ICON                    0x0080L
  277. #define BS_HELP                    0x0100L
  278. #define BS_SYSCOMMAND              0x0200L
  279. #define BS_DEFAULT                 0x0400L
  280. #define BS_NOPOINTERFOCUS          0x0800L
  281. #define BS_NOBORDER                0x1000L
  282. #define BS_NOCURSORSELECT          0x2000L
  283. #define BS_AUTOSIZE                0x4000L
  284.  
  285.  
  286.  
  287. /* List box styles */
  288.  
  289. #define LS_MULTIPLESEL             0x00000001L
  290. #define LS_OWNERDRAW               0x00000002L
  291. #define LS_NOADJUSTPOS             0x00000004L
  292. #define LS_HORZSCROLL              0x00000008L
  293. #define LS_EXTENDEDSEL             0x00000010L
  294.  
  295.  
  296. #endif /* _MOD_H_INCLUDED */
  297.