home *** CD-ROM | disk | FTP | other *** search
/ PC Plus SuperCD (UK) 2000 May / PCP163A.iso / Runimage / Cbuilder4 / Include / WINUSER.RH < prev    next >
Encoding:
Text File  |  1999-01-26  |  40.7 KB  |  1,301 lines

  1. #pragma option push -b -a8 -pc -A- /*P_O_Push_S*/
  2. /*++ BUILD Version: 0000     Increment this if a change has global effects
  3.  
  4. Copyright (c) 1990-1997  Microsoft Corporation
  5.  
  6. Module Name:
  7.  
  8.     winuser.rh
  9.  
  10. Abstract:
  11.  
  12.     This module defines the 32-Bit Windows resource codes from winuser.h.
  13.  
  14. Revision History:
  15.  
  16. --*/
  17.  
  18. /*
  19.  * ShowWindow() Commands
  20.  */
  21. #define SW_HIDE             0
  22. #define SW_SHOWNORMAL       1
  23. #define SW_NORMAL           1
  24. #define SW_SHOWMINIMIZED    2
  25. #define SW_SHOWMAXIMIZED    3
  26. #define SW_MAXIMIZE         3
  27. #define SW_SHOWNOACTIVATE   4
  28. #define SW_SHOW             5
  29. #define SW_MINIMIZE         6
  30. #define SW_SHOWMINNOACTIVE  7
  31. #define SW_SHOWNA           8
  32. #define SW_RESTORE          9
  33. #define SW_SHOWDEFAULT      10
  34. #define SW_FORCEMINIMIZE    11
  35. #define SW_MAX              11
  36.  
  37. /*
  38.  * Old ShowWindow() Commands
  39.  */
  40. #define HIDE_WINDOW         0
  41. #define SHOW_OPENWINDOW     1
  42. #define SHOW_ICONWINDOW     2
  43. #define SHOW_FULLSCREEN     3
  44. #define SHOW_OPENNOACTIVATE 4
  45.  
  46. /*
  47.  * Identifiers for the WM_SHOWWINDOW message
  48.  */
  49. #define SW_PARENTCLOSING    1
  50. #define SW_OTHERZOOM        2
  51. #define SW_PARENTOPENING    3
  52. #define SW_OTHERUNZOOM      4
  53.  
  54.  
  55. /*
  56.  * Virtual Keys, Standard Set
  57.  */
  58. #define VK_LBUTTON        0x01
  59. #define VK_RBUTTON        0x02
  60. #define VK_CANCEL         0x03
  61. #define VK_MBUTTON        0x04    /* NOT contiguous with L & RBUTTON */
  62.  
  63. #define VK_BACK           0x08
  64. #define VK_TAB            0x09
  65.  
  66. #define VK_CLEAR          0x0C
  67. #define VK_RETURN         0x0D
  68.  
  69. #define VK_SHIFT          0x10
  70. #define VK_CONTROL        0x11
  71. #define VK_MENU           0x12
  72. #define VK_PAUSE          0x13
  73. #define VK_CAPITAL        0x14
  74.  
  75. #define VK_KANA           0x15
  76. #define VK_HANGEUL        0x15  /* old name - should be here for compatibility */
  77. #define VK_HANGUL         0x15
  78. #define VK_JUNJA          0x17
  79. #define VK_FINAL          0x18
  80. #define VK_HANJA          0x19
  81. #define VK_KANJI          0x19
  82.  
  83. #define VK_ESCAPE         0x1B
  84.  
  85. #define VK_CONVERT        0x1C
  86. #define VK_NONCONVERT     0x1D
  87. #define VK_ACCEPT         0x1E
  88. #define VK_MODECHANGE     0x1F
  89.  
  90. #define VK_SPACE          0x20
  91. #define VK_PRIOR          0x21
  92. #define VK_NEXT           0x22
  93. #define VK_END            0x23
  94. #define VK_HOME           0x24
  95. #define VK_LEFT           0x25
  96. #define VK_UP             0x26
  97. #define VK_RIGHT          0x27
  98. #define VK_DOWN           0x28
  99. #define VK_SELECT         0x29
  100. #define VK_PRINT          0x2A
  101. #define VK_EXECUTE        0x2B
  102. #define VK_SNAPSHOT       0x2C
  103. #define VK_INSERT         0x2D
  104. #define VK_DELETE         0x2E
  105. #define VK_HELP           0x2F
  106.  
  107. /* VK_0 thru VK_9 are the same as ASCII '0' thru '9' (0x30 - 0x39) */
  108. /* VK_A thru VK_Z are the same as ASCII 'A' thru 'Z' (0x41 - 0x5A) */
  109.  
  110. #define VK_LWIN           0x5B
  111. #define VK_RWIN           0x5C
  112. #define VK_APPS           0x5D
  113.  
  114. #define VK_NUMPAD0        0x60
  115. #define VK_NUMPAD1        0x61
  116. #define VK_NUMPAD2        0x62
  117. #define VK_NUMPAD3        0x63
  118. #define VK_NUMPAD4        0x64
  119. #define VK_NUMPAD5        0x65
  120. #define VK_NUMPAD6        0x66
  121. #define VK_NUMPAD7        0x67
  122. #define VK_NUMPAD8        0x68
  123. #define VK_NUMPAD9        0x69
  124. #define VK_MULTIPLY       0x6A
  125. #define VK_ADD            0x6B
  126. #define VK_SEPARATOR      0x6C
  127. #define VK_SUBTRACT       0x6D
  128. #define VK_DECIMAL        0x6E
  129. #define VK_DIVIDE         0x6F
  130. #define VK_F1             0x70
  131. #define VK_F2             0x71
  132. #define VK_F3             0x72
  133. #define VK_F4             0x73
  134. #define VK_F5             0x74
  135. #define VK_F6             0x75
  136. #define VK_F7             0x76
  137. #define VK_F8             0x77
  138. #define VK_F9             0x78
  139. #define VK_F10            0x79
  140. #define VK_F11            0x7A
  141. #define VK_F12            0x7B
  142. #define VK_F13            0x7C
  143. #define VK_F14            0x7D
  144. #define VK_F15            0x7E
  145. #define VK_F16            0x7F
  146. #define VK_F17            0x80
  147. #define VK_F18            0x81
  148. #define VK_F19            0x82
  149. #define VK_F20            0x83
  150. #define VK_F21            0x84
  151. #define VK_F22            0x85
  152. #define VK_F23            0x86
  153. #define VK_F24            0x87
  154.  
  155. #define VK_NUMLOCK        0x90
  156. #define VK_SCROLL         0x91
  157.  
  158. /*
  159.  * VK_L* & VK_R* - left and right Alt, Ctrl and Shift virtual keys.
  160.  * Used only as parameters to GetAsyncKeyState() and GetKeyState().
  161.  * No other API or message will distinguish left and right keys in this way.
  162.  */
  163. #define VK_LSHIFT         0xA0
  164. #define VK_RSHIFT         0xA1
  165. #define VK_LCONTROL       0xA2
  166. #define VK_RCONTROL       0xA3
  167. #define VK_LMENU          0xA4
  168. #define VK_RMENU          0xA5
  169.  
  170. #if(WINVER >= 0x0400)
  171. #define VK_PROCESSKEY     0xE5
  172. #endif /* WINVER >= 0x0400 */
  173.  
  174. #define VK_ATTN           0xF6
  175. #define VK_CRSEL          0xF7
  176. #define VK_EXSEL          0xF8
  177. #define VK_EREOF          0xF9
  178. #define VK_PLAY           0xFA
  179. #define VK_ZOOM           0xFB
  180. #define VK_NONAME         0xFC
  181. #define VK_PA1            0xFD
  182. #define VK_OEM_CLEAR      0xFE
  183.  
  184.  
  185. /*
  186.  * Window Messages
  187.  */
  188.  
  189. #define WM_NULL                         0x0000
  190. #define WM_CREATE                       0x0001
  191. #define WM_DESTROY                      0x0002
  192. #define WM_MOVE                         0x0003
  193. #define WM_SIZE                         0x0005
  194.  
  195. #define WM_ACTIVATE                     0x0006
  196. /*
  197.  * WM_ACTIVATE state values
  198.  */
  199. #define     WA_INACTIVE     0
  200. #define     WA_ACTIVE       1
  201. #define     WA_CLICKACTIVE  2
  202.  
  203. #define WM_SETFOCUS                     0x0007
  204. #define WM_KILLFOCUS                    0x0008
  205. #define WM_ENABLE                       0x000A
  206. #define WM_SETREDRAW                    0x000B
  207. #define WM_SETTEXT                      0x000C
  208. #define WM_GETTEXT                      0x000D
  209. #define WM_GETTEXTLENGTH                0x000E
  210. #define WM_PAINT                        0x000F
  211. #define WM_CLOSE                        0x0010
  212. #define WM_QUERYENDSESSION              0x0011
  213. #define WM_QUIT                         0x0012
  214. #define WM_QUERYOPEN                    0x0013
  215. #define WM_ERASEBKGND                   0x0014
  216. #define WM_SYSCOLORCHANGE               0x0015
  217. #define WM_ENDSESSION                   0x0016
  218. #define WM_SHOWWINDOW                   0x0018
  219. #define WM_WININICHANGE                 0x001A
  220. #if(WINVER >= 0x0400)
  221. #define WM_SETTINGCHANGE                WM_WININICHANGE
  222. #endif /* WINVER >= 0x0400 */
  223.  
  224.  
  225. #define WM_DEVMODECHANGE                0x001B
  226. #define WM_ACTIVATEAPP                  0x001C
  227. #define WM_FONTCHANGE                   0x001D
  228. #define WM_TIMECHANGE                   0x001E
  229. #define WM_CANCELMODE                   0x001F
  230. #define WM_SETCURSOR                    0x0020
  231. #define WM_MOUSEACTIVATE                0x0021
  232. #define WM_CHILDACTIVATE                0x0022
  233. #define WM_QUEUESYNC                    0x0023
  234.  
  235. #define WM_GETMINMAXINFO                0x0024
  236. #define WM_PAINTICON                    0x0026
  237. #define WM_ICONERASEBKGND               0x0027
  238. #define WM_NEXTDLGCTL                   0x0028
  239. #define WM_SPOOLERSTATUS                0x002A
  240. #define WM_DRAWITEM                     0x002B
  241. #define WM_MEASUREITEM                  0x002C
  242. #define WM_DELETEITEM                   0x002D
  243. #define WM_VKEYTOITEM                   0x002E
  244. #define WM_CHARTOITEM                   0x002F
  245. #define WM_SETFONT                      0x0030
  246. #define WM_GETFONT                      0x0031
  247. #define WM_SETHOTKEY                    0x0032
  248. #define WM_GETHOTKEY                    0x0033
  249. #define WM_QUERYDRAGICON                0x0037
  250. #define WM_COMPAREITEM                  0x0039
  251. #if(WINVER >= 0x0500)
  252. #define WM_GETOBJECT                    0x003D
  253. #endif /* WINVER >= 0x0500 */
  254. #define WM_COMPACTING                   0x0041
  255. #define WM_COMMNOTIFY                   0x0044  /* no longer suported */
  256. #define WM_WINDOWPOSCHANGING            0x0046
  257. #define WM_WINDOWPOSCHANGED             0x0047
  258.  
  259. #define WM_POWER                        0x0048
  260. /*
  261.  * wParam for WM_POWER window message and DRV_POWER driver notification
  262.  */
  263. #define PWR_OK              1
  264. #define PWR_FAIL            (-1)
  265. #define PWR_SUSPENDREQUEST  1
  266. #define PWR_SUSPENDRESUME   2
  267. #define PWR_CRITICALRESUME  3
  268.  
  269. #define WM_COPYDATA                     0x004A
  270. #define WM_CANCELJOURNAL                0x004B
  271.  
  272.  
  273. #if(WINVER >= 0x0400)
  274. #define WM_NOTIFY                       0x004E
  275. #define WM_INPUTLANGCHANGEREQUEST       0x0050
  276. #define WM_INPUTLANGCHANGE              0x0051
  277. #define WM_TCARD                        0x0052
  278. #define WM_HELP                         0x0053
  279. #define WM_USERCHANGED                  0x0054
  280. #define WM_NOTIFYFORMAT                 0x0055
  281.  
  282. #define NFR_ANSI                             1
  283. #define NFR_UNICODE                          2
  284. #define NF_QUERY                             3
  285. #define NF_REQUERY                           4
  286.  
  287. #define WM_CONTEXTMENU                  0x007B
  288. #define WM_STYLECHANGING                0x007C
  289. #define WM_STYLECHANGED                 0x007D
  290. #define WM_DISPLAYCHANGE                0x007E
  291. #define WM_GETICON                      0x007F
  292. #define WM_SETICON                      0x0080
  293. #endif /* WINVER >= 0x0400 */
  294.  
  295. #define WM_NCCREATE                     0x0081
  296. #define WM_NCDESTROY                    0x0082
  297. #define WM_NCCALCSIZE                   0x0083
  298. #define WM_NCHITTEST                    0x0084
  299. #define WM_NCPAINT                      0x0085
  300. #define WM_NCACTIVATE                   0x0086
  301. #define WM_GETDLGCODE                   0x0087
  302. #define WM_SYNCPAINT                    0x0088
  303. #define WM_NCMOUSEMOVE                  0x00A0
  304. #define WM_NCLBUTTONDOWN                0x00A1
  305. #define WM_NCLBUTTONUP                  0x00A2
  306. #define WM_NCLBUTTONDBLCLK              0x00A3
  307. #define WM_NCRBUTTONDOWN                0x00A4
  308. #define WM_NCRBUTTONUP                  0x00A5
  309. #define WM_NCRBUTTONDBLCLK              0x00A6
  310. #define WM_NCMBUTTONDOWN                0x00A7
  311. #define WM_NCMBUTTONUP                  0x00A8
  312. #define WM_NCMBUTTONDBLCLK              0x00A9
  313.  
  314. #define WM_KEYFIRST                     0x0100
  315. #define WM_KEYDOWN                      0x0100
  316. #define WM_KEYUP                        0x0101
  317. #define WM_CHAR                         0x0102
  318. #define WM_DEADCHAR                     0x0103
  319. #define WM_SYSKEYDOWN                   0x0104
  320. #define WM_SYSKEYUP                     0x0105
  321. #define WM_SYSCHAR                      0x0106
  322. #define WM_SYSDEADCHAR                  0x0107
  323. #define WM_KEYLAST                      0x0108
  324.  
  325. #if(WINVER >= 0x0400)
  326. #define WM_IME_STARTCOMPOSITION         0x010D
  327. #define WM_IME_ENDCOMPOSITION           0x010E
  328. #define WM_IME_COMPOSITION              0x010F
  329. #define WM_IME_KEYLAST                  0x010F
  330. #endif /* WINVER >= 0x0400 */
  331.  
  332. #define WM_INITDIALOG                   0x0110
  333. #define WM_COMMAND                      0x0111
  334. #define WM_SYSCOMMAND                   0x0112
  335. #define WM_TIMER                        0x0113
  336. #define WM_HSCROLL                      0x0114
  337. #define WM_VSCROLL                      0x0115
  338. #define WM_INITMENU                     0x0116
  339. #define WM_INITMENUPOPUP                0x0117
  340. #define WM_MENUSELECT                   0x011F
  341. #define WM_MENUCHAR                     0x0120
  342. #define WM_ENTERIDLE                    0x0121
  343. #if(WINVER >= 0x0500)
  344. #define WM_MENURBUTTONUP                0x0122
  345. #define WM_MENUDRAG                     0x0123
  346. #define WM_MENUGETOBJECT                0x0124
  347. #define WM_UNINITMENUPOPUP              0x0125
  348. #define WM_MENUCOMMAND                  0x0126
  349. #endif /* WINVER >= 0x0500 */
  350.  
  351.  
  352. #define WM_CTLCOLORMSGBOX               0x0132
  353. #define WM_CTLCOLOREDIT                 0x0133
  354. #define WM_CTLCOLORLISTBOX              0x0134
  355. #define WM_CTLCOLORBTN                  0x0135
  356. #define WM_CTLCOLORDLG                  0x0136
  357. #define WM_CTLCOLORSCROLLBAR            0x0137
  358. #define WM_CTLCOLORSTATIC               0x0138
  359.  
  360.  
  361. #define WM_MOUSEFIRST                   0x0200
  362. #define WM_MOUSEMOVE                    0x0200
  363. #define WM_LBUTTONDOWN                  0x0201
  364. #define WM_LBUTTONUP                    0x0202
  365. #define WM_LBUTTONDBLCLK                0x0203
  366. #define WM_RBUTTONDOWN                  0x0204
  367. #define WM_RBUTTONUP                    0x0205
  368. #define WM_RBUTTONDBLCLK                0x0206
  369. #define WM_MBUTTONDOWN                  0x0207
  370. #define WM_MBUTTONUP                    0x0208
  371. #define WM_MBUTTONDBLCLK                0x0209
  372.  
  373. #if (_WIN32_WINNT >= 0x0400) || (_WIN32_WINDOWS > 0x0400)
  374. #define WM_MOUSEWHEEL                   0x020A
  375. #define WM_MOUSELAST                    0x020A
  376. #else
  377. #define WM_MOUSELAST                    0x0209
  378. #endif /* if (_WIN32_WINNT < 0x0400) */
  379.  
  380. #if(_WIN32_WINNT >= 0x0400)
  381. #define WHEEL_DELTA                     120     /* Value for rolling one detent */
  382. #endif /* _WIN32_WINNT >= 0x0400 */
  383. #if(_WIN32_WINNT >= 0x0400)
  384. #define WHEEL_PAGESCROLL                (UINT_MAX) /* Scroll one page */
  385. #endif /* _WIN32_WINNT >= 0x0400 */
  386.  
  387. #define WM_PARENTNOTIFY                 0x0210
  388. #define WM_ENTERMENULOOP                0x0211
  389. #define WM_EXITMENULOOP                 0x0212
  390.  
  391. #if(WINVER >= 0x0400)
  392. #define WM_NEXTMENU                     0x0213
  393. #define WM_SIZING                       0x0214
  394. #define WM_CAPTURECHANGED               0x0215
  395. #define WM_MOVING                       0x0216
  396. #define WM_POWERBROADCAST               0x0218      
  397. #define WM_DEVICECHANGE                 0x0219
  398.  
  399. #endif /* WINVER >= 0x0400 */
  400.  
  401. #define WM_MDICREATE                    0x0220
  402. #define WM_MDIDESTROY                   0x0221
  403. #define WM_MDIACTIVATE                  0x0222
  404. #define WM_MDIRESTORE                   0x0223
  405. #define WM_MDINEXT                      0x0224
  406. #define WM_MDIMAXIMIZE                  0x0225
  407. #define WM_MDITILE                      0x0226
  408. #define WM_MDICASCADE                   0x0227
  409. #define WM_MDIICONARRANGE               0x0228
  410. #define WM_MDIGETACTIVE                 0x0229
  411.  
  412.  
  413. #define WM_MDISETMENU                   0x0230
  414. #define WM_ENTERSIZEMOVE                0x0231
  415. #define WM_EXITSIZEMOVE                 0x0232
  416. #define WM_DROPFILES                    0x0233
  417. #define WM_MDIREFRESHMENU               0x0234
  418.  
  419.  
  420. #if(WINVER >= 0x0400)
  421. #define WM_IME_SETCONTEXT               0x0281
  422. #define WM_IME_NOTIFY                   0x0282
  423. #define WM_IME_CONTROL                  0x0283
  424. #define WM_IME_COMPOSITIONFULL          0x0284
  425. #define WM_IME_SELECT                   0x0285
  426. #define WM_IME_CHAR                     0x0286
  427. #endif /* WINVER >= 0x0400 */
  428. #if(WINVER >= 0x0500)
  429. #define WM_IME_REQUEST                  0x0288
  430. #endif /* WINVER >= 0x0500 */
  431. #if(WINVER >= 0x0400)
  432. #define WM_IME_KEYDOWN                  0x0290
  433. #define WM_IME_KEYUP                    0x0291
  434. #endif /* WINVER >= 0x0400 */
  435.  
  436.  
  437. #if(_WIN32_WINNT >= 0x0400)
  438. #define WM_MOUSEHOVER                   0x02A1
  439. #define WM_MOUSELEAVE                   0x02A3
  440. #endif /* _WIN32_WINNT >= 0x0400 */
  441.  
  442. #define WM_CUT                          0x0300
  443. #define WM_COPY                         0x0301
  444. #define WM_PASTE                        0x0302
  445. #define WM_CLEAR                        0x0303
  446. #define WM_UNDO                         0x0304
  447. #define WM_RENDERFORMAT                 0x0305
  448. #define WM_RENDERALLFORMATS             0x0306
  449. #define WM_DESTROYCLIPBOARD             0x0307
  450. #define WM_DRAWCLIPBOARD                0x0308
  451. #define WM_PAINTCLIPBOARD               0x0309
  452. #define WM_VSCROLLCLIPBOARD             0x030A
  453. #define WM_SIZECLIPBOARD                0x030B
  454. #define WM_ASKCBFORMATNAME              0x030C
  455. #define WM_CHANGECBCHAIN                0x030D
  456. #define WM_HSCROLLCLIPBOARD             0x030E
  457. #define WM_QUERYNEWPALETTE              0x030F
  458. #define WM_PALETTEISCHANGING            0x0310
  459. #define WM_PALETTECHANGED               0x0311
  460. #define WM_HOTKEY                       0x0312
  461.  
  462. #if(WINVER >= 0x0400)
  463. #define WM_PRINT                        0x0317
  464. #define WM_PRINTCLIENT                  0x0318
  465.  
  466. #define WM_HANDHELDFIRST                0x0358
  467. #define WM_HANDHELDLAST                 0x035F
  468.  
  469. #define WM_AFXFIRST                     0x0360
  470. #define WM_AFXLAST                      0x037F
  471. #endif /* WINVER >= 0x0400 */
  472.  
  473. #define WM_PENWINFIRST                  0x0380
  474. #define WM_PENWINLAST                   0x038F
  475.  
  476.  
  477. #if(WINVER >= 0x0400)
  478. #define WM_APP                          0x8000
  479. #endif /* WINVER >= 0x0400 */
  480.  
  481.  
  482. /*
  483.  * NOTE: All Message Numbers below 0x0400 are RESERVED.
  484.  *
  485.  * Private Window Messages Start Here:
  486.  */
  487. #define WM_USER                         0x0400
  488.  
  489. #if(WINVER >= 0x0400)
  490.  
  491. /*  wParam for WM_SIZING message  */
  492. #define WMSZ_LEFT           1
  493. #define WMSZ_RIGHT          2
  494. #define WMSZ_TOP            3
  495. #define WMSZ_TOPLEFT        4
  496. #define WMSZ_TOPRIGHT       5
  497. #define WMSZ_BOTTOM         6
  498. #define WMSZ_BOTTOMLEFT     7
  499. #define WMSZ_BOTTOMRIGHT    8
  500. #endif /* WINVER >= 0x0400 */
  501.  
  502. #ifndef NONCMESSAGES
  503.  
  504. /*
  505.  * WM_NCHITTEST and MOUSEHOOKSTRUCT Mouse Position Codes
  506.  */
  507. #define HTERROR             (-2)
  508. #define HTTRANSPARENT       (-1)
  509. #define HTNOWHERE           0
  510. #define HTCLIENT            1
  511. #define HTCAPTION           2
  512. #define HTSYSMENU           3
  513. #define HTGROWBOX           4
  514. #define HTSIZE              HTGROWBOX
  515. #define HTMENU              5
  516. #define HTHSCROLL           6
  517. #define HTVSCROLL           7
  518. #define HTMINBUTTON         8
  519. #define HTMAXBUTTON         9
  520. #define HTLEFT              10
  521. #define HTRIGHT             11
  522. #define HTTOP               12
  523. #define HTTOPLEFT           13
  524. #define HTTOPRIGHT          14
  525. #define HTBOTTOM            15
  526. #define HTBOTTOMLEFT        16
  527. #define HTBOTTOMRIGHT       17
  528. #define HTBORDER            18
  529. #define HTREDUCE            HTMINBUTTON
  530. #define HTZOOM              HTMAXBUTTON
  531. #define HTSIZEFIRST         HTLEFT
  532. #define HTSIZELAST          HTBOTTOMRIGHT
  533. #if(WINVER >= 0x0400)
  534. #define HTOBJECT            19
  535. #define HTCLOSE             20
  536. #define HTHELP              21
  537. #endif /* WINVER >= 0x0400 */
  538.  
  539. /*
  540.  * SendMessageTimeout values
  541.  */
  542. #define SMTO_NORMAL         0x0000
  543. #define SMTO_BLOCK          0x0001
  544. #define SMTO_ABORTIFHUNG    0x0002
  545. #if(WINVER >= 0x0500)
  546. #define SMTO_NOTIMEOUTIFNOTHUNG 0x0008
  547. #endif /* WINVER >= 0x0500 */
  548.  
  549. #endif /* !NONCMESSAGES */
  550.  
  551. /*
  552.  * WM_MOUSEACTIVATE Return Codes
  553.  */
  554. #define MA_ACTIVATE         1
  555. #define MA_ACTIVATEANDEAT   2
  556. #define MA_NOACTIVATE       3
  557. #define MA_NOACTIVATEANDEAT 4
  558.  
  559. /*
  560.  * WM_SETICON / WM_GETICON Type Codes
  561.  */
  562. #define ICON_SMALL          0
  563. #define ICON_BIG            1
  564.  
  565.  
  566. /*
  567.  * WM_SIZE message wParam values
  568.  */
  569. #define SIZE_RESTORED       0
  570. #define SIZE_MINIMIZED      1
  571. #define SIZE_MAXIMIZED      2
  572. #define SIZE_MAXSHOW        3
  573. #define SIZE_MAXHIDE        4
  574.  
  575. /*
  576.  * Obsolete constant names
  577.  */
  578. #define SIZENORMAL          SIZE_RESTORED
  579. #define SIZEICONIC          SIZE_MINIMIZED
  580. #define SIZEFULLSCREEN      SIZE_MAXIMIZED
  581. #define SIZEZOOMSHOW        SIZE_MAXSHOW
  582. #define SIZEZOOMHIDE        SIZE_MAXHIDE
  583.  
  584. /*
  585.  * WM_NCCALCSIZE "window valid rect" return values
  586.  */
  587. #define WVR_ALIGNTOP        0x0010
  588. #define WVR_ALIGNLEFT       0x0020
  589. #define WVR_ALIGNBOTTOM     0x0040
  590. #define WVR_ALIGNRIGHT      0x0080
  591. #define WVR_HREDRAW         0x0100
  592. #define WVR_VREDRAW         0x0200
  593. #define WVR_REDRAW         (WVR_HREDRAW | \
  594.                             WVR_VREDRAW)
  595. #define WVR_VALIDRECTS      0x0400
  596.  
  597.  
  598. #ifndef NOKEYSTATES
  599.  
  600. /*
  601.  * Key State Masks for Mouse Messages
  602.  */
  603. #define MK_LBUTTON          0x0001
  604. #define MK_RBUTTON          0x0002
  605. #define MK_SHIFT            0x0004
  606. #define MK_CONTROL          0x0008
  607. #define MK_MBUTTON          0x0010
  608.  
  609. #endif /* !NOKEYSTATES */
  610.  
  611. #if(_WIN32_WINNT >= 0x0400)
  612. #ifndef NOTRACKMOUSEEVENT
  613.  
  614. #define TME_HOVER       0x00000001
  615. #define TME_LEAVE       0x00000002
  616. #define TME_QUERY       0x40000000
  617. #define TME_CANCEL      0x80000000
  618.  
  619.  
  620. #define HOVER_DEFAULT   0xFFFFFFFF
  621.  
  622. #endif /* !NOTRACKMOUSEEVENT */
  623. #endif /* _WIN32_WINNT >= 0x0400 */
  624.  
  625.  
  626. /*
  627.  * Window Styles
  628.  */
  629. #define WS_OVERLAPPED       0x00000000L
  630. #define WS_POPUP            0x80000000L
  631. #define WS_CHILD            0x40000000L
  632. #define WS_MINIMIZE         0x20000000L
  633. #define WS_VISIBLE          0x10000000L
  634. #define WS_DISABLED         0x08000000L
  635. #define WS_CLIPSIBLINGS     0x04000000L
  636. #define WS_CLIPCHILDREN     0x02000000L
  637. #define WS_MAXIMIZE         0x01000000L
  638. #define WS_CAPTION          0x00C00000L     /* WS_BORDER | WS_DLGFRAME  */
  639. #define WS_BORDER           0x00800000L
  640. #define WS_DLGFRAME         0x00400000L
  641. #define WS_VSCROLL          0x00200000L
  642. #define WS_HSCROLL          0x00100000L
  643. #define WS_SYSMENU          0x00080000L
  644. #define WS_THICKFRAME       0x00040000L
  645. #define WS_GROUP            0x00020000L
  646. #define WS_TABSTOP          0x00010000L
  647.  
  648. #define WS_MINIMIZEBOX      0x00020000L
  649. #define WS_MAXIMIZEBOX      0x00010000L
  650.  
  651.  
  652. #define WS_TILED            WS_OVERLAPPED
  653. #define WS_ICONIC           WS_MINIMIZE
  654. #define WS_SIZEBOX          WS_THICKFRAME
  655. #define WS_TILEDWINDOW      WS_OVERLAPPEDWINDOW
  656.  
  657. /*
  658.  * Common Window Styles
  659.  */
  660. #define WS_OVERLAPPEDWINDOW (WS_OVERLAPPED     | \
  661.                              WS_CAPTION        | \
  662.                              WS_SYSMENU        | \
  663.                              WS_THICKFRAME     | \
  664.                              WS_MINIMIZEBOX    | \
  665.                              WS_MAXIMIZEBOX)
  666.  
  667. #define WS_POPUPWINDOW      (WS_POPUP          | \
  668.                              WS_BORDER         | \
  669.                              WS_SYSMENU)
  670.  
  671. #define WS_CHILDWINDOW      (WS_CHILD)
  672.  
  673. /*
  674.  * Extended Window Styles
  675.  */
  676. #define WS_EX_DLGMODALFRAME     0x00000001L
  677. #define WS_EX_NOPARENTNOTIFY    0x00000004L
  678. #define WS_EX_TOPMOST           0x00000008L
  679. #define WS_EX_ACCEPTFILES       0x00000010L
  680. #define WS_EX_TRANSPARENT       0x00000020L
  681. #if(WINVER >= 0x0400)
  682. #define WS_EX_MDICHILD          0x00000040L
  683. #define WS_EX_TOOLWINDOW        0x00000080L
  684. #define WS_EX_WINDOWEDGE        0x00000100L
  685. #define WS_EX_CLIENTEDGE        0x00000200L
  686. #define WS_EX_CONTEXTHELP       0x00000400L
  687.  
  688. #define WS_EX_RIGHT             0x00001000L
  689. #define WS_EX_LEFT              0x00000000L
  690. #define WS_EX_RTLREADING        0x00002000L
  691. #define WS_EX_LTRREADING        0x00000000L
  692. #define WS_EX_LEFTSCROLLBAR     0x00004000L
  693. #define WS_EX_RIGHTSCROLLBAR    0x00000000L
  694.  
  695. #define WS_EX_CONTROLPARENT     0x00010000L
  696. #define WS_EX_STATICEDGE        0x00020000L
  697. #define WS_EX_APPWINDOW         0x00040000L
  698.  
  699.  
  700. #define WS_EX_OVERLAPPEDWINDOW  (WS_EX_WINDOWEDGE | WS_EX_CLIENTEDGE)
  701. #define WS_EX_PALETTEWINDOW     (WS_EX_WINDOWEDGE | WS_EX_TOOLWINDOW | WS_EX_TOPMOST)
  702.  
  703. #endif /* WINVER >= 0x0400 */
  704.  
  705.  
  706. /*
  707.  * Class styles
  708.  */
  709. #define CS_VREDRAW          0x0001
  710. #define CS_HREDRAW          0x0002
  711. #define CS_DBLCLKS          0x0008
  712. #define CS_OWNDC            0x0020
  713. #define CS_CLASSDC          0x0040
  714. #define CS_PARENTDC         0x0080
  715. #define CS_NOCLOSE          0x0200
  716. #define CS_SAVEBITS         0x0800
  717. #define CS_BYTEALIGNCLIENT  0x1000
  718. #define CS_BYTEALIGNWINDOW  0x2000
  719. #define CS_GLOBALCLASS      0x4000
  720.  
  721. #define CS_IME              0x00010000
  722.  
  723.  
  724.  
  725. /*
  726.  * Predefined Clipboard Formats
  727.  */
  728. #define CF_TEXT             1
  729. #define CF_BITMAP           2
  730. #define CF_METAFILEPICT     3
  731. #define CF_SYLK             4
  732. #define CF_DIF              5
  733. #define CF_TIFF             6
  734. #define CF_OEMTEXT          7
  735. #define CF_DIB              8
  736. #define CF_PALETTE          9
  737. #define CF_PENDATA          10
  738. #define CF_RIFF             11
  739. #define CF_WAVE             12
  740. #define CF_UNICODETEXT      13
  741. #define CF_ENHMETAFILE      14
  742. #if(WINVER >= 0x0400)
  743. #define CF_HDROP            15
  744. #define CF_LOCALE           16
  745. #define CF_MAX              17
  746. #endif /* WINVER >= 0x0400 */
  747.  
  748. #define CF_OWNERDISPLAY     0x0080
  749. #define CF_DSPTEXT          0x0081
  750. #define CF_DSPBITMAP        0x0082
  751. #define CF_DSPMETAFILEPICT  0x0083
  752. #define CF_DSPENHMETAFILE   0x008E
  753.  
  754. /*
  755.  * "Private" formats don't get GlobalFree()'d
  756.  */
  757. #define CF_PRIVATEFIRST     0x0200
  758. #define CF_PRIVATELAST      0x02FF
  759.  
  760. /*
  761.  * "GDIOBJ" formats do get DeleteObject()'d
  762.  */
  763. #define CF_GDIOBJFIRST      0x0300
  764. #define CF_GDIOBJLAST       0x03FF
  765.  
  766.  
  767. /* ;win40  -- A lot of MF_* flags have been renamed as MFT_* and MFS_* flags */
  768. /*
  769.  * Menu flags for Add/Check/EnableMenuItem()
  770.  */
  771. #define MF_INSERT           0x00000000L
  772. #define MF_CHANGE           0x00000080L
  773. #define MF_APPEND           0x00000100L
  774. #define MF_DELETE           0x00000200L
  775. #define MF_REMOVE           0x00001000L
  776.  
  777. #define MF_BYCOMMAND        0x00000000L
  778. #define MF_BYPOSITION       0x00000400L
  779.  
  780. #define MF_SEPARATOR        0x00000800L
  781.  
  782. #define MF_ENABLED          0x00000000L
  783. #define MF_GRAYED           0x00000001L
  784. #define MF_DISABLED         0x00000002L
  785.  
  786. #define MF_UNCHECKED        0x00000000L
  787. #define MF_CHECKED          0x00000008L
  788. #define MF_USECHECKBITMAPS  0x00000200L
  789.  
  790. #define MF_STRING           0x00000000L
  791. #define MF_BITMAP           0x00000004L
  792. #define MF_OWNERDRAW        0x00000100L
  793.  
  794. #define MF_POPUP            0x00000010L
  795. #define MF_MENUBARBREAK     0x00000020L
  796. #define MF_MENUBREAK        0x00000040L
  797.  
  798. #define MF_UNHILITE         0x00000000L
  799. #define MF_HILITE           0x00000080L
  800.  
  801. #if(WINVER >= 0x0400)
  802. #define MF_DEFAULT          0x00001000L
  803. #endif /* WINVER >= 0x0400 */
  804. #define MF_SYSMENU          0x00002000L
  805. #define MF_HELP             0x00004000L
  806. #if(WINVER >= 0x0400)
  807. #define MF_RIGHTJUSTIFY     0x00004000L
  808. #endif /* WINVER >= 0x0400 */
  809.  
  810. #define MF_MOUSESELECT      0x00008000L
  811. #if(WINVER >= 0x0400)
  812. #define MF_END              0x00000080L  /* Obsolete -- only used by old RES files */
  813. #endif /* WINVER >= 0x0400 */
  814.  
  815.  
  816. #if(WINVER >= 0x0400)
  817. #define MFT_STRING          MF_STRING
  818. #define MFT_BITMAP          MF_BITMAP
  819. #define MFT_MENUBARBREAK    MF_MENUBARBREAK
  820. #define MFT_MENUBREAK       MF_MENUBREAK
  821. #define MFT_OWNERDRAW       MF_OWNERDRAW
  822. #define MFT_RADIOCHECK      0x00000200L
  823. #define MFT_SEPARATOR       MF_SEPARATOR
  824. #define MFT_RIGHTORDER      0x00002000L
  825. #define MFT_RIGHTJUSTIFY    MF_RIGHTJUSTIFY
  826.  
  827. /* Menu flags for Add/Check/EnableMenuItem() */
  828. #define MFS_GRAYED          0x00000003L
  829. #define MFS_DISABLED        MFS_GRAYED
  830. #define MFS_CHECKED         MF_CHECKED
  831. #define MFS_HILITE          MF_HILITE
  832. #define MFS_ENABLED         MF_ENABLED
  833. #define MFS_UNCHECKED       MF_UNCHECKED
  834. #define MFS_UNHILITE        MF_UNHILITE
  835. #define MFS_DEFAULT         MF_DEFAULT
  836. #if(WINVER >= 0x0500)
  837. #define MFS_MASK            0x0000108BL
  838. #define MFS_HOTTRACKDRAWN   0x10000000L
  839. #define MFS_CACHEDBMP       0x20000000L
  840. #define MFS_BOTTOMGAPDROP   0x40000000L
  841. #define MFS_TOPGAPDROP      0x80000000L
  842. #define MFS_GAPDROP         0xC0000000L
  843. #endif /* WINVER >= 0x0500 */
  844.  
  845. #endif /* WINVER >= 0x0400 */
  846.  
  847. #define MF_END             0x00000080L          
  848. /*
  849.  * System Menu Command Values
  850.  */
  851. #define SC_SIZE         0xF000
  852. #define SC_MOVE         0xF010
  853. #define SC_MINIMIZE     0xF020
  854. #define SC_MAXIMIZE     0xF030
  855. #define SC_NEXTWINDOW   0xF040
  856. #define SC_PREVWINDOW   0xF050
  857. #define SC_CLOSE        0xF060
  858. #define SC_VSCROLL      0xF070
  859. #define SC_HSCROLL      0xF080
  860. #define SC_MOUSEMENU    0xF090
  861. #define SC_KEYMENU      0xF100
  862. #define SC_ARRANGE      0xF110
  863. #define SC_RESTORE      0xF120
  864. #define SC_TASKLIST     0xF130
  865. #define SC_SCREENSAVE   0xF140
  866. #define SC_HOTKEY       0xF150
  867. #if(WINVER >= 0x0400)
  868. #define SC_DEFAULT      0xF160
  869. #define SC_MONITORPOWER 0xF170
  870. #define SC_CONTEXTHELP  0xF180
  871. #define SC_SEPARATOR    0xF00F
  872. #endif /* WINVER >= 0x0400 */
  873. /*
  874.  * Obsolete names
  875.  */
  876. #define SC_ICON         SC_MINIMIZE
  877. #define SC_ZOOM         SC_MAXIMIZE
  878.  
  879.  
  880. /*
  881.  * OEM Resource Ordinal Numbers
  882.  */
  883. #define OBM_CLOSE           32754
  884. #define OBM_UPARROW         32753
  885. #define OBM_DNARROW         32752
  886. #define OBM_RGARROW         32751
  887. #define OBM_LFARROW         32750
  888. #define OBM_REDUCE          32749
  889. #define OBM_ZOOM            32748
  890. #define OBM_RESTORE         32747
  891. #define OBM_REDUCED         32746
  892. #define OBM_ZOOMD           32745
  893. #define OBM_RESTORED        32744
  894. #define OBM_UPARROWD        32743
  895. #define OBM_DNARROWD        32742
  896. #define OBM_RGARROWD        32741
  897. #define OBM_LFARROWD        32740
  898. #define OBM_MNARROW         32739
  899. #define OBM_COMBO           32738
  900. #define OBM_UPARROWI        32737
  901. #define OBM_DNARROWI        32736
  902. #define OBM_RGARROWI        32735
  903. #define OBM_LFARROWI        32734
  904.  
  905. #define OBM_OLD_CLOSE       32767
  906. #define OBM_SIZE            32766
  907. #define OBM_OLD_UPARROW     32765
  908. #define OBM_OLD_DNARROW     32764
  909. #define OBM_OLD_RGARROW     32763
  910. #define OBM_OLD_LFARROW     32762
  911. #define OBM_BTSIZE          32761
  912. #define OBM_CHECK           32760
  913. #define OBM_CHECKBOXES      32759
  914. #define OBM_BTNCORNERS      32758
  915. #define OBM_OLD_REDUCE      32757
  916. #define OBM_OLD_ZOOM        32756
  917. #define OBM_OLD_RESTORE     32755
  918.  
  919.  
  920. #define OCR_NORMAL          32512
  921. #define OCR_IBEAM           32513
  922. #define OCR_WAIT            32514
  923. #define OCR_CROSS           32515
  924. #define OCR_UP              32516
  925. #define OCR_SIZE            32640   /* OBSOLETE: use OCR_SIZEALL */
  926. #define OCR_ICON            32641   /* OBSOLETE: use OCR_NORMAL */
  927. #define OCR_SIZENWSE        32642
  928. #define OCR_SIZENESW        32643
  929. #define OCR_SIZEWE          32644
  930. #define OCR_SIZENS          32645
  931. #define OCR_SIZEALL         32646
  932. #define OCR_ICOCUR          32647   /* OBSOLETE: use OIC_WINLOGO */
  933. #define OCR_NO              32648
  934. #if(WINVER >= 0x0500)
  935. #define OCR_HAND            32649
  936. #endif /* WINVER >= 0x0500 */
  937. #if(WINVER >= 0x0400)
  938. #define OCR_APPSTARTING     32650
  939. #endif /* WINVER >= 0x0400 */
  940.  
  941. #define OIC_SAMPLE          32512
  942. #define OIC_HAND            32513
  943. #define OIC_QUES            32514
  944. #define OIC_BANG            32515
  945. #define OIC_NOTE            32516
  946. #if(WINVER >= 0x0400)
  947. #define OIC_WINLOGO         32517
  948. #define OIC_WARNING         OIC_BANG
  949. #define OIC_ERROR           OIC_HAND
  950. #define OIC_INFORMATION     OIC_NOTE
  951. #endif /* WINVER >= 0x0400 */
  952.  
  953.  
  954. /*
  955.  * Standard Icon IDs
  956.  */
  957. #ifdef RC_INVOKED
  958. #define IDI_APPLICATION     32512
  959. #define IDI_HAND            32513
  960. #define IDI_QUESTION        32514
  961. #define IDI_EXCLAMATION     32515
  962. #define IDI_ASTERISK        32516
  963. #if(WINVER >= 0x0400)
  964. #define IDI_WINLOGO         32517
  965. #endif /* WINVER >= 0x0400 */
  966. #else
  967. #define IDI_APPLICATION     MAKEINTRESOURCE(32512)
  968. #define IDI_HAND            MAKEINTRESOURCE(32513)
  969. #define IDI_QUESTION        MAKEINTRESOURCE(32514)
  970. #define IDI_EXCLAMATION     MAKEINTRESOURCE(32515)
  971. #define IDI_ASTERISK        MAKEINTRESOURCE(32516)
  972. #if(WINVER >= 0x0400)
  973. #define IDI_WINLOGO         MAKEINTRESOURCE(32517)
  974. #endif /* WINVER >= 0x0400 */
  975. #endif /* RC_INVOKED */
  976.  
  977. #if(WINVER >= 0x0400)
  978. #define IDI_WARNING     IDI_EXCLAMATION
  979. #define IDI_ERROR       IDI_HAND
  980. #define IDI_INFORMATION IDI_ASTERISK
  981. #endif /* WINVER >= 0x0400 */
  982.  
  983.  
  984. /*
  985.  * Dialog Box Command IDs
  986.  */
  987. #define IDOK                1
  988. #define IDCANCEL            2
  989. #define IDABORT             3
  990. #define IDRETRY             4
  991. #define IDIGNORE            5
  992. #define IDYES               6
  993. #define IDNO                7
  994. #if(WINVER >= 0x0400)
  995. #define IDCLOSE         8
  996. #define IDHELP          9
  997. #endif /* WINVER >= 0x0400 */
  998.  
  999.  
  1000. /*
  1001.  * Edit Control Styles
  1002.  */
  1003. #define ES_LEFT             0x0000L
  1004. #define ES_CENTER           0x0001L
  1005. #define ES_RIGHT            0x0002L
  1006. #define ES_MULTILINE        0x0004L
  1007. #define ES_UPPERCASE        0x0008L
  1008. #define ES_LOWERCASE        0x0010L
  1009. #define ES_PASSWORD         0x0020L
  1010. #define ES_AUTOVSCROLL      0x0040L
  1011. #define ES_AUTOHSCROLL      0x0080L
  1012. #define ES_NOHIDESEL        0x0100L
  1013. #define ES_OEMCONVERT       0x0400L
  1014. #define ES_READONLY         0x0800L
  1015. #define ES_WANTRETURN       0x1000L
  1016. #if(WINVER >= 0x0400)
  1017. #define ES_NUMBER           0x2000L
  1018. #endif /* WINVER >= 0x0400 */
  1019.  
  1020.  
  1021. /*
  1022.  * Edit Control Messages
  1023.  */
  1024. #define EM_GETSEL               0x00B0
  1025. #define EM_SETSEL               0x00B1
  1026. #define EM_GETRECT              0x00B2
  1027. #define EM_SETRECT              0x00B3
  1028. #define EM_SETRECTNP            0x00B4
  1029. #define EM_SCROLL               0x00B5
  1030. #define EM_LINESCROLL           0x00B6
  1031. #define EM_SCROLLCARET          0x00B7
  1032. #define EM_GETMODIFY            0x00B8
  1033. #define EM_SETMODIFY            0x00B9
  1034. #define EM_GETLINECOUNT         0x00BA
  1035. #define EM_LINEINDEX            0x00BB
  1036. #define EM_SETHANDLE            0x00BC
  1037. #define EM_GETHANDLE            0x00BD
  1038. #define EM_GETTHUMB             0x00BE
  1039. #define EM_LINELENGTH           0x00C1
  1040. #define EM_REPLACESEL           0x00C2
  1041. #define EM_GETLINE              0x00C4
  1042. #define EM_LIMITTEXT            0x00C5
  1043. #define EM_CANUNDO              0x00C6
  1044. #define EM_UNDO                 0x00C7
  1045. #define EM_FMTLINES             0x00C8
  1046. #define EM_LINEFROMCHAR         0x00C9
  1047. #define EM_SETTABSTOPS          0x00CB
  1048. #define EM_SETPASSWORDCHAR      0x00CC
  1049. #define EM_EMPTYUNDOBUFFER      0x00CD
  1050. #define EM_GETFIRSTVISIBLELINE  0x00CE
  1051. #define EM_SETREADONLY          0x00CF
  1052. #define EM_SETWORDBREAKPROC     0x00D0
  1053. #define EM_GETWORDBREAKPROC     0x00D1
  1054. #define EM_GETPASSWORDCHAR      0x00D2
  1055. #if(WINVER >= 0x0400)
  1056. #define EM_SETMARGINS           0x00D3
  1057. #define EM_GETMARGINS           0x00D4
  1058. #define EM_SETLIMITTEXT         EM_LIMITTEXT   /* ;win40 Name change */
  1059. #define EM_GETLIMITTEXT         0x00D5
  1060. #define EM_POSFROMCHAR          0x00D6
  1061. #define EM_CHARFROMPOS          0x00D7
  1062. #endif /* WINVER >= 0x0400 */
  1063.  
  1064. #if(WINVER >= 0x0500)
  1065. #define EM_SETIMESTATUS         0x00D8
  1066. #define EM_GETIMESTATUS         0x00D9
  1067. #endif /* WINVER >= 0x0500 */
  1068.  
  1069.  
  1070.  
  1071. /*
  1072.  * Button Control Styles
  1073.  */
  1074. #define BS_PUSHBUTTON       0x00000000L
  1075. #define BS_DEFPUSHBUTTON    0x00000001L
  1076. #define BS_CHECKBOX         0x00000002L
  1077. #define BS_AUTOCHECKBOX     0x00000003L
  1078. #define BS_RADIOBUTTON      0x00000004L
  1079. #define BS_3STATE           0x00000005L
  1080. #define BS_AUTO3STATE       0x00000006L
  1081. #define BS_GROUPBOX         0x00000007L
  1082. #define BS_USERBUTTON       0x00000008L
  1083. #define BS_AUTORADIOBUTTON  0x00000009L
  1084. #define BS_OWNERDRAW        0x0000000BL
  1085. #define BS_LEFTTEXT         0x00000020L
  1086. #if(WINVER >= 0x0400)
  1087. #define BS_TEXT             0x00000000L
  1088. #define BS_ICON             0x00000040L
  1089. #define BS_BITMAP           0x00000080L
  1090. #define BS_LEFT             0x00000100L
  1091. #define BS_RIGHT            0x00000200L
  1092. #define BS_CENTER           0x00000300L
  1093. #define BS_TOP              0x00000400L
  1094. #define BS_BOTTOM           0x00000800L
  1095. #define BS_VCENTER          0x00000C00L
  1096. #define BS_PUSHLIKE         0x00001000L
  1097. #define BS_MULTILINE        0x00002000L
  1098. #define BS_NOTIFY           0x00004000L
  1099. #define BS_FLAT             0x00008000L
  1100. #define BS_RIGHTBUTTON      BS_LEFTTEXT
  1101. #endif /* WINVER >= 0x0400 */
  1102.  
  1103. /*
  1104.  * User Button Notification Codes
  1105.  */
  1106. #define BN_CLICKED          0
  1107. #define BN_PAINT            1
  1108. #define BN_HILITE           2
  1109. #define BN_UNHILITE         3
  1110. #define BN_DISABLE          4
  1111. #define BN_DOUBLECLICKED    5
  1112. #if(WINVER >= 0x0400)
  1113. #define BN_PUSHED           BN_HILITE
  1114. #define BN_UNPUSHED         BN_UNHILITE
  1115. #define BN_DBLCLK           BN_DOUBLECLICKED
  1116. #define BN_SETFOCUS         6
  1117. #define BN_KILLFOCUS        7
  1118. #endif /* WINVER >= 0x0400 */
  1119.  
  1120. /*
  1121.  * Button Control Messages
  1122.  */
  1123. #define BM_GETCHECK        0x00F0
  1124. #define BM_SETCHECK        0x00F1
  1125. #define BM_GETSTATE        0x00F2
  1126. #define BM_SETSTATE        0x00F3
  1127. #define BM_SETSTYLE        0x00F4
  1128. #if(WINVER >= 0x0400)
  1129. #define BM_CLICK           0x00F5
  1130. #define BM_GETIMAGE        0x00F6
  1131. #define BM_SETIMAGE        0x00F7
  1132.  
  1133. #define BST_UNCHECKED      0x0000
  1134. #define BST_CHECKED        0x0001
  1135. #define BST_INDETERMINATE  0x0002
  1136. #define BST_PUSHED         0x0004
  1137. #define BST_FOCUS          0x0008
  1138. #endif /* WINVER >= 0x0400 */
  1139.  
  1140. /*
  1141.  * Static Control Constants
  1142.  */
  1143. #define SS_LEFT             0x00000000L
  1144. #define SS_CENTER           0x00000001L
  1145. #define SS_RIGHT            0x00000002L
  1146. #define SS_ICON             0x00000003L
  1147. #define SS_BLACKRECT        0x00000004L
  1148. #define SS_GRAYRECT         0x00000005L
  1149. #define SS_WHITERECT        0x00000006L
  1150. #define SS_BLACKFRAME       0x00000007L
  1151. #define SS_GRAYFRAME        0x00000008L
  1152. #define SS_WHITEFRAME       0x00000009L
  1153. #define SS_USERITEM         0x0000000AL
  1154. #define SS_SIMPLE           0x0000000BL
  1155. #define SS_LEFTNOWORDWRAP   0x0000000CL
  1156. #if(WINVER >= 0x0400)
  1157. #define SS_OWNERDRAW        0x0000000DL
  1158. #define SS_BITMAP           0x0000000EL
  1159. #define SS_ENHMETAFILE      0x0000000FL
  1160. #define SS_ETCHEDHORZ       0x00000010L
  1161. #define SS_ETCHEDVERT       0x00000011L
  1162. #define SS_ETCHEDFRAME      0x00000012L
  1163. #define SS_TYPEMASK         0x0000001FL
  1164. #endif /* WINVER >= 0x0400 */
  1165. #define SS_NOPREFIX         0x00000080L /* Don't do "&" character translation */
  1166. #if(WINVER >= 0x0400)
  1167. #define SS_NOTIFY           0x00000100L
  1168. #define SS_CENTERIMAGE      0x00000200L
  1169. #define SS_RIGHTJUST        0x00000400L
  1170. #define SS_REALSIZEIMAGE    0x00000800L
  1171. #define SS_SUNKEN           0x00001000L
  1172. #define SS_ENDELLIPSIS      0x00004000L
  1173. #define SS_PATHELLIPSIS     0x00008000L
  1174. #define SS_WORDELLIPSIS     0x0000C000L
  1175. #define SS_ELLIPSISMASK     0x0000C000L
  1176. #endif /* WINVER >= 0x0400 */
  1177.  
  1178.  
  1179. /*
  1180.  * Dialog Styles
  1181.  */
  1182. #define DS_ABSALIGN         0x01L
  1183. #define DS_SYSMODAL         0x02L
  1184. #define DS_LOCALEDIT        0x20L   /* Edit items get Local storage. */
  1185. #define DS_SETFONT          0x40L   /* User specified font for Dlg controls */
  1186. #define DS_MODALFRAME       0x80L   /* Can be combined with WS_CAPTION  */
  1187. #define DS_NOIDLEMSG        0x100L  /* WM_ENTERIDLE message will not be sent */
  1188. #define DS_SETFOREGROUND    0x200L  /* not in win3.1 */
  1189.  
  1190.  
  1191. #if(WINVER >= 0x0400)
  1192. #define DS_3DLOOK           0x0004L
  1193. #define DS_FIXEDSYS         0x0008L
  1194. #define DS_NOFAILCREATE     0x0010L
  1195. #define DS_CONTROL          0x0400L
  1196. #define DS_CENTER           0x0800L
  1197. #define DS_CENTERMOUSE      0x1000L
  1198. #define DS_CONTEXTHELP      0x2000L
  1199.  
  1200. #endif /* WINVER >= 0x0400 */
  1201.  
  1202.  
  1203. /*
  1204.  * Listbox Styles
  1205.  */
  1206. #define LBS_NOTIFY            0x0001L
  1207. #define LBS_SORT              0x0002L
  1208. #define LBS_NOREDRAW          0x0004L
  1209. #define LBS_MULTIPLESEL       0x0008L
  1210. #define LBS_OWNERDRAWFIXED    0x0010L
  1211. #define LBS_OWNERDRAWVARIABLE 0x0020L
  1212. #define LBS_HASSTRINGS        0x0040L
  1213. #define LBS_USETABSTOPS       0x0080L
  1214. #define LBS_NOINTEGRALHEIGHT  0x0100L
  1215. #define LBS_MULTICOLUMN       0x0200L
  1216. #define LBS_WANTKEYBOARDINPUT 0x0400L
  1217. #define LBS_EXTENDEDSEL       0x0800L
  1218. #define LBS_DISABLENOSCROLL   0x1000L
  1219. #define LBS_NODATA            0x2000L
  1220. #if(WINVER >= 0x0400)
  1221. #define LBS_NOSEL             0x4000L
  1222. #endif /* WINVER >= 0x0400 */
  1223. #define LBS_STANDARD          (LBS_NOTIFY | LBS_SORT | WS_VSCROLL | WS_BORDER)
  1224.  
  1225.  
  1226. /*
  1227.  * Combo Box styles
  1228.  */
  1229. #define CBS_SIMPLE            0x0001L
  1230. #define CBS_DROPDOWN          0x0002L
  1231. #define CBS_DROPDOWNLIST      0x0003L
  1232. #define CBS_OWNERDRAWFIXED    0x0010L
  1233. #define CBS_OWNERDRAWVARIABLE 0x0020L
  1234. #define CBS_AUTOHSCROLL       0x0040L
  1235. #define CBS_OEMCONVERT        0x0080L
  1236. #define CBS_SORT              0x0100L
  1237. #define CBS_HASSTRINGS        0x0200L
  1238. #define CBS_NOINTEGRALHEIGHT  0x0400L
  1239. #define CBS_DISABLENOSCROLL   0x0800L
  1240. #if(WINVER >= 0x0400)
  1241. #define CBS_UPPERCASE           0x2000L
  1242. #define CBS_LOWERCASE           0x4000L
  1243. #endif /* WINVER >= 0x0400 */
  1244.  
  1245.  
  1246. /*
  1247.  * Scroll Bar Styles
  1248.  */
  1249. #define SBS_HORZ                    0x0000L
  1250. #define SBS_VERT                    0x0001L
  1251. #define SBS_TOPALIGN                0x0002L
  1252. #define SBS_LEFTALIGN               0x0002L
  1253. #define SBS_BOTTOMALIGN             0x0004L
  1254. #define SBS_RIGHTALIGN              0x0004L
  1255. #define SBS_SIZEBOXTOPLEFTALIGN     0x0002L
  1256. #define SBS_SIZEBOXBOTTOMRIGHTALIGN 0x0004L
  1257. #define SBS_SIZEBOX                 0x0008L
  1258. #if(WINVER >= 0x0400)
  1259. #define SBS_SIZEGRIP                0x0010L
  1260. #endif /* WINVER >= 0x0400 */
  1261.  
  1262.  
  1263. /*
  1264.  * Commands to pass to WinHelp()
  1265.  */
  1266. #define HELP_CONTEXT      0x0001L  /* Display topic in ulTopic */
  1267. #define HELP_QUIT         0x0002L  /* Terminate help */
  1268. #define HELP_INDEX        0x0003L  /* Display index */
  1269. #define HELP_CONTENTS     0x0003L
  1270. #define HELP_HELPONHELP   0x0004L  /* Display help on using help */
  1271. #define HELP_SETINDEX     0x0005L  /* Set current Index for multi index help */
  1272. #define HELP_SETCONTENTS  0x0005L
  1273. #define HELP_CONTEXTPOPUP 0x0008L
  1274. #define HELP_FORCEFILE    0x0009L
  1275. #define HELP_KEY          0x0101L  /* Display topic for keyword in offabData */
  1276. #define HELP_COMMAND      0x0102L
  1277. #define HELP_PARTIALKEY   0x0105L
  1278. #define HELP_MULTIKEY     0x0201L
  1279. #define HELP_SETWINPOS    0x0203L
  1280. #if(WINVER >= 0x0400)
  1281. #define HELP_CONTEXTMENU  0x000a
  1282. #define HELP_FINDER       0x000b
  1283. #define HELP_WM_HELP      0x000c
  1284. #define HELP_SETPOPUP_POS 0x000d
  1285.  
  1286. #define HELP_TCARD              0x8000
  1287. #define HELP_TCARD_DATA         0x0010
  1288. #define HELP_TCARD_OTHER_CALLER 0x0011
  1289.  
  1290. // These are in winhelp.h in Win95.
  1291. #define IDH_NO_HELP                     28440
  1292. #define IDH_MISSING_CONTEXT             28441 // Control doesn't have matching help context
  1293. #define IDH_GENERIC_HELP_BUTTON         28442 // Property sheet help button
  1294. #define IDH_OK                          28443
  1295. #define IDH_CANCEL                      28444
  1296. #define IDH_HELP                        28445
  1297.  
  1298. #endif /* WINVER >= 0x0400 */
  1299.  
  1300. #pragma option pop /*P_O_Pop*/
  1301.