Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1594 lines
52 KiB

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