home *** CD-ROM | disk | FTP | other *** search
/ H4CK3R 14 / hacker14.iso / programacao / cwin / c.exe / $INSTDIR / include / commctrl.h < prev    next >
Encoding:
C/C++ Source or Header  |  2003-12-15  |  90.6 KB  |  2,838 lines

  1. #ifndef _COMMCTRL_H
  2. #define _COMMCTRL_H
  3. #if __GNUC__ >=3
  4. #pragma GCC system_header
  5. #endif
  6.  
  7. #include <prsht.h>
  8. #ifdef __cplusplus
  9. extern "C" {
  10. #endif
  11. #ifndef _WIN32_IE
  12. /* define _WIN32_IE if you really want it */
  13. #if 0
  14. #define _WIN32_IE    0x0300
  15. #endif
  16. #endif
  17.  
  18. #ifndef SNDMSG
  19. #ifdef __cplusplus
  20. #define SNDMSG ::SendMessage
  21. #else
  22. #define SNDMSG SendMessage
  23. #endif
  24. #endif /* ifndef SNDMSG */
  25.  
  26. #define DRAGLISTMSGSTRING TEXT("commctrl_DragListMsg")
  27. #define ANIMATE_CLASSW    L"SysAnimate32"
  28. #define ANIMATE_CLASSA    "SysAnimate32"
  29. #define HOTKEY_CLASSA    "msctls_hotkey32"
  30. #define HOTKEY_CLASSW    L"msctls_hotkey32"
  31. #define PROGRESS_CLASSA    "msctls_progress32"
  32. #define PROGRESS_CLASSW    L"msctls_progress32"
  33. #define STATUSCLASSNAMEA    "msctls_statusbar32"
  34. #define STATUSCLASSNAMEW    L"msctls_statusbar32"
  35. #define TOOLBARCLASSNAMEW    L"ToolbarWindow32"
  36. #define TOOLBARCLASSNAMEA    "ToolbarWindow32"
  37. #define TOOLTIPS_CLASSW    L"tooltips_class32"
  38. #define TOOLTIPS_CLASSA    "tooltips_class32"
  39. #define TRACKBAR_CLASSA    "msctls_trackbar32"
  40. #define TRACKBAR_CLASSW    L"msctls_trackbar32"
  41. #define UPDOWN_CLASSA    "msctls_updown32"
  42. #define UPDOWN_CLASSW    L"msctls_updown32"
  43. #define WC_COMBOBOXEXW    L"ComboBoxEx32"
  44. #define WC_COMBOBOXEXA    "ComboBoxEx32"
  45. #define WC_IPADDRESSW    L"SysIPAddress32"
  46. #define WC_IPADDRESSA    "SysIPAddress32"
  47. #define WC_LISTVIEWA    "SysListView32"
  48. #define WC_LISTVIEWW    L"SysListView32"
  49. #define WC_TABCONTROLA    "SysTabControl32"
  50. #define WC_TABCONTROLW    L"SysTabControl32"
  51. #define WC_TREEVIEWA    "SysTreeView32"
  52. #define WC_TREEVIEWW    L"SysTreeView32"
  53. #define WC_HEADERA    "SysHeader32"
  54. #define WC_HEADERW     L"SysHeader32"
  55. #define DATETIMEPICK_CLASSW L"SysDateTimePick32"
  56. #define DATETIMEPICK_CLASSA "SysDateTimePick32"
  57. #define MONTHCAL_CLASSW L"SysMonthCal32"
  58. #define MONTHCAL_CLASSA "SysMonthCal32"
  59. #define REBARCLASSNAMEW L"ReBarWindow32"
  60. #define REBARCLASSNAMEA "ReBarWindow32"
  61. #define LVM_FIRST 0x1000
  62. #define TV_FIRST 0x1100
  63. #define HDM_FIRST 0x1200
  64. #define ACM_OPENA    (WM_USER+100)
  65. #define ACM_PLAY    (WM_USER+101)
  66. #define ACM_STOP    (WM_USER+102)
  67. #define ACM_OPENW    (WM_USER+103)
  68. #define ACN_START    1
  69. #define ACN_STOP    2
  70. #define CBEIF_TEXT    0x00000001
  71. #define CBEIF_IMAGE    0x00000002
  72. #define CBEIF_SELECTEDIMAGE    0x00000004
  73. #define CBEIF_OVERLAY    0x00000008
  74. #define CBEIF_INDENT    0x00000010
  75. #define CBEIF_LPARAM    0x00000020
  76. #define CBEIF_DI_SETITEM    0x10000000
  77. #define CBEN_INSERTITEM    (CBEN_FIRST - 1)
  78. #define CBEN_DELETEITEM    (CBEN_FIRST - 2)
  79. #define CBEN_BEGINEDIT    (CBEN_FIRST - 4)
  80. #define CBEN_ENDEDITA    (CBEN_FIRST - 5)
  81. #define CBEN_ENDEDITW    (CBEN_FIRST - 6)
  82. #define CBENF_KILLFOCUS    1
  83. #define CBENF_RETURN    2
  84. #define CBENF_ESCAPE    3
  85. #define CBENF_DROPDOWN    4
  86. #define CBEMAXSTRLEN 260
  87. #define DL_BEGINDRAG    1157
  88. #define DL_CANCELDRAG    1160
  89. #define DL_DRAGGING    1158
  90. #define DL_DROPPED    1159
  91. #define DL_CURSORSET    0
  92. #define DL_STOPCURSOR    1
  93. #define DL_COPYCURSOR    2
  94. #define DL_MOVECURSOR    3
  95. #define CCS_TOP    1
  96. #define CCS_NOMOVEY    2
  97. #define CCS_BOTTOM    3
  98. #define CCS_NORESIZE    4
  99. #define CCS_NOPARENTALIGN    8
  100. #define CCS_ADJUSTABLE    32
  101. #define CCS_NODIVIDER    64
  102. #if (_WIN32_IE >= 0x0300)
  103. #define CCS_VERT 128
  104. #define CCS_LEFT 129
  105. #define CCS_NOMOVEX 130
  106. #define CCS_RIGHT 131
  107. #endif
  108. #define ACS_CENTER    0x0001
  109. #define ACS_TRANSPARENT    0x0002
  110. #define ACS_AUTOPLAY    0x0004
  111. #define ACS_TIMER    0x0008
  112. #define PGS_VERT    0x00000000
  113. #define PGS_HORZ    0x00000001
  114. #define PGS_AUTOSCROLL    0x00000002
  115. #define PGS_DRAGNDROP    0x00000004
  116. #define CMB_MASKED    2
  117. #define MINSYSCOMMAND    SC_SIZE
  118. #define SBT_OWNERDRAW    0x1000
  119. #define SBT_NOBORDERS    256
  120. #define SBT_POPOUT    512
  121. #define SBT_RTLREADING    1024
  122. #define SB_SETTEXTA    (WM_USER+1)
  123. #define SB_SETTEXTW    (WM_USER+11)
  124. #define SB_GETTEXTA    (WM_USER+2)
  125. #define SB_GETTEXTW    (WM_USER+13)
  126. #define SB_GETTEXTLENGTHA    (WM_USER+3)
  127. #define SB_GETTEXTLENGTHW    (WM_USER+12)
  128. #define SB_SETPARTS    (WM_USER+4)
  129. #define SB_GETPARTS    (WM_USER+6)
  130. #define SB_GETBORDERS    (WM_USER+7)
  131. #define SB_SETMINHEIGHT    (WM_USER+8)
  132. #define SB_SIMPLE    (WM_USER+9)
  133. #define SB_GETRECT    (WM_USER+10)
  134. #define MSGF_COMMCTRL_BEGINDRAG    0x4200
  135. #define MSGF_COMMCTRL_SIZEHEADER    0x4201
  136. #define MSGF_COMMCTRL_DRAGSELECT    0x4202
  137. #define MSGF_COMMCTRL_TOOLBARCUST    0x4203
  138. #define ILC_COLOR 0
  139. #define ILC_COLOR4 4
  140. #define ILC_COLOR8 8
  141. #define ILC_COLOR16 16
  142. #define ILC_COLOR24 24
  143. #define ILC_COLOR32 32
  144. #define ILC_COLORDDB 254
  145. #define ILC_MASK 1
  146. #define ILC_PALETTE 2048
  147. #define ILD_BLEND25 2
  148. #define ILD_BLEND50 4
  149. #define ILD_SELECTED 4
  150. #define ILD_BLEND 4
  151. #define ILD_FOCUS 2
  152. #define ILD_MASK 16
  153. #define ILD_NORMAL 0
  154. #define ILD_TRANSPARENT 1
  155. #define HDS_HORZ    0
  156. #define HDS_BUTTONS    2
  157. #define HDS_HIDDEN    8
  158. #define NM_FIRST    0
  159. #define NM_LAST    ((UINT)-99)
  160. #define LVN_FIRST    ((UINT)-100)
  161. #define LVN_LAST    ((UINT)-199)
  162. #define HDN_FIRST    ((UINT)-300)
  163. #define HDN_LAST    ((UINT)-399)
  164. #define TVN_FIRST    ((UINT)-400)
  165. #define TVN_LAST    ((UINT)-499)
  166. #define TTN_FIRST    ((UINT)-520)
  167. #define TTN_LAST    ((UINT)-549)
  168. #define TCN_FIRST    ((UINT)-550)
  169. #define TCN_LAST    ((UINT)-580)
  170. #ifndef CDN_FIRST
  171. #define CDN_FIRST    ((UINT)-601) /* also in commdlg.h */
  172. #define CDN_LAST    ((UINT)-699)
  173. #endif
  174. #define TBN_FIRST    ((UINT)-700)
  175. #define TBN_LAST    ((UINT)-720)
  176. #define UDN_FIRST    ((UINT)-721)
  177. #define UDN_LAST    ((UINT)-740)
  178. #if (_WIN32_IE >= 0x0300)
  179. #define RBN_FIRST    ((UINT)-831)
  180. #define RBN_LAST    ((UINT)-859)
  181. #define MCN_FIRST    ((UINT)-750)
  182. #define MCN_LAST    ((UINT)-759)
  183. #define DTN_FIRST    ((UINT)-760)
  184. #define DTN_LAST    ((UINT)-799)
  185. #define CBEN_FIRST    ((UINT)-800)
  186. #define CBEN_LAST    ((UINT)-830)
  187. #endif /* _WIN32_IE */
  188. #if (_WIN32_IE >= 0x0400)
  189. #define IPN_FIRST    (-860)
  190. #define IPN_LAST    (-879)
  191. #define IPN_FIELDCHANGED    (IPN_FIRST-0)
  192. #endif /* _WIN32_IE >= 0x0400 */
  193. #define HDI_WIDTH    1
  194. #define HDI_HEIGHT    1
  195. #define HDI_TEXT    2
  196. #define HDI_FORMAT    4
  197. #define HDI_LPARAM    8
  198. #define HDI_BITMAP    16
  199. #if (_WIN32_IE >= 0x0300)
  200. #define HDI_IMAGE    32
  201. #define HDI_DI_SETITEM    64
  202. #define HDI_ORDER    128
  203. #endif
  204. #define CBES_EX_NOEDITIMAGE    0x00000001
  205. #define CBES_EX_NOEDITIMAGEINDENT    0x00000002
  206. #define CBES_EX_PATHWORDBREAKPROC    0x00000004
  207. #if (_WIN32_IE >= 0x0400)
  208. #define CBES_EX_NOSIZELIMIT    0x00000008
  209. #define CBES_EX_CASESENSITIVE    0x00000010
  210. #define CBEN_GETDISPINFOA    (CBEN_FIRST - 0)
  211. #define CBEN_GETDISPINFOW    (CBEN_FIRST - 7)
  212. #define CBEN_DRAGBEGINA    (CBEN_FIRST - 8)
  213. #define CBEN_DRAGBEGINW    (CBEN_FIRST - 9)
  214. #endif /* _WIN32_IE >= 0x0400 */
  215. #if (_WIN32_IE >= 0x0500)
  216. #define HDI_FILTER    256
  217. #endif
  218. #define HDF_LEFT    0
  219. #define HDF_RIGHT    1
  220. #define HDF_CENTER    2
  221. #define HDF_JUSTIFYMASK3
  222. #define HDF_RTLREADING    4
  223. #define HDF_OWNERDRAW    0x8000
  224. #define HDF_STRING    0x4000
  225. #define HDF_BITMAP    0x2000
  226. #if (_WIN32_IE >= 0x0300)
  227. #define HDF_BITMAP_ON_RIGHT    0x1000
  228. #define HDF_IMAGE    0x0800
  229. #endif
  230. #define HDM_GETITEMCOUNT    HDM_FIRST
  231. #define HDM_INSERTITEMA    (HDM_FIRST+1)
  232. #define HDM_INSERTITEMW    (HDM_FIRST+10)
  233. #define HDM_DELETEITEM    (HDM_FIRST+2)
  234. #define HDM_GETITEMA    (HDM_FIRST+3)
  235. #define HDM_GETITEMW    (HDM_FIRST+11)
  236. #define HDM_SETITEMA    (HDM_FIRST+4)
  237. #define HDM_SETITEMW    (HDM_FIRST+12)
  238. #define HDM_LAYOUT    (HDM_FIRST+5)
  239. #if (_WIN32_IE >= 0x0300)
  240. #define HDM_GETITEMRECT (HDM_FIRST+7)
  241. #define HDM_GETORDERARRAY    (HDM_FIRST+17)
  242. #define HDM_SETORDERARRAY    (HDM_FIRST+18)
  243. #endif
  244. #define HHT_NOWHERE    1
  245. #define HHT_ONHEADER    2
  246. #define HHT_ONDIVIDER    4
  247. #define HHT_ONDIVOPEN    8
  248. #define HHT_ABOVE    256
  249. #define HHT_BELOW    512
  250. #define HHT_TORIGHT    1024
  251. #define HHT_TOLEFT    2048
  252. #define HDM_HITTEST    (HDM_FIRST+6)
  253. #define HDN_ITEMCHANGINGA    (HDN_FIRST-0)
  254. #define HDN_ITEMCHANGINGW    (HDN_FIRST-20)
  255. #define HDN_ITEMCHANGEDA    (HDN_FIRST-1)
  256. #define HDN_ITEMCHANGEDW    (HDN_FIRST-21)
  257. #define HDN_ITEMCLICKA    (HDN_FIRST-2)
  258. #define HDN_ITEMCLICKW    (HDN_FIRST-22)
  259. #define HDN_ITEMDBLCLICKA    (HDN_FIRST-3)
  260. #define HDN_ITEMDBLCLICKW    (HDN_FIRST-23)
  261. #define HDN_DIVIDERDBLCLICKA    (HDN_FIRST-5)
  262. #define HDN_DIVIDERDBLCLICKW    (HDN_FIRST-25)
  263. #define HDN_BEGINTRACKA    (HDN_FIRST-6)
  264. #define HDN_BEGINTRACKW    (HDN_FIRST-26)
  265. #define HDN_ENDTRACKA    (HDN_FIRST-7)
  266. #define HDN_ENDTRACKW    (HDN_FIRST-27)
  267. #define HDN_TRACKA    (HDN_FIRST-8)
  268. #define HDN_TRACKW    (HDN_FIRST-28)
  269. #if _WIN32_IE >= 0x0300
  270. #define HDN_ENDDRAG    (HDN_FIRST-11)
  271. #define HDN_BEGINDRAG    (HDN_FIRST-10)
  272. #define HDN_GETDISPINFOA (HDN_FIRST-9)
  273. #define HDN_GETDISPINFOW (HDN_FIRST-29)
  274. #endif
  275. #define IPM_CLEARADDRESS    (WM_USER+100)
  276. #define IPM_SETADDRESS    (WM_USER+101)
  277. #define IPM_GETADDRESS    (WM_USER+102)
  278. #define IPM_SETRANGE    (WM_USER+103)
  279. #define IPM_SETFOCUS    (WM_USER+104)
  280. #define IPM_ISBLANK    (WM_USER+105)
  281. #define CMB_MASKED 2
  282. #define TBSTATE_CHECKED    1
  283. #define TBSTATE_PRESSED    2
  284. #define TBSTATE_ENABLED    4
  285. #define TBSTATE_HIDDEN    8
  286. #define TBSTATE_INDETERMINATE    16
  287. #define TBSTATE_WRAP    32
  288. #define TBSTYLE_BUTTON    0
  289. #define TBSTYLE_SEP    1
  290. #define TBSTYLE_CHECK    2
  291. #define TBSTYLE_GROUP    4
  292. #define TBSTYLE_CHECKGROUP    (TBSTYLE_GROUP|TBSTYLE_CHECK)
  293. #if (_WIN32_IE >= 0x0300)
  294. #define TBSTYLE_DROPDOWN    8
  295. #endif
  296. #if (_WIN32_IE >= 0x0400)
  297. #define TBSTYLE_AUTOSIZE    16
  298. #define TBSTYLE_NOPREFIX    32
  299. #endif
  300. #define TBSTYLE_TOOLTIPS    256
  301. #define TBSTYLE_WRAPABLE    512
  302. #define TBSTYLE_ALTDRAG    1024
  303. #if (_WIN32_IE >= 0x0300)
  304. #define TBSTYLE_FLAT 2048
  305. #define TBSTYLE_LIST 4096
  306. #define TBSTYLE_CUSTOMERASE 8192
  307. #endif
  308. #if (_WIN32_IE >= 0x0400)
  309. #define TBSTYLE_REGISTERDROP    0x4000
  310. #define TBSTYLE_TRANSPARENT    0x8000
  311. #define TBSTYLE_EX_DRAWDDARROWS    0x00000001
  312. #endif /* _WIN32_IE >= 0x0400 */
  313. #define TB_ENABLEBUTTON    (WM_USER+1)
  314. #define TB_CHECKBUTTON    (WM_USER+2)
  315. #define TB_PRESSBUTTON    (WM_USER+3)
  316. #define TB_HIDEBUTTON    (WM_USER+4)
  317. #define TB_INDETERMINATE    (WM_USER+5)
  318. #define TB_ISBUTTONENABLED    (WM_USER+9)
  319. #define TB_ISBUTTONCHECKED    (WM_USER+10)
  320. #define TB_ISBUTTONPRESSED    (WM_USER+11)
  321. #define TB_ISBUTTONHIDDEN    (WM_USER+12)
  322. #define TB_ISBUTTONINDETERMINATE    (WM_USER+13)
  323. #define TB_SETSTATE    (WM_USER+17)
  324. #define TB_GETSTATE    (WM_USER+18)
  325. #define TB_ADDBITMAP    (WM_USER+19)
  326. #define TB_GETBUTTONSIZE    (WM_USER+58)
  327. #define HINST_COMMCTRL    ((HINSTANCE)-1)
  328. #define IDB_STD_SMALL_COLOR    0
  329. #define IDB_STD_LARGE_COLOR    1
  330. #define IDB_VIEW_SMALL_COLOR    4
  331. #define IDB_VIEW_LARGE_COLOR    5
  332. #define STD_CUT    0
  333. #define STD_COPY    1
  334. #define STD_PASTE    2
  335. #define STD_UNDO    3
  336. #define STD_REDOW    4
  337. #define STD_DELETE    5
  338. #define STD_FILENEW    6
  339. #define STD_FILEOPEN    7
  340. #define STD_FILESAVE    8
  341. #define STD_PRINTPRE    9
  342. #define STD_PROPERTIES    10
  343. #define STD_HELP    11
  344. #define STD_FIND    12
  345. #define STD_REPLACE    13
  346. #define STD_PRINT    14
  347. #define VIEW_LARGEICONS    0
  348. #define VIEW_SMALLICONS    1
  349. #define VIEW_LIST    2
  350. #define VIEW_DETAILS    3
  351. #define VIEW_SORTNAME    4
  352. #define VIEW_SORTSIZE    5
  353. #define VIEW_SORTDATE    6
  354. #define VIEW_SORTTYPE    7
  355. #define VIEW_PARENTFOLDER    8
  356. #define VIEW_NETCONNECT    9
  357. #define VIEW_NETDISCONNECT    10
  358. #define VIEW_NEWFOLDER    11
  359. #define TB_ADDBUTTONS    (WM_USER+20)
  360. #define TB_INSERTBUTTON    (WM_USER+21)
  361. #define TB_DELETEBUTTON    (WM_USER+22)
  362. #define TB_GETBUTTON    (WM_USER+23)
  363. #define TB_BUTTONCOUNT    (WM_USER+24)
  364. #define TB_COMMANDTOINDEX    (WM_USER+25)
  365. #define TB_SAVERESTOREA    (WM_USER+26)
  366. #define TB_SAVERESTOREW    (WM_USER+76)
  367. #define TB_CUSTOMIZE    (WM_USER+27)
  368. #define TB_ADDSTRINGA    (WM_USER+28)
  369. #define TB_ADDSTRINGW    (WM_USER+77)
  370. #define TB_GETITEMRECT    (WM_USER+29)
  371. #define TB_BUTTONSTRUCTSIZE    (WM_USER+30)
  372. #define TB_SETBUTTONSIZE    (WM_USER+31)
  373. #define TB_SETBITMAPSIZE    (WM_USER+32)
  374. #define TB_AUTOSIZE    (WM_USER+33)
  375. #define TB_GETTOOLTIPS    (WM_USER+35)
  376. #define TB_SETTOOLTIPS    (WM_USER+36)
  377. #define TB_SETPARENT    (WM_USER+37)
  378. #define TB_SETROWS    (WM_USER+39)
  379. #define TB_GETROWS    (WM_USER+40)
  380. #define TB_SETCMDID    (WM_USER+42)
  381. #define TB_CHANGEBITMAP    (WM_USER+43)
  382. #define TB_GETBITMAP    (WM_USER+44)
  383. #define TB_GETBUTTONTEXTA    (WM_USER+45)
  384. #define TB_GETBUTTONTEXTW    (WM_USER+75)
  385. #define TB_REPLACEBITMAP    (WM_USER+46)
  386. #define TBBF_LARGE 1
  387. #define TB_GETBITMAPFLAGS    (WM_USER+41)
  388. #if _WIN32_IE >= 0x400
  389. #define TB_SETBUTTONINFO    (WM_USER+66)
  390. #define TB_SETEXTENDEDSTYLE    (WM_USER+84)
  391. #define TB_GETEXTENDEDSTYLE    (WM_USER+85)
  392. #endif
  393. #define TBN_GETBUTTONINFOA    (TBN_FIRST-0)
  394. #define TBN_GETBUTTONINFOW    (TBN_FIRST-20)
  395. #define TBN_BEGINDRAG    (TBN_FIRST-1)
  396. #define TBN_ENDDRAG    (TBN_FIRST-2)
  397. #define TBN_BEGINADJUST    (TBN_FIRST-3)
  398. #define TBN_ENDADJUST    (TBN_FIRST-4)
  399. #define TBN_RESET    (TBN_FIRST-5)
  400. #define TBN_QUERYINSERT    (TBN_FIRST-6)
  401. #define TBN_QUERYDELETE    (TBN_FIRST-7)
  402. #define TBN_TOOLBARCHANGE    (TBN_FIRST-8)
  403. #define TBN_CUSTHELP    (TBN_FIRST-9)
  404. #define TTS_ALWAYSTIP    1
  405. #define TTS_NOPREFIX    2
  406. #if( _WIN32_IE >= 0x0500 )
  407. #define TTS_NOANIMATE    0x10
  408. #define TTS_NOFADE    0x20
  409. #define TTS_BALLOON    0x40
  410. #define TTS_CLOSE    0x80
  411. #endif /* _WIN32_IE >= 0x0500 */
  412. #define TTF_IDISHWND    1
  413. #define TTF_CENTERTIP    2
  414. #define TTF_RTLREADING    4
  415. #define TTF_SUBCLASS    16
  416. #define TTDT_AUTOMATIC    0
  417. #define TTDT_RESHOW    1
  418. #define TTDT_AUTOPOP    2
  419. #define TTDT_INITIAL    3
  420. #define TTM_ACTIVATE    (WM_USER+1)
  421. #define TTM_SETDELAYTIME    (WM_USER+3)
  422. #define TTM_ADDTOOLA    (WM_USER+4)
  423. #define TTM_ADDTOOLW    (WM_USER+50)
  424. #define TTM_DELTOOLA    (WM_USER+5)
  425. #define TTM_DELTOOLW    (WM_USER+51)
  426. #define TTM_NEWTOOLRECTA    (WM_USER+6)
  427. #define TTM_NEWTOOLRECTW    (WM_USER+52)
  428. #define TTM_RELAYEVENT    (WM_USER+7)
  429. #define TTM_GETTOOLINFOA    (WM_USER+8)
  430. #define TTM_GETTOOLINFOW    (WM_USER+53)
  431. #define TTM_SETTOOLINFOA    (WM_USER+9)
  432. #define TTM_SETTOOLINFOW    (WM_USER+54)
  433. #define TTM_HITTESTA    (WM_USER+10)
  434. #define TTM_HITTESTW    (WM_USER+55)
  435. #define TTM_GETTEXTA    (WM_USER+11)
  436. #define TTM_GETTEXTW    (WM_USER+56)
  437. #define TTM_UPDATETIPTEXTA    (WM_USER+12)
  438. #define TTM_UPDATETIPTEXTW    (WM_USER+57)
  439. #define TTM_GETTOOLCOUNT    (WM_USER +13)
  440. #define TTM_ENUMTOOLSA    (WM_USER+14)
  441. #define TTM_ENUMTOOLSW    (WM_USER+58)
  442. #define TTM_GETCURRENTTOOLA    (WM_USER+15)
  443. #define TTM_GETCURRENTTOOLW    (WM_USER+59)
  444. #define TTM_WINDOWFROMPOINT    (WM_USER+16)
  445. #if (_WIN32_IE >= 0x0300)
  446. #define TTM_TRACKACTIVATE      (WM_USER+17)  
  447. #define TTM_TRACKPOSITION      (WM_USER+18)  
  448. #define TTM_SETTIPBKCOLOR      (WM_USER+19)
  449. #define TTM_SETTIPTEXTCOLOR    (WM_USER+20)
  450. #define TTM_GETDELAYTIME       (WM_USER+21)
  451. #define TTM_GETTIPBKCOLOR      (WM_USER+22)
  452. #define TTM_GETTIPTEXTCOLOR    (WM_USER+23)
  453. #define TTM_SETMAXTIPWIDTH     (WM_USER+24)
  454. #define TTM_GETMAXTIPWIDTH     (WM_USER+25)
  455. #define TTM_SETMARGIN         (WM_USER+26)  
  456. #define TTM_GETMARGIN         (WM_USER+27)  
  457. #define TTM_POP              (WM_USER+28)
  458. #endif /* _WIN32_IE */
  459. #if (_WIN32_IE >= 0x0400)            /* IE4.0 ??? */
  460. #define TTM_UPDATE            (WM_USER+29)
  461. #endif
  462. #define TTN_GETDISPINFOA    (TTN_FIRST - 0)
  463. #define TTN_GETDISPINFOW    (TTN_FIRST - 10)
  464. #define TTN_NEEDTEXTA    TTN_GETDISPINFOA
  465. #define TTN_NEEDTEXTW    TTN_GETDISPINFOW
  466. #define TTN_SHOW    (TTN_FIRST-1)
  467. #define TTN_POP    (TTN_FIRST-2)
  468. #define UD_MAXVAL    0x7fff
  469. #define UD_MINVAL    (-UD_MAXVAL)
  470. #define UDN_DELTAPOS (UDN_FIRST-1)
  471. #define UDS_WRAP    1
  472. #define UDS_SETBUDDYINT    2
  473. #define UDS_ALIGNRIGHT    4
  474. #define UDS_ALIGNLEFT    8
  475. #define UDS_AUTOBUDDY    16
  476. #define UDS_ARROWKEYS    32
  477. #define UDS_HORZ    64
  478. #define UDS_NOTHOUSANDS    128
  479. #if ( _WIN32_IE >= 0x0300 )
  480. #define UDS_HOTTRACK    0x0100
  481. #endif /* _WIN32_IE >= 0x0300 */
  482. #define UDM_SETRANGE    (WM_USER+101)
  483. #define UDM_GETRANGE    (WM_USER+102)
  484. #define UDM_SETPOS    (WM_USER+103)
  485. #define UDM_GETPOS    (WM_USER+104)
  486. #define UDM_SETBUDDY    (WM_USER+105)
  487. #define UDM_GETBUDDY    (WM_USER+106)
  488. #define UDM_SETACCEL    (WM_USER+107)
  489. #define UDM_GETACCEL    (WM_USER+108)
  490. #define UDM_SETBASE    (WM_USER+109)
  491. #define UDM_GETBASE    (WM_USER+110)
  492. #define SB_SETTEXTA    (WM_USER+1)
  493. #define SB_SETTEXTW    (WM_USER+11)
  494. #define SB_GETTEXTA    (WM_USER+2)
  495. #define SB_GETTEXTW    (WM_USER+13)
  496. #define SB_GETTEXTLENGTHA    (WM_USER+3)
  497. #define SB_GETTEXTLENGTHW    (WM_USER+12)
  498. #define SB_SETPARTS    (WM_USER+4)
  499. #define SB_GETPARTS    (WM_USER+6)
  500. #define SB_GETBORDERS    (WM_USER+7)
  501. #define SB_SETMINHEIGHT    (WM_USER+8)
  502. #define SB_SIMPLE    (WM_USER+9)
  503. #define SB_GETRECT    (WM_USER+10)
  504. #define SBT_OWNERDRAW    0x1000
  505. #define SBT_NOBORDERS    256
  506. #define SBT_POPOUT    512
  507. #define SBT_RTLREADING    1024
  508. #if( _WIN32_IE >= 0x0400 )
  509. #define SBT_TOOLTIPS    0x0800
  510. #endif /* _WIN32_IE >= 0x0400 */
  511. #define TBS_AUTOTICKS    1
  512. #define TBS_VERT    2
  513. #define TBS_HORZ    0
  514. #define TBS_TOP    4
  515. #define TBS_BOTTOM    0
  516. #define TBS_LEFT    4
  517. #define TBS_RIGHT    0
  518. #define TBS_BOTH    8
  519. #define TBS_NOTICKS    16
  520. #define TBS_ENABLESELRANGE    32
  521. #define TBS_FIXEDLENGTH    64
  522. #define TBS_NOTHUMB    128
  523. #define TBS_TOOLTIPS    0x0100
  524. #define TBS_REVERSED    0x0200
  525. #if _WIN32_IE >= 0x400
  526. #define TBIF_BYINDEX -2147483648
  527. #define TBIF_COMMAND 32
  528. #define TBIF_IMAGE 1
  529. #define TBIF_LPARAM 16
  530. #define TBIF_SIZE 64
  531. #define TBIF_STATE 4
  532. #define TBIF_STYLE 8
  533. #define TBIF_TEXT 2
  534. #endif
  535. #define TBM_GETPOS    (WM_USER)
  536. #define TBM_GETRANGEMIN    (WM_USER+1)
  537. #define TBM_GETRANGEMAX    (WM_USER+2)
  538. #define TBM_GETTIC    (WM_USER+3)
  539. #define TBM_SETTIC    (WM_USER+4)
  540. #define TBM_SETPOS    (WM_USER+5)
  541. #define TBM_SETRANGE    (WM_USER+6)
  542. #define TBM_SETRANGEMIN    (WM_USER+7)
  543. #define TBM_SETRANGEMAX    (WM_USER+8)
  544. #define TBM_CLEARTICS    (WM_USER+9)
  545. #define TBM_SETSEL    (WM_USER+10)
  546. #define TBM_SETSELSTART    (WM_USER+11)
  547. #define TBM_SETSELEND    (WM_USER+12)
  548. #define TBM_GETPTICS    (WM_USER+14)
  549. #define TBM_GETTICPOS    (WM_USER+15)
  550. #define TBM_GETNUMTICS    (WM_USER+16)
  551. #define TBM_GETSELSTART    (WM_USER+17)
  552. #define TBM_GETSELEND    (WM_USER+18)
  553. #define TBM_CLEARSEL    (WM_USER+19)
  554. #define TBM_SETTICFREQ    (WM_USER+20)
  555. #define TBM_SETPAGESIZE    (WM_USER+21)
  556. #define TBM_GETPAGESIZE    (WM_USER+22)
  557. #define TBM_SETLINESIZE    (WM_USER+23)
  558. #define TBM_GETLINESIZE    (WM_USER+24)
  559. #define TBM_GETTHUMBRECT    (WM_USER+25)
  560. #define TBM_GETCHANNELRECT    (WM_USER+26)
  561. #define TBM_SETTHUMBLENGTH    (WM_USER+27)
  562. #define TBM_GETTHUMBLENGTH    (WM_USER+28)
  563. #define TB_LINEUP    0
  564. #define TB_LINEDOWN    1
  565. #define TB_PAGEUP    2
  566. #define TB_PAGEDOWN    3
  567. #define TB_THUMBPOSITION    4
  568. #define TB_THUMBTRACK    5
  569. #define TB_TOP    6
  570. #define TB_BOTTOM    7
  571. #define TB_ENDTRACK    8
  572. #define HOTKEYF_SHIFT    1
  573. #define HOTKEYF_CONTROL    2
  574. #define HOTKEYF_ALT    4
  575. #define HOTKEYF_EXT    8
  576. #define HKCOMB_NONE    1
  577. #define HKCOMB_S    2
  578. #define HKCOMB_C    4
  579. #define HKCOMB_A    8
  580. #define HKCOMB_SC    16
  581. #define HKCOMB_SA    32
  582. #define HKCOMB_CA    64
  583. #define HKCOMB_SCA    128
  584. #define HKM_SETHOTKEY    (WM_USER+1)
  585. #define HKM_GETHOTKEY    (WM_USER+2)
  586. #define HKM_SETRULES    (WM_USER+3)
  587. #define PBM_SETRANGE    (WM_USER+1)
  588. #define PBM_SETPOS    (WM_USER+2)
  589. #define PBM_DELTAPOS    (WM_USER+3)
  590. #define PBM_SETSTEP    (WM_USER+4)
  591. #define PBM_STEPIT    (WM_USER+5)
  592. #define PBM_SETRANGE32    1030
  593. #define PBM_GETRANGE    1031
  594. #define PBM_GETPOS    1032
  595. #define PBM_SETBARCOLOR    1033
  596. #define PBM_SETBKCOLOR    CCM_SETBKCOLOR
  597. #define PBS_SMOOTH    1
  598. #define PBS_VERTICAL    4
  599. #define LVS_ICON    0
  600. #define LVS_REPORT    1
  601. #define LVS_SMALLICON    2
  602. #define LVS_LIST    3
  603. #define LVS_TYPEMASK    3
  604. #define LVS_SINGLESEL    4
  605. #define LVS_SHOWSELALWAYS    8
  606. #define LVS_SORTASCENDING    16
  607. #define LVS_SORTDESCENDING    32
  608. #define LVS_SHAREIMAGELISTS    64
  609. #define LVS_NOLABELWRAP    128
  610. #define LVS_AUTOARRANGE    256
  611. #define LVS_EDITLABELS    512
  612. #define LVS_NOSCROLL    0x2000
  613. #define LVS_TYPESTYLEMASK    0xfc00
  614. #define LVS_ALIGNTOP    0
  615. #define LVS_ALIGNLEFT    0x800
  616. #define LVS_ALIGNMASK    0xc00
  617. #define LVS_OWNERDRAWFIXED    0x400
  618. #define LVS_NOCOLUMNHEADER    0x4000
  619. #define LVS_NOSORTHEADER    0x8000
  620. #if (_WIN32_IE >= 0x0300)
  621. #define HDS_HOTTRACK    0x0004
  622. #define HDS_DRAGDROP    0x0040
  623. #define HDS_FULLDRAG    0x0080
  624. #define HDS_FILTERBAR    0x0100
  625. /* FIXME: missing CDIS_INDETERMINATE,CDIS_MARKED,
  626.  CDDS_SUBITEM, CDRF_NOTIFYSUBITEMDRAW */
  627. #define CDIS_CHECKED 8
  628. #define CDIS_DEFAULT 32
  629. #define CDIS_DISABLED 4
  630. #define CDIS_FOCUS 16
  631. #define CDIS_GRAYED 2
  632. #define CDIS_HOT 64
  633. #define CDIS_SELECTED 1
  634. #define CDDS_POSTERASE 4
  635. #define CDDS_POSTPAINT 2
  636. #define CDDS_PREERASE 3
  637. #define CDDS_PREPAINT 1
  638. #define CDDS_ITEM 65536
  639. #define CDDS_ITEMPOSTERASE 65540
  640. #define CDDS_ITEMPOSTPAINT 65538
  641. #define CDDS_ITEMPREERASE 65539
  642. #define CDDS_ITEMPREPAINT 65537
  643. #define CDRF_DODEFAULT 0
  644. #define CDRF_NOTIFYITEMDRAW 32
  645. #define CDRF_NOTIFYITEMERASE 128
  646. #define CDRF_NOTIFYPOSTERASE 64
  647. #define CDRF_NOTIFYPOSTPAINT 16
  648. #define CDRF_NEWFONT 2
  649. #define CDRF_SKIPDEFAULT 4
  650. #if (_WIN32_IE >= 0x0400)
  651. #define LVBKIF_SOURCE_NONE      0x00000000
  652. #define LVBKIF_SOURCE_HBITMAP   0x00000001
  653. #define LVBKIF_SOURCE_URL       0x00000002
  654. #define LVBKIF_SOURCE_MASK      0x00000003
  655. #define LVBKIF_STYLE_NORMAL     0x00000000
  656. #define LVBKIF_STYLE_TILE       0x00000010
  657. #define LVBKIF_STYLE_MASK       0x00000010
  658. #endif /* _WIN32_IE >=0x0400 */
  659. #if (_WIN32_WINNT >= 0x501)
  660. #define LVBKIF_FLAG_TILEOFFSET  0x00000100
  661. #define LVBKIF_TYPE_WATERMARK   0x10000000
  662. #endif /* _WIN32_WINNT >= 0x501 */
  663. #define LVS_OWNERDATA 4096
  664. #define LVS_EX_CHECKBOXES 4
  665. #define LVS_EX_FULLROWSELECT 32
  666. #define LVS_EX_GRIDLINES 1
  667. #define LVS_EX_HEADERDRAGDROP 16
  668. #define LVS_EX_ONECLICKACTIVATE 64
  669. #define LVS_EX_SUBITEMIMAGES 2
  670. #define LVS_EX_TRACKSELECT 8
  671. #define LVS_EX_TWOCLICKACTIVATE 128
  672. #define LVSICF_NOINVALIDATEALL    0x00000001
  673. #define LVSICF_NOSCROLL    0x00000002
  674. #if( _WIN32_IE >= 0x0400 )
  675. #define LVS_EX_FLATSB    0x00000100
  676. #define LVS_EX_REGIONAL    0x00000200
  677. #define LVS_EX_INFOTIP    0x00000400
  678. #define LVS_EX_UNDERLINEHOT    0x00000800
  679. #define LVS_EX_UNDERLINECOLD    0x00001000
  680. #define LVS_EX_MULTIWORKAREAS    0x00002000
  681. #endif /* _WIN32_IE >=0x0400 */
  682. #if( _WIN32_IE >= 0x0500 )
  683. #define LVS_EX_LABELTIP    0x00004000
  684. #define LVS_EX_BORDERSELECT    0x00008000
  685. #endif  /* _WIN32_IE >= 0x0500 */
  686. #endif  /* _WIN32_IE >= 0x0300 */
  687. #define LVSIL_NORMAL    0
  688. #define LVSIL_SMALL    1
  689. #define LVSIL_STATE    2
  690. #define LVM_GETBKCOLOR    LVM_FIRST
  691. #define LVM_SETBKCOLOR    (LVM_FIRST+1)
  692. #define LVM_GETIMAGELIST    (LVM_FIRST+2)
  693. #define LVM_SETIMAGELIST    (LVM_FIRST+3)
  694. #define LVM_GETITEMCOUNT    (LVM_FIRST+4)
  695. #define LVIF_TEXT    1
  696. #define LVIF_IMAGE    2
  697. #define LVIF_PARAM    4
  698. #define LVIF_STATE    8
  699. #define LVIS_FOCUSED    1
  700. #define LVIS_SELECTED    2
  701. #define LVIS_CUT    4
  702. #define LVIS_DROPHILITED    8
  703. #define LVIS_OVERLAYMASK    0xF00
  704. #define LVIS_STATEIMAGEMASK    0xF000
  705. #define LPSTR_TEXTCALLBACKW    ((LPWSTR)-1)
  706. #define LPSTR_TEXTCALLBACKA    ((LPSTR)-1)
  707. #define I_IMAGECALLBACK    (-1)
  708. #define LVM_GETITEMA    (LVM_FIRST+5)
  709. #define LVM_GETITEMW    (LVM_FIRST+75)
  710. #define LVM_SETITEMA    (LVM_FIRST+6)
  711. #define LVM_SETITEMW    (LVM_FIRST+76)
  712. #define LVM_INSERTITEMA    (LVM_FIRST+7)
  713. #define LVM_INSERTITEMW    (LVM_FIRST+77)
  714. #define LVM_DELETEITEM    (LVM_FIRST+8)
  715. #define LVM_DELETEALLITEMS    (LVM_FIRST+9)
  716. #define LVM_GETCALLBACKMASK    (LVM_FIRST+10)
  717. #define LVM_SETCALLBACKMASK    (LVM_FIRST+11)
  718. #if( _WIN32_IE >= 0x0400 )
  719. #define LVM_SETBKIMAGEA    (LVM_FIRST + 68)
  720. #define LVM_SETBKIMAGEW    (LVM_FIRST + 138)
  721. #define LVM_GETBKIMAGEA    (LVM_FIRST + 69)
  722. #define LVM_GETBKIMAGEW    (LVM_FIRST + 139)
  723. #endif /* _WIN32_IE >=0x0400 */
  724. #define LVNI_ALL    0
  725. #define LVNI_FOCUSED    1
  726. #define LVNI_SELECTED    2
  727. #define LVNI_CUT    4
  728. #define LVNI_DROPHILITED    8
  729. #define LVNI_ABOVE    256
  730. #define LVNI_BELOW    512
  731. #define LVNI_TOLEFT    1024
  732. #define LVNI_TORIGHT    2048
  733. #define LVM_GETNEXTITEM    (LVM_FIRST+12)
  734. #define LVFI_PARAM    1
  735. #define LVFI_STRING    2
  736. #define LVFI_PARTIAL    8
  737. #define LVFI_WRAP    32
  738. #define LVFI_NEARESTXY    64
  739. #define LVIF_DI_SETITEM    0x1000
  740. #define LVM_FINDITEMA    (LVM_FIRST+13)
  741. #define LVM_FINDITEMW    (LVM_FIRST+83)
  742. #define LVIR_BOUNDS    0
  743. #define LVIR_ICON    1
  744. #define LVIR_LABEL    2
  745. #define LVIR_SELECTBOUNDS    3
  746. #define LVM_GETITEMRECT    (LVM_FIRST+14)
  747. #define LVM_SETITEMPOSITION    (LVM_FIRST+15)
  748. #define LVM_GETITEMPOSITION    (LVM_FIRST+16)
  749. #define LVM_GETSTRINGWIDTHA    (LVM_FIRST+17)
  750. #define LVM_GETSTRINGWIDTHW    (LVM_FIRST+87)
  751. #define LVHT_NOWHERE    1
  752. #define LVHT_ONITEMICON    2
  753. #define LVHT_ONITEMLABEL    4
  754. #define LVHT_ONITEMSTATEICON    8
  755. #define LVHT_ONITEM    (LVHT_ONITEMICON|LVHT_ONITEMLABEL|LVHT_ONITEMSTATEICON)
  756. #define LVHT_ABOVE    8
  757. #define LVHT_BELOW    16
  758. #define LVHT_TORIGHT    32
  759. #define LVHT_TOLEFT    64
  760. #define LVM_HITTEST    (LVM_FIRST+18)
  761. #define LVM_ENSUREVISIBLE    (LVM_FIRST+19)
  762. #define LVM_SCROLL    (LVM_FIRST+20)
  763. #define LVM_REDRAWITEMS    (LVM_FIRST+21)
  764. #define LVA_DEFAULT    0
  765. #define LVA_ALIGNLEFT    1
  766. #define LVA_ALIGNTOP    2
  767. #define LVA_SNAPTOGRID    5
  768. #define LVM_ARRANGE    (LVM_FIRST+22)
  769. #define LVM_EDITLABELA    (LVM_FIRST+23)
  770. #define LVM_EDITLABELW    (LVM_FIRST+118)
  771. #define LVM_GETEDITCONTROL    (LVM_FIRST+24)
  772. #define LVCF_FMT    1
  773. #define LVCF_WIDTH    2
  774. #define LVCF_TEXT    4
  775. #define LVCF_SUBITEM    8
  776. #if (_WIN32_IE >= 0x0300)
  777. #define LVCF_IMAGE 16
  778. #define LVCF_ORDER 32
  779. #endif
  780. #define LVCFMT_LEFT    0
  781. #define LVCFMT_RIGHT    1
  782. #define LVCFMT_CENTER    2
  783. #define LVCFMT_JUSTIFYMASK    3
  784. #if (_WIN32_IE >= 0x0300)
  785. #define LVCFMT_BITMAP_ON_RIGHT 4096
  786. #define LVCFMT_COL_HAS_IMAGES  32768
  787. #define LVCFMT_IMAGE 2048 
  788. #endif
  789. #define LVM_GETCOLUMNA    (LVM_FIRST+25)
  790. #define LVM_GETCOLUMNW    (LVM_FIRST+95)
  791. #define LVM_SETCOLUMNA    (LVM_FIRST+26)
  792. #define LVM_SETCOLUMNW    (LVM_FIRST+96)
  793. #define LVM_INSERTCOLUMNA    (LVM_FIRST+27)
  794. #define LVM_INSERTCOLUMNW    (LVM_FIRST+97)
  795. #define LVM_DELETECOLUMN    (LVM_FIRST+28)
  796. #define LVM_GETCOLUMNWIDTH    (LVM_FIRST+29)
  797. #define LVSCW_AUTOSIZE    (-1)
  798. #define LVSCW_AUTOSIZE_USEHEADER    (-2)
  799. #define LVM_SETCOLUMNWIDTH    (LVM_FIRST+30)
  800. #define LVM_CREATEDRAGIMAGE    (LVM_FIRST+33)
  801. #define LVM_GETVIEWRECT    (LVM_FIRST+34)
  802. #define LVM_GETTEXTCOLOR    (LVM_FIRST+35)
  803. #define LVM_SETTEXTCOLOR    (LVM_FIRST+36)
  804. #define LVM_GETTEXTBKCOLOR    (LVM_FIRST+37)
  805. #define LVM_SETTEXTBKCOLOR    (LVM_FIRST+38)
  806. #define LVM_GETTOPINDEX    (LVM_FIRST+39)
  807. #define LVM_GETCOUNTPERPAGE    (LVM_FIRST+40)
  808. #define LVM_GETORIGIN    (LVM_FIRST+41)
  809. #define LVM_GETORIGIN    (LVM_FIRST+41)
  810. #define LVM_UPDATE    (LVM_FIRST+42)
  811. #define LVM_SETITEMSTATE    (LVM_FIRST+43)
  812. #define LVM_GETITEMSTATE    (LVM_FIRST+44)
  813. #define LVM_GETITEMTEXTA    (LVM_FIRST+45)
  814. #define LVM_GETITEMTEXTW    (LVM_FIRST+115)
  815. #define LVM_SETITEMTEXTA    (LVM_FIRST+46)
  816. #define LVM_SETITEMTEXTW    (LVM_FIRST+116)
  817. #define LVM_SETITEMCOUNT    (LVM_FIRST+47)
  818. #define LVM_SORTITEMS    (LVM_FIRST+48)
  819. #define LVM_SETITEMPOSITION32    (LVM_FIRST+49)
  820. #define LVM_GETSELECTEDCOUNT    (LVM_FIRST+50)
  821. #define LVM_GETITEMSPACING    (LVM_FIRST+51)
  822. #define LVM_GETISEARCHSTRINGA    (LVM_FIRST+52)
  823. #define LVM_GETISEARCHSTRINGW    (LVM_FIRST+117)
  824. #if (_WIN32_IE >= 0x0300)
  825. #define LVM_APPROXIMATEVIEWRECT (LVM_FIRST+64)
  826. #define LVM_SETEXTENDEDLISTVIEWSTYLE (LVM_FIRST+54)
  827. #define LVM_GETEXTENDEDLISTVIEWSTYLE (LVM_FIRST+55)
  828. #define LVM_SETCOLUMNORDERARRAY (LVM_FIRST+58)
  829. #define LVM_GETCOLUMNORDERARRAY (LVM_FIRST+59)
  830. #define LVM_GETHEADER (LVM_FIRST+31)
  831. #define LVM_GETHOTCURSOR (LVM_FIRST+63)
  832. #define LVM_GETHOTITEM (LVM_FIRST+61)
  833. #define LVM_GETSUBITEMRECT (LVM_FIRST+56)
  834. #define LVM_SETHOTCURSOR (LVM_FIRST+62)
  835. #define LVM_SETHOTITEM (LVM_FIRST+60)
  836. #define LVM_SETICONSPACING (LVM_FIRST+53)
  837. #define LVM_SUBITEMHITTEST (LVM_FIRST+57)
  838. #endif
  839. #define LVN_ITEMCHANGING    LVN_FIRST
  840. #define LVN_ITEMCHANGED    (LVN_FIRST-1)
  841. #define LVN_INSERTITEM    (LVN_FIRST-2)
  842. #define LVN_DELETEITEM    (LVN_FIRST-3)
  843. #define LVN_DELETEALLITEMS    (LVN_FIRST-4)
  844. #define LVN_BEGINLABELEDITA    (LVN_FIRST-5)
  845. #define LVN_BEGINLABELEDITW    (LVN_FIRST-75)
  846. #define LVN_ENDLABELEDITA    (LVN_FIRST-6)
  847. #define LVN_ENDLABELEDITW    (LVN_FIRST-76)
  848. #define LVN_COLUMNCLICK    (LVN_FIRST-8)
  849. #define LVN_BEGINDRAG    (LVN_FIRST-9)
  850. #define LVN_BEGINRDRAG    (LVN_FIRST-11)
  851. #define LVN_GETDISPINFOA    (LVN_FIRST-50)
  852. #define LVN_GETDISPINFOW    (LVN_FIRST-77)
  853. #define LVN_SETDISPINFOA    (LVN_FIRST-51)
  854. #define LVN_SETDISPINFOW    (LVN_FIRST-78)
  855. #define LVN_KEYDOWN    (LVN_FIRST-55)
  856. #if (_WIN32_IE >= 0x0400)
  857. #define LVKF_ALT    0x0001
  858. #define LVKF_CONTROL    0x0002
  859. #define LVKF_SHIFT    0x0004
  860. #endif
  861. #define TVS_HASBUTTONS    1
  862. #define TVS_HASLINES    2
  863. #define TVS_LINESATROOT    4
  864. #define TVS_EDITLABELS    8
  865. #define TVS_DISABLEDRAGDROP    16
  866. #define TVS_SHOWSELALWAYS    32
  867. #if (_WIN32_IE >= 0x0300)
  868. #define TVS_CHECKBOXES 256
  869. #define TVS_NOTOOLTIPS 128
  870. #define TVS_RTLREADING 64
  871. #define TVS_TRACKSELECT 512
  872. #endif
  873. #if (_WIN32_IE >= 0x0400)
  874. #define TVS_FULLROWSELECT 4096
  875. #define TVS_INFOTIP 2048
  876. #define TVS_NONEVENHEIGHT 16384
  877. #define TVS_NOSCROLL 8192
  878. #define TVS_SINGLEEXPAND 1024
  879. #endif
  880. #if( _WIN32_IE >= 0x0500 )
  881. #define TVS_NOHSCROLL    0x8000
  882. #endif /* _WIN32_IE >= 0x0500 */
  883. #define TVIF_TEXT    1
  884. #define TVIF_IMAGE    2
  885. #define TVIF_PARAM    4
  886. #define TVIF_STATE    8
  887. #define TVIF_HANDLE    16
  888. #define TVIF_SELECTEDIMAGE    32
  889. #define TVIF_CHILDREN    64
  890. #if (_WIN32_IE >= 0x0400)
  891. #define TVIF_INTEGRAL    0x0080
  892. #endif /* _WIN32_IE >= 0x0400 */
  893. #define TVIS_FOCUSED    1
  894. #define TVIS_SELECTED    2
  895. #define TVIS_CUT    4
  896. #define TVIS_DROPHILITED    8
  897. #define TVIS_BOLD    16
  898. #define TVIS_EXPANDED    32
  899. #define TVIS_EXPANDEDONCE    64
  900. #define TVIS_OVERLAYMASK    0xF00
  901. #define TVIS_STATEIMAGEMASK    0xF000
  902. #define TVIS_USERMASK    0xF000
  903. #define I_CHILDRENCALLBACK    (-1)
  904. #define TVI_ROOT    ((HTREEITEM)0xFFFF0000)
  905. #define TVI_FIRST    ((HTREEITEM)0xFFFF0001)
  906. #define TVI_LAST    ((HTREEITEM)0xFFFF0002)
  907. #define TVI_SORT    ((HTREEITEM)0xFFFF0003)
  908. #define TVSIL_NORMAL    0
  909. #define TVSIL_STATE    2
  910. #define TVM_INSERTITEMA    TV_FIRST
  911. #define TVM_INSERTITEMW    (TV_FIRST+50)
  912. #define TVM_DELETEITEM    (TV_FIRST+1)
  913. #define TVM_EXPAND    (TV_FIRST+2)
  914. #define TVM_GETITEMRECT    (TV_FIRST+4)
  915. #define TVM_GETCOUNT    (TV_FIRST+5)
  916. #define TVM_GETINDENT    (TV_FIRST+6)
  917. #define TVM_SETINDENT    (TV_FIRST+7)
  918. #define TVM_GETIMAGELIST    (TV_FIRST+8)
  919. #define TVM_SETIMAGELIST    (TV_FIRST+9)
  920. #define TVM_GETNEXTITEM    (TV_FIRST+10)
  921. #define TVM_SELECTITEM    (TV_FIRST+11)
  922. #define TVM_GETITEMA    (TV_FIRST+12)
  923. #define TVM_GETITEMW    (TV_FIRST+62)
  924. #define TVM_SETITEMA    (TV_FIRST+13)
  925. #define TVM_SETITEMW    (TV_FIRST+63)
  926. #define TVM_EDITLABELA    (TV_FIRST+14)
  927. #define TVM_EDITLABELW    (TV_FIRST+65)
  928. #define TVM_GETEDITCONTROL    (TV_FIRST+15)
  929. #define TVM_GETVISIBLECOUNT    (TV_FIRST+16)
  930. #define TVM_HITTEST    (TV_FIRST+17)
  931. #define TVM_CREATEDRAGIMAGE    (TV_FIRST+18)
  932. #define TVM_SORTCHILDREN    (TV_FIRST+19)
  933. #define TVM_ENSUREVISIBLE    (TV_FIRST+20)
  934. #define TVM_SORTCHILDRENCB    (TV_FIRST+21)
  935. #define TVM_ENDEDITLABELNOW    (TV_FIRST+22)
  936. #define TVM_GETISEARCHSTRINGA    (TV_FIRST+23)
  937. #define TVM_GETISEARCHSTRINGW    (TV_FIRST+64)
  938. #if (_WIN32_IE >= 0x0300)
  939. #define TVM_GETTOOLTIPS (TV_FIRST+25)
  940. #define TVM_SETTOOLTIPS (TV_FIRST+24)
  941. #endif
  942. #if (_WIN32_IE >= 0x0400)
  943. #define TVM_GETBKCOLOR (TV_FIRST+31)
  944. #define TVM_GETINSERTMARKCOLOR (TV_FIRST+38)
  945. #define TVM_GETITEMHEIGHT (TV_FIRST+28)
  946. #define TVM_GETTEXTCOLOR (TV_FIRST+32)
  947. #define TVM_SETBKCOLOR (TV_FIRST+29)
  948. #define TVM_SETINSERTMARK (TV_FIRST+26)
  949. #define TVM_SETINSERTMARKCOLOR (TV_FIRST+37)
  950. #define TVM_SETITEMHEIGHT (TV_FIRST+27)
  951. #define TVM_SETTEXTCOLOR (TV_FIRST+30)
  952. #endif
  953. #define TVE_COLLAPSE    1
  954. #define TVE_EXPAND    2
  955. #define TVE_TOGGLE    3
  956. #define TVE_COLLAPSERESET    0x8000
  957. #define TVC_UNKNOWN    0
  958. #define TVC_BYMOUSE    1
  959. #define TVC_BYKEYBOARD    2
  960. #define TVGN_ROOT    0
  961. #define TVGN_NEXT    1
  962. #define TVGN_PREVIOUS    2
  963. #define TVGN_PARENT    3
  964. #define TVGN_CHILD    4
  965. #define TVGN_FIRSTVISIBLE    5
  966. #define TVGN_NEXTVISIBLE    6
  967. #define TVGN_PREVIOUSVISIBLE    7
  968. #define TVGN_DROPHILITE    8
  969. #define TVGN_CARET    9
  970. #define TVN_SELCHANGINGA    (TVN_FIRST-1)
  971. #define TVN_SELCHANGINGW    (TVN_FIRST-50)
  972. #define TVN_SELCHANGEDA    (TVN_FIRST-2)
  973. #define TVN_SELCHANGEDW    (TVN_FIRST-51)
  974. #define TVN_GETDISPINFOA    (TVN_FIRST-3)
  975. #define TVN_GETDISPINFOW    (TVN_FIRST-52)
  976. #define TVN_SETDISPINFOA    (TVN_FIRST-4)
  977. #define TVN_SETDISPINFOW    (TVN_FIRST-53)
  978. #define TVN_ITEMEXPANDINGA    (TVN_FIRST-5)
  979. #define TVN_ITEMEXPANDINGW    (TVN_FIRST-54)
  980. #define TVN_ITEMEXPANDEDA    (TVN_FIRST-6)
  981. #define TVN_ITEMEXPANDEDW    (TVN_FIRST-55)
  982. #define TVN_BEGINDRAGA    (TVN_FIRST-7)
  983. #define TVN_BEGINDRAGW    (TVN_FIRST-56)
  984. #define TVN_BEGINRDRAGA    (TVN_FIRST-8)
  985. #define TVN_BEGINRDRAGW    (TVN_FIRST-57)
  986. #define TVN_DELETEITEMA    (TVN_FIRST-9)
  987. #define TVN_DELETEITEMW    (TVN_FIRST-58)
  988. #define TVN_BEGINLABELEDITA    (TVN_FIRST-10)
  989. #define TVN_BEGINLABELEDITW    (TVN_FIRST-59)
  990. #define TVN_ENDLABELEDITA    (TVN_FIRST-11)
  991. #define TVN_ENDLABELEDITW    (TVN_FIRST-60)
  992. #define TVN_KEYDOWN    (TVN_FIRST-12)
  993. #define TVIF_DI_SETITEM    0x1000
  994. #define TVHT_NOWHERE    1
  995. #define TVHT_ONITEMICON    2
  996. #define TVHT_ONITEMLABEL    4
  997. #define TVHT_ONITEM    (TVHT_ONITEMICON|TVHT_ONITEMLABEL|TVHT_ONITEMSTATEICON)
  998. #define TVHT_ONITEMINDENT    8
  999. #define TVHT_ONITEMBUTTON    16
  1000. #define TVHT_ONITEMRIGHT    32
  1001. #define TVHT_ONITEMSTATEICON    64
  1002. #define TVHT_ABOVE    256
  1003. #define TVHT_BELOW    512
  1004. #define TVHT_TORIGHT    1024
  1005. #define TVHT_TOLEFT    2048
  1006. #define TCHT_NOWHERE    1
  1007. #define TCHT_ONITEMICON    2
  1008. #define TCHT_ONITEMLABEL    4
  1009. #define TCHT_ONITEM    (TCHT_ONITEMICON|TCHT_ONITEMLABEL)
  1010. #define TCS_FORCEICONLEFT    16
  1011. #define TCS_FORCELABELLEFT    32
  1012. #define TCS_TABS    0
  1013. #define TCS_BUTTONS    256
  1014. #define TCS_SINGLELINE    0
  1015. #define TCS_MULTILINE    512
  1016. #define TCS_RIGHTJUSTIFY    0
  1017. #define TCS_FIXEDWIDTH    1024
  1018. #define TCS_RAGGEDRIGHT    2048
  1019. #define TCS_FOCUSONBUTTONDOWN    0x1000
  1020. #define TCS_OWNERDRAWFIXED    0x2000
  1021. #define TCS_TOOLTIPS    0x4000
  1022. #define TCS_FOCUSNEVER    0x8000
  1023. #if (_WIN32_IE >= 0x0300)
  1024. #define TCS_BOTTOM    2
  1025. #define TCS_RIGHT    2
  1026. #define TCS_VERTICAL    128
  1027. #define TCS_SCROLLOPPOSITE    0x0001
  1028. #define TCS_HOTTRACK    0x0040
  1029. #define TCS_MULTISELECT    0x0004
  1030. #endif
  1031. #if( _WIN32_IE >= 0x0400 )
  1032. #define TCS_FLATBUTTONS    0x0008
  1033. #define TCS_EX_FLATSEPARATORS    0x00000001
  1034. #define TCS_EX_REGISTERDROP    0x00000002
  1035. #endif /* _WIN32_IE >= 0x0400 */
  1036. #define TCIF_TEXT    1
  1037. #define TCIF_IMAGE    2
  1038. #define TCIF_RTLREADING    4
  1039. #define TCIF_PARAM    8
  1040. #define TCM_FIRST    0x1300
  1041. #define TCM_GETIMAGELIST    (TCM_FIRST+2)
  1042. #define TCM_SETIMAGELIST    (TCM_FIRST+3)
  1043. #define TCM_GETITEMCOUNT    (TCM_FIRST+4)
  1044. #define TCM_GETITEMA    (TCM_FIRST+5)
  1045. #define TCM_GETITEMW    (TCM_FIRST+60)
  1046. #define TCM_SETITEMA    (TCM_FIRST+6)
  1047. #define TCM_SETITEMW    (TCM_FIRST+61)
  1048. #define TCM_INSERTITEMA    (TCM_FIRST+7)
  1049. #define TCM_INSERTITEMW    (TCM_FIRST+62)
  1050. #define TCM_DELETEITEM    (TCM_FIRST+8)
  1051. #define TCM_DELETEALLITEMS    (TCM_FIRST+9)
  1052. #define TCM_GETITEMRECT    (TCM_FIRST+10)
  1053. #define TCM_GETCURSEL    (TCM_FIRST+11)
  1054. #define TCM_SETCURSEL    (TCM_FIRST+12)
  1055. #define TCM_HITTEST    (TCM_FIRST+13)
  1056. #define TCM_SETITEMEXTRA    (TCM_FIRST+14)
  1057.  
  1058. #define TCM_ADJUSTRECT    (TCM_FIRST+40)
  1059. #define TCM_SETITEMSIZE    (TCM_FIRST+41)
  1060. #define TCM_REMOVEIMAGE    (TCM_FIRST+42)
  1061. #define TCM_SETPADDING    (TCM_FIRST+43)
  1062. #define TCM_GETROWCOUNT    (TCM_FIRST+44)
  1063. #define TCM_GETTOOLTIPS    (TCM_FIRST+45)
  1064. #define TCM_SETTOOLTIPS    (TCM_FIRST+46)
  1065. #define TCM_GETCURFOCUS    (TCM_FIRST+47)
  1066. #define TCM_SETCURFOCUS    (TCM_FIRST+48)
  1067. #define TCM_SETMINTABWIDTH    (TCM_FIRST + 49)
  1068. #define TCM_DESELECTALL    (TCM_FIRST + 50)
  1069. #if (_WIN32_IE >=0x0400)
  1070. #define TCM_HIGHLIGHTITEM    (TCM_FIRST + 51)
  1071. #define TCM_SETEXTENDEDSTYLE    (TCM_FIRST + 52)
  1072. #define TCM_GETEXTENDEDSTYLE    (TCM_FIRST + 53)
  1073. #define TCM_SETUNICODEFORMAT    CCM_SETUNICODEFORMAT
  1074. #define TCM_GETUNICODEFORMAT    CCM_GETUNICODEFORMAT
  1075. #endif /* _WIN32_IE >=0x0400 */
  1076. #define TCN_KEYDOWN    TCN_FIRST
  1077. #define TCN_SELCHANGE    (TCN_FIRST-1)
  1078. #define TCN_SELCHANGING    (TCN_FIRST-2)
  1079. #define NM_OUTOFMEMORY (NM_FIRST-1)
  1080. #define NM_CLICK (NM_FIRST-2)
  1081. #define NM_DBLCLK (NM_FIRST-3)
  1082. #define NM_RETURN (NM_FIRST-4)
  1083. #define NM_RCLICK (NM_FIRST-5)
  1084. #define NM_RDBLCLK (NM_FIRST-6)
  1085. #define NM_SETFOCUS (NM_FIRST-7)
  1086. #define NM_KILLFOCUS (NM_FIRST-8)
  1087. #define NM_CUSTOMDRAW (NM_FIRST-12)
  1088. #define NM_HOVER (NM_FIRST-13)
  1089. #define NM_NCHITTEST (NM_FIRST-14)
  1090. #define NM_KEYDOWN (NM_FIRST-15)
  1091. #define NM_RELEASEDCAPTURE (NM_FIRST-16)
  1092. #define NM_SETCURSOR (NM_FIRST-17)
  1093. #define NM_CHAR (NM_FIRST-18)
  1094. #define SBARS_SIZEGRIP 256
  1095. #define CCM_SETBKCOLOR 8193
  1096. #define CCM_SETCOLORSCHEME 8194
  1097. #define CCM_GETCOLORSCHEME 8195
  1098. #define CCM_GETDROPTARGET 8196
  1099. #define CCM_SETUNICODEFORMAT 8197
  1100. #define CCM_GETUNICODEFORMAT 8198
  1101. #define ICC_LISTVIEW_CLASSES 1
  1102. #define ICC_TREEVIEW_CLASSES 2
  1103. #define ICC_BAR_CLASSES    4
  1104. #define ICC_TAB_CLASSES      8
  1105. #define ICC_UPDOWN_CLASS 16
  1106. #define ICC_PROGRESS_CLASS 32
  1107. #define ICC_HOTKEY_CLASS 64
  1108. #define ICC_ANIMATE_CLASS 128
  1109. #define ICC_WIN95_CLASSES 255
  1110. #define ICC_DATE_CLASSES 256
  1111. #define ICC_USEREX_CLASSES 512
  1112. #define ICC_COOL_CLASSES 1024
  1113. #if (_WIN32_IE >= 0x0400)
  1114. #define ICC_INTERNET_CLASSES 2048
  1115. #define ICC_PAGESCROLLER_CLASS 4096
  1116. #define ICC_NATIVEFNTCTL_CLASS 8192
  1117. #define INFOTIPSIZE
  1118. #endif /* _WIN32_IE */
  1119. #define GDTR_MIN 1
  1120. #define GDTR_MAX 2
  1121. #define GMR_VISIBLE 0
  1122. #define GMR_DAYSTATE 1
  1123. #define GDT_ERROR -1
  1124. #define GDT_VALID 0
  1125. #define GDT_NONE 1
  1126. #define DTS_UPDOWN 1
  1127. #define DTS_SHOWNONE 2
  1128. #define DTS_SHORTDATEFORMAT 0
  1129. #define DTS_LONGDATEFORMAT 4
  1130. #define DTS_TIMEFORMAT 9
  1131. #define DTS_APPCANPARSE 16
  1132. #define DTS_RIGHTALIGN 32
  1133. #if ( _WIN32_IE >= 0x500 )
  1134. #define DTS_SHORTDATECENTURYFORMAT    0x000C
  1135. #endif /* _WIN32_IE >= 0x500 */
  1136. #define MCS_DAYSTATE 1
  1137. #define MCS_MULTISELECT 2
  1138. #define MCS_WEEKNUMBERS 4
  1139. #if (_WIN32_IE >= 0x0400)
  1140. #define MCS_NOTODAYCIRCLE    0x0008
  1141. #define MCS_NOTODAY    0x0010
  1142. #else /* _WIN32_IE >= 0x0400 */
  1143. #define MCS_NOTODAY    0x0008
  1144. #endif /* _WIN32_IE >= 0x0400 */
  1145. #define DTM_GETSYSTEMTIME 0x1001
  1146. #define DTM_SETSYSTEMTIME 0x1002
  1147. #define DTM_GETRANGE 0x1003
  1148. #define DTM_SETRANGE 0x1004
  1149. #define DTM_SETFORMATA 0x1005
  1150. #define DTM_SETFORMATW 0x1050
  1151. #define DTM_SETMCCOLOR 0x1006
  1152. #define DTM_GETMCCOLOR 0x1007
  1153. #define DTM_GETMONTHCAL 0x1008
  1154. #define DTM_SETMCFONT    0x1009
  1155. #define DTM_GETMCFONT    0x100a
  1156. #define DTN_USERSTRINGA  ((UINT)-758)
  1157. #define DTN_USERSTRINGW  ((UINT)-745)
  1158. #define DTN_WMKEYDOWNA  ((UINT)-757)
  1159. #define DTN_WMKEYDOWNW  ((UINT)-744)
  1160. #define DTN_FORMATA  ((UINT)-756) 
  1161. #define DTN_FORMATW  ((UINT)-743)
  1162. #define DTN_FORMATQUERYA  ((UINT)-755) 
  1163. #define DTN_FORMATQUERYW ((UINT)-742)
  1164. #define DTN_DROPDOWN    ((UINT)-754) 
  1165. #define DTN_CLOSEUP    ((UINT)-753) 
  1166. #define DTN_DATETIMECHANGE ((UINT)-759) 
  1167. #define MCM_GETCURSEL    0x1001
  1168. #define MCM_SETCURSEL    0x1002
  1169. #define MCM_GETMAXSELCOUNT 0x1003
  1170. #define MCM_SETMAXSELCOUNT 0x1004
  1171. #define MCM_GETSELRANGE    0x1005
  1172. #define MCM_SETSELRANGE    0x1006
  1173. #define MCM_GETMONTHRANGE 0x1007
  1174. #define MCM_SETDAYSTATE    0x1008
  1175. #define MCM_GETMINREQRECT 0x1009
  1176. #define MCM_SETCOLOR 0x100a
  1177. #define MCM_GETCOLOR 0x100b
  1178. #define MCM_SETTODAY 0x100c
  1179. #define MCM_GETTODAY 0x100d
  1180. #define MCM_HITTEST 0x100e
  1181. #define MCM_SETFIRSTDAYOFWEEK 0x100f
  1182. #define MCM_GETFIRSTDAYOFWEEK 0x1010
  1183. #define MCM_GETRANGE 0x1011
  1184. #define MCM_SETRANGE 0x1012
  1185. #define MCM_GETMONTHDELTA 0x1013
  1186. #define MCM_SETMONTHDELTA 0x1014
  1187. #define MCN_SELCHANGE      ((UINT)-749)
  1188. #define MCN_GETDAYSTATE    ((UINT)-747)
  1189. #define MCN_SELECT        ((UINT)-746)
  1190. #define ODT_HEADER 100
  1191. #define ODT_TAB 101
  1192. #define ODT_LISTVIEW
  1193. #define SB_SETBKCOLOR    0x2001
  1194. #if (_WIN32_IE >= 0x0300)
  1195. #define SB_ISSIMPLE 1038
  1196. #endif
  1197. #define RBS_TOOLTIPS 256
  1198. #define RBS_VARHEIGHT 512
  1199. #define RBS_BANDBORDERS 1024
  1200. #define RBS_FIXEDORDER 2048
  1201. #define RBIM_IMAGELIST 1
  1202. #define RB_SETCOLORSCHEME CCM_SETCOLORSCHEME
  1203. #define RB_GETCOLORSCHEME CCM_GETCOLORSCHEME
  1204. #define RBBS_BREAK 1
  1205. #define RBBS_FIXEDSIZE 2
  1206. #define RBBS_CHILDEDGE 4
  1207. #define RBBS_HIDDEN 8
  1208. #define RBBS_NOVERT 16
  1209. #define RBBS_FIXEDBMP 32
  1210. #define RBBIM_STYLE 1
  1211. #define RBBIM_COLORS 2
  1212. #define RBBIM_TEXT 4
  1213. #define RBBIM_IMAGE 8
  1214. #define RBBIM_CHILD 16
  1215. #define RBBIM_CHILDSIZE 32
  1216. #define RBBIM_SIZE 64
  1217. #define RBBIM_BACKGROUND 128
  1218. #define RBBIM_ID 256
  1219. #define RB_INSERTBANDA (WM_USER+1)
  1220. #define RB_INSERTBANDW (WM_USER+10)
  1221. #define RB_DELETEBAND (WM_USER+2)
  1222. #define RB_GETBARINFO (WM_USER+3)
  1223. #define RB_SETBARINFO (WM_USER+4)
  1224. #define RB_GETBANDCOUNT (WM_USER+12)
  1225. #define RB_GETROWCOUNT (WM_USER+13)
  1226. #define RB_GETROWHEIGHT (WM_USER+14)
  1227. #define RB_SETBANDINFOA (WM_USER+6)
  1228. #define RB_SETBANDINFOW (WM_USER+11)
  1229. #define RB_SETPARENT (WM_USER+7)
  1230. #define RBN_HEIGHTCHANGE RBN_FIRST
  1231. #if (_WIN32_IE >= 0x0300)
  1232. #define LVN_ODCACHEHINT (LVN_FIRST-13)
  1233. #define LVN_ODFINDITEMA (LVN_FIRST-52)
  1234. #define LVN_ODFINDITEMW (LVN_FIRST-79)
  1235. #define LVN_ITEMACTIVATE (LVN_FIRST-14)
  1236. #define LVN_ODSTATECHANGED (LVN_FIRST-15)
  1237. #ifdef UNICODE
  1238. #define LVN_ODFINDITEM LVN_ODFINDITEMW
  1239. #else
  1240. #define LVN_ODFINDITEM LVN_ODFINDITEMA
  1241. #endif
  1242. #endif /* _WIN32_IE */
  1243. #if (_WIN32_IE >= 0x0400)
  1244. #define UDM_SETRANGE32    1135
  1245. #define UDM_GETRANGE32    1136
  1246. #define SB_SETICON 1039
  1247. #define SB_SETTIPTEXTA    1040
  1248. #define SB_SETTIPTEXTW    1041
  1249. #define SB_GETTIPTEXTA    1042
  1250. #define SB_GETTIPTEXTW    1043
  1251. #define SB_GETICON    1044
  1252. #define SB_SETUNICODEFORMAT    0x2005
  1253. #define SB_GETUNICODEFORMAT    0x2006
  1254. #define RBS_REGISTERDROP 4096
  1255. #define RBS_AUTOSIZE 8192
  1256. #define RBS_VERTICALGRIPPER 16384
  1257. #define RBS_DBLCLKTOGGLE  32768
  1258. #define RBBS_VARIABLEHEIGHT 64
  1259. #define RBBS_GRIPPERALWAYS 128
  1260. #define RBBS_NOGRIPPER 256
  1261. #define RBBIM_IDEALSIZE 512
  1262. #define RBBIM_LPARAM 1024
  1263. #define RBBIM_HEADERSIZE 2048
  1264. #define RB_HITTEST (WM_USER+8)
  1265. #define RB_GETRECT (WM_USER+9)
  1266. #define RB_IDTOINDEX (WM_USER+16)
  1267. #define RB_GETTOOLTIPS (WM_USER+17)
  1268. #define RB_SETTOOLTIPS (WM_USER+18)
  1269. #define RB_SETBKCOLOR (WM_USER+19)
  1270. #define RB_GETBKCOLOR (WM_USER+20)
  1271. #define RB_SETTEXTCOLOR (WM_USER+21)
  1272. #define RB_GETTEXTCOLOR (WM_USER+22)
  1273. #define RB_SIZETORECT (WM_USER+23)
  1274. #define RB_BEGINDRAG (WM_USER+24)
  1275. #define RB_ENDDRAG (WM_USER+25)
  1276. #define RB_DRAGMOVE (WM_USER+26)
  1277. #define RB_GETBARHEIGHT (WM_USER+27)
  1278. #define RB_GETBANDINFOW (WM_USER+28)
  1279. #define RB_GETBANDINFOA (WM_USER+29)
  1280. #define RB_MINIMIZEBAND (WM_USER+30)
  1281. #define RB_MAXIMIZEBAND (WM_USER+31)
  1282. #define RB_GETDROPTARGET CCM_GETDROPTARGET
  1283. #define RB_GETBANDBORDERS (WM_USER+34)
  1284. #define RB_SHOWBAND (WM_USER+35)
  1285. #define RB_SETPALETTE (WM_USER+37)
  1286. #define RB_GETPALETTE (WM_USER+38)
  1287. #define RB_MOVEBAND (WM_USER+39)
  1288. #define RB_SETUNICODEFORMAT     CCM_SETUNICODEFORMAT
  1289. #define RB_GETUNICODEFORMAT     CCM_GETUNICODEFORMAT
  1290. #define RBN_GETOBJECT (RBN_FIRST-1)
  1291. #define RBN_LAYOUTCHANGED (RBN_FIRST-2)
  1292. #define RBN_AUTOSIZE (RBN_FIRST-3)
  1293. #define RBN_BEGINDRAG (RBN_FIRST-4)
  1294. #define RBN_ENDDRAG (RBN_FIRST-5)
  1295. #define RBN_DELETINGBAND (RBN_FIRST-6)
  1296. #define RBN_DELETEDBAND (RBN_FIRST-7)
  1297. #define RBN_CHILDSIZE (RBN_FIRST-8)
  1298. #define RBNM_ID 1
  1299. #define RBNM_STYLE 2
  1300. #define RBNM_LPARAM 4
  1301. #define RBHT_NOWHERE 1
  1302. #define RBHT_CAPTION 2
  1303. #define RBHT_CLIENT 3
  1304. #define RBHT_GRABBER 4
  1305. #ifdef UNICODE
  1306. #define SB_SETTIPTEXT    SB_SETTIPTEXTW
  1307. #define SB_GETTIPTEXT    SB_GETTIPTEXTW
  1308. #define RB_GETBANDINFO    RB_GETBANDINFOW
  1309. #else
  1310. #define SB_SETTIPTEXT    SB_SETTIPTEXTA
  1311. #define SB_GETTIPTEXT    SB_GETTIPTEXTA
  1312. #define RB_GETBANDINFO    RB_GETBANDINFOA
  1313. #endif
  1314. #else
  1315. #define RB_GETBANDINFO (WM_USER+5)
  1316. #endif /* _WIN32_IE >= 0x0400 */
  1317. #define CBEM_INSERTITEMA    (WM_USER + 1)
  1318. #define CBEM_SETIMAGELIST    (WM_USER + 2)
  1319. #define CBEM_GETIMAGELIST    (WM_USER + 3)
  1320. #define CBEM_GETITEMA    (WM_USER + 4)
  1321. #define CBEM_SETITEMA    (WM_USER + 5)
  1322. #define CBEM_DELETEITEM    CB_DELETESTRING
  1323. #define CBEM_GETCOMBOCONTROL    (WM_USER + 6)
  1324. #define CBEM_GETEDITCONTROL    (WM_USER + 7)
  1325. #define CBEM_SETEXSTYLE    (WM_USER + 8)
  1326. #define CBEM_GETEXSTYLE    (WM_USER + 9)
  1327. #if (_WIN32_IE >= 0x0400)
  1328. #define CBEM_SETEXTENDEDSTYLE    (WM_USER + 14)
  1329. #define CBEM_GETEXTENDEDSTYLE    (WM_USER + 9)
  1330. #define CBEM_SETUNICODEFORMAT    CCM_SETUNICODEFORMAT
  1331. #define CBEM_GETUNICODEFORMAT    CCM_GETUNICODEFORMAT
  1332. #endif /* _WIN32_IE >= 0x0400 */
  1333. #define CBEM_HASEDITCHANGED    (WM_USER + 10)
  1334. #define CBEM_INSERTITEMW    (WM_USER + 11)
  1335. #define CBEM_SETITEMW    (WM_USER + 12)
  1336. #define CBEM_GETITEMW    (WM_USER + 13)
  1337.  
  1338. #ifndef RC_INVOKED
  1339. typedef struct tagCOMBOBOXEXITEMA{
  1340.     UINT mask;
  1341.     int iItem;
  1342.     LPSTR pszText;
  1343.     int cchTextMax;
  1344.     int iImage;
  1345.     int iSelectedImage;
  1346.     int iOverlay;
  1347.     int iIndent;
  1348.     LPARAM lParam;
  1349. } COMBOBOXEXITEMA, *PCOMBOBOXEXITEMA;
  1350. typedef COMBOBOXEXITEMA CONST *PCCOMBOEXITEMA;
  1351. typedef struct tagCOMBOBOXEXITEMW{
  1352.     UINT mask;
  1353.     int iItem;
  1354.     LPWSTR pszText;
  1355.     int cchTextMax;
  1356.     int iImage;
  1357.     int iSelectedImage;
  1358.     int iOverlay;
  1359.     int iIndent;
  1360.     LPARAM lParam;
  1361. } COMBOBOXEXITEMW, *PCOMBOBOXEXITEMW;
  1362. typedef COMBOBOXEXITEMW CONST *PCCOMBOEXITEMW;
  1363. #if (_WIN32_IE >= 0x0400)
  1364. typedef struct {
  1365.     NMHDR hdr;
  1366.     COMBOBOXEXITEMA ceItem;
  1367. } NMCOMBOBOXEXA, *PNMCOMBOBOXEXA;
  1368. typedef struct {
  1369.     NMHDR hdr;
  1370.     COMBOBOXEXITEMW ceItem;
  1371. } NMCOMBOBOXEXW, *PNMCOMBOBOXEXW;
  1372. typedef struct {
  1373.     NMHDR   hdr;
  1374.     int iItemid;
  1375.     WCHAR   szText[CBEMAXSTRLEN];
  1376. }NMCBEDRAGBEGINW, *LPNMCBEDRAGBEGINW, *PNMCBEDRAGBEGINW;
  1377. typedef struct {
  1378.     NMHDR   hdr;
  1379.     int iItemid;
  1380.     char    szText[CBEMAXSTRLEN];
  1381. }NMCBEDRAGBEGINA, *LPNMCBEDRAGBEGINA, *PNMCBEDRAGBEGINA;
  1382. typedef struct tagNMIPADDRESS{
  1383.     NMHDR hdr;
  1384.     int iField;
  1385.     int iValue;
  1386. } NMIPADDRESS, *LPNMIPADDRESS;
  1387. #endif /*_WIN32_IE >= 0x0400*/
  1388. typedef struct {
  1389.     NMHDR hdr;
  1390.     BOOL fChanged;
  1391.     int iNewSelection;
  1392.     WCHAR szText[CBEMAXSTRLEN];
  1393.     int iWhy;
  1394. } NMCBEENDEDITW, *LPNMCBEENDEDITW, *PNMCBEENDEDITW;
  1395. typedef struct {
  1396.     NMHDR hdr;
  1397.     BOOL fChanged;
  1398.     int iNewSelection;
  1399.     char szText[CBEMAXSTRLEN];
  1400.     int iWhy;
  1401. } NMCBEENDEDITA, *LPNMCBEENDEDITA,*PNMCBEENDEDITA;
  1402. typedef struct _COLORMAP {
  1403.     COLORREF from;
  1404.     COLORREF to;
  1405. } COLORMAP,*LPCOLORMAP;
  1406. typedef struct {
  1407.     UINT uNotification;
  1408.     HWND hWnd;
  1409.     POINT ptCursor;
  1410. } DRAGLISTINFO,*LPDRAGLISTINFO;
  1411. typedef struct _TBBUTTON {
  1412.     int iBitmap;
  1413.     int idCommand;
  1414.     BYTE fsState;
  1415.     BYTE fsStyle;
  1416.     BYTE bReserved[2];
  1417.     DWORD dwData;
  1418.     int iString;
  1419. } TBBUTTON,*PTBBUTTON,*LPTBBUTTON;
  1420. typedef const TBBUTTON *LPCTBBUTTON;
  1421. #if _WIN32_IE >= 0x400
  1422. typedef struct {
  1423.     UINT cbSize;
  1424.     DWORD dwMask;
  1425.     int idCommand;
  1426.     int iImage;
  1427.     BYTE fsState;
  1428.     BYTE fsStyle;
  1429.     WORD cx;
  1430.     DWORD lParam;
  1431.     LPSTR pszText;
  1432.     int cchText;
  1433. } TBBUTTONINFOA, *LPTBBUTTONINFOA;
  1434. typedef struct {
  1435.     UINT cbSize;
  1436.     DWORD dwMask;
  1437.     int idCommand;
  1438.     int iImage;
  1439.     BYTE fsState;
  1440.     BYTE fsStyle;
  1441.     WORD cx;
  1442.     DWORD lParam;
  1443.     LPWSTR pszText;
  1444.     int cchText;
  1445. } TBBUTTONINFOW, *LPTBBUTTONINFOW;
  1446. typedef struct tagLVBKIMAGEA {
  1447.     ULONG ulFlags;              
  1448.     HBITMAP hbm;
  1449.     LPSTR pszImage;
  1450.     UINT cchImageMax;
  1451.     int xOffsetPercent;
  1452.     int yOffsetPercent;
  1453. } LVBKIMAGEA, *LPLVBKIMAGEA;
  1454. typedef struct tagLVBKIMAGEW {
  1455.     ULONG ulFlags;             
  1456.     HBITMAP hbm;
  1457.     LPWSTR pszImage;
  1458.     UINT cchImageMax;
  1459.     int xOffsetPercent;
  1460.     int yOffsetPercent;
  1461. } LVBKIMAGEW, *LPLVBKIMAGEW;
  1462. #endif /* _WIN32_IE >= 0x400 */
  1463. typedef struct {
  1464.     NMHDR hdr;
  1465.     int iItem;
  1466.     TBBUTTON tbButton;
  1467.     int cchText;
  1468.     LPTSTR pszText;
  1469. } TBNOTIFY,*LPTBNOTIFY;
  1470. typedef struct {
  1471.     HKEY hkr;
  1472.     LPCTSTR pszSubKey;
  1473.     LPCTSTR pszValueName;
  1474. } TBSAVEPARAMS;
  1475. typedef struct _IMAGEINFO {
  1476.     HBITMAP hbmImage;
  1477.     HBITMAP hbmMask;
  1478.     int Unused1;
  1479.     int Unused2;
  1480.     RECT rcImage;
  1481. } IMAGEINFO;
  1482. DECLARE_HANDLE(HIMAGELIST);
  1483. typedef struct _HDITEMA {
  1484.     UINT mask;
  1485.     int cxy;
  1486.     LPSTR pszText;
  1487.     HBITMAP hbm;
  1488.     int cchTextMax;
  1489.     int fmt;
  1490.     LPARAM lParam;
  1491. #if (_WIN32_IE >= 0x0300)
  1492.     int iImage;
  1493.     int iOrder;
  1494. #endif
  1495. #if (_WIN32_IE >= 0x0500)
  1496.     UINT type;
  1497.     LPVOID pvFilter;
  1498. #endif
  1499. } HDITEMA, * LPHDITEMA;
  1500. typedef struct _HDITEMW {
  1501.     UINT mask;
  1502.     int cxy;
  1503.     LPWSTR pszText;
  1504.     HBITMAP hbm;
  1505.     int cchTextMax;
  1506.     int fmt;
  1507.     LPARAM lParam;
  1508. #if (_WIN32_IE >= 0x0300)
  1509.     int iImage;
  1510.     int iOrder;
  1511. #endif
  1512. #if (_WIN32_IE >= 0x0500)
  1513.     UINT type;
  1514.     LPVOID pvFilter;
  1515. #endif
  1516. } HDITEMW, * LPHDITEMW;
  1517. /* for backward compatability */
  1518. #define HD_ITEMA HDITEMA
  1519. #define HD_ITEMW HDITEMW
  1520. #define HD_ITEM HDITEM
  1521. typedef struct _HD_LAYOUT {
  1522.     RECT *prc;
  1523.     WINDOWPOS *pwpos;
  1524. } HDLAYOUT, *LPHDLAYOUT;
  1525. #define HD_LAYOUT HDLAYOUT /*  backward compatability */
  1526. typedef struct _HD_HITTESTINFO {
  1527.     POINT pt;
  1528.     UINT flags;
  1529.     int iItem;
  1530. } HD_HITTESTINFO;
  1531. typedef struct _HD_NOTIFYA {
  1532.     NMHDR hdr;
  1533.     int iItem;
  1534.     int iButton;
  1535.     HD_ITEMA *pitem;
  1536. } HD_NOTIFYA;
  1537. typedef struct _HD_NOTIFYW {
  1538.     NMHDR hdr;
  1539.     int iItem;
  1540.     int iButton;
  1541.     HD_ITEMW *pitem;
  1542. } HD_NOTIFYW;
  1543. /* FIXME: NMHEADER structure (base for all events of the comctl controls)
  1544.    is the same as HD_NOTIFY depending on the value of _WIN32_IE macro.
  1545.    I'm defining both for now. */
  1546. typedef struct _NMHEADERA {
  1547.     NMHDR   hdr;
  1548.     int     iItem;
  1549.     int     iButton;
  1550.     HD_ITEMA* pitem;
  1551. }  NMHEADERA, *LPNMHEADERA;
  1552.  
  1553. typedef struct _NMHEADERW {
  1554.     NMHDR   hdr;
  1555.     int     iItem;
  1556.     int     iButton;
  1557.     HD_ITEMW* pitem;
  1558. }  NMHEADERW, *LPNMHEADERW;
  1559. #ifdef UNICODE
  1560. #define NMHEADER NMHEADERW
  1561. #define LPNMHEADER LPNMHEADERW
  1562. #else
  1563. #define NMHEADER NMHEADERA
  1564. #define LPNMHEADER LPNMHEADERA
  1565. #endif
  1566. /* End FIXME. */
  1567. typedef struct tagNMHDDISPINFOA {
  1568.     NMHDR   hdr;
  1569.     int     iItem;
  1570.     UINT    mask;
  1571.     LPSTR   pszText;
  1572.     int     cchTextMax;
  1573.     int     iImage;
  1574.     LPARAM  lParam;
  1575. } NMHDDISPINFOA, *LPNMHDDISPINFOA;
  1576. typedef struct tagNMHDDISPINFOW {
  1577.     NMHDR   hdr;
  1578.     int     iItem;
  1579.     UINT    mask;
  1580.     LPWSTR  pszText;
  1581.     int     cchTextMax;
  1582.     int     iImage;
  1583.     LPARAM  lParam;
  1584. } NMHDDISPINFOW, *LPNMHDDISPINFOW;
  1585. typedef struct tagNMCUSTOMDRAWINFO {
  1586.     NMHDR    hdr;
  1587.     DWORD    dwDrawStage;
  1588.     HDC      hdc;
  1589.     RECT     rc;
  1590.     DWORD    dwItemSpec;
  1591.     UINT     uItemState;
  1592.     LPARAM   lItemlParam;
  1593. } NMCUSTOMDRAW, *LPNMCUSTOMDRAW;
  1594. typedef struct tagNMLVCUSTOMDRAW {
  1595.     NMCUSTOMDRAW nmcd;
  1596.     COLORREF     clrText;
  1597.     COLORREF     clrTextBk;
  1598. #if _WIN32_IE >= 0x0400
  1599.     int          iSubItem;
  1600. #endif
  1601. } NMLVCUSTOMDRAW, *LPNMLVCUSTOMDRAW;
  1602. typedef struct tagNMTVCUSTOMDRAW {
  1603.     NMCUSTOMDRAW nmcd;
  1604.     COLORREF     clrText;
  1605.     COLORREF     clrTextBk;
  1606. #if _WIN32_IE >= 0x0400
  1607.     int          iLevel;
  1608. #endif
  1609. } NMTVCUSTOMDRAW, *LPNMTVCUSTOMDRAW;
  1610. #if (_WIN32_IE >= 0x400)
  1611. typedef struct tagNMITEMACTIVATE {
  1612.     NMHDR hdr;
  1613.     int iItem;
  1614.     int iSubItem;
  1615.     UINT uNewState;
  1616.     UINT uOldState;
  1617.     UINT uChanged;
  1618.     POINT ptAction;
  1619.     LPARAM lParam;
  1620.     UINT uKeyFlags;
  1621. } NMITEMACTIVATE, *LPNMITEMACTIVATE;
  1622. #endif /* _WIN32_IE >= 0x0400 */
  1623. typedef struct tagTBADDBITMAP {
  1624.     HINSTANCE hInst;
  1625.     UINT nID;
  1626. } TBADDBITMAP,*LPTBADDBITMAP;
  1627. typedef struct tagTBSAVEPARAMSA {
  1628.     HKEY hkr;
  1629.     LPCSTR pszSubKey;
  1630.     LPCSTR pszValueName;
  1631. } TBSAVEPARAMSA;
  1632. typedef struct tagTBSAVEPARAMSW {
  1633.     HKEY hkr;
  1634.     LPCWSTR pszSubKey;
  1635.     LPCWSTR pszValueName;
  1636. } TBSAVEPARAMSW;
  1637. typedef struct {
  1638.     HINSTANCE hInstOld;
  1639.     UINT nIDOld;
  1640.     HINSTANCE hInstNew;
  1641.     UINT nIDNew;
  1642.     int nButtons;
  1643. } TBREPLACEBITMAP,*LPTBREPLACEBITMAP;
  1644. typedef struct tagNMTOOLBARA {
  1645.     NMHDR hdr;
  1646.     int iItem;
  1647.     TBBUTTON tbButton;
  1648.     int cchText;
  1649.     LPSTR pszText;
  1650. #if (_WIN32_IE >= 0x500)
  1651.     RECT    rcButton;
  1652. #endif
  1653. } NMTOOLBARA, *LPNMTOOLBARA;
  1654. #define TBNOTIFYA NMTOOLBARA
  1655. #define LPTBNOTIFYA LPNMTOOLBARA
  1656. typedef struct tagNMTOOLBARW {
  1657.     NMHDR hdr;
  1658.     int iItem;
  1659.     TBBUTTON tbButton;
  1660.     int cchText;
  1661.     LPWSTR pszText;
  1662. #if (_WIN32_IE >= 0x500)
  1663.     RECT    rcButton;
  1664. #endif
  1665. } NMTOOLBARW, *LPNMTOOLBARW;
  1666. #define TBNOTIFYW NMTOOLBARW
  1667. #define LPTBNOTIFYW LPNMTOOLBARW
  1668. typedef struct tagTOOLINFOA {
  1669.     UINT cbSize;
  1670.     UINT uFlags;
  1671.     HWND hwnd;
  1672.     UINT uId;
  1673.     RECT rect;
  1674.     HINSTANCE hinst;
  1675.     LPSTR lpszText;
  1676. #if (_WIN32_IE >= 0x0300)
  1677.     LPARAM lParam;
  1678. #endif
  1679. } TOOLINFOA,*PTOOLINFOA,*LPTOOLINFOA;
  1680. typedef struct tagTOOLINFOW {
  1681.     UINT cbSize;
  1682.     UINT uFlags;
  1683.     HWND hwnd;
  1684.     UINT uId;
  1685.     RECT rect;
  1686.     HINSTANCE hinst;
  1687.     LPWSTR lpszText;
  1688. #if (_WIN32_IE >= 0x0300)
  1689.     LPARAM lParam;
  1690. #endif
  1691. } TOOLINFOW,*PTOOLINFOW,*LPTOOLINFOW;
  1692. typedef struct _TT_HITTESTINFOA {
  1693.     HWND hwnd;
  1694.     POINT pt;
  1695.     TOOLINFOA ti;
  1696. } TTHITTESTINFOA,*LPHITTESTINFOA;
  1697. typedef struct _TT_HITTESTINFOW {
  1698.     HWND hwnd;
  1699.     POINT pt;
  1700.     TOOLINFOW ti;
  1701. } TTHITTESTINFOW,*LPHITTESTINFOW;
  1702. typedef struct tagNMTTDISPINFOA {
  1703.     NMHDR hdr;
  1704.     LPSTR lpszText;
  1705.     char szText[80];
  1706.     HINSTANCE hinst;
  1707.     UINT uFlags;
  1708. #if (_WIN32_IE >= 0x0300)
  1709.     LPARAM lParam;
  1710. #endif
  1711. } NMTTDISPINFOA, *LPNMTTDISPINFOA;
  1712. #define TOOLTIPTEXTA    NMTTDISPINFOA
  1713. #define LPTOOLTIPTEXTA    LPNMTTDISPINFOA
  1714. typedef struct tagNMTTDISPINFOW {
  1715.      NMHDR hdr;
  1716.      LPWSTR lpszText;
  1717.      WCHAR szText[80];
  1718.      HINSTANCE hinst;
  1719.      UINT uFlags;
  1720. #if (_WIN32_IE >= 0x0300)
  1721.     LPARAM lParam;
  1722. #endif
  1723. } NMTTDISPINFOW, *LPNMTTDISPINFOW;
  1724. #define TOOLTIPTEXTW    NMTTDISPINFOW
  1725. #define LPTOOLTIPTEXTW    LPNMTTDISPINFOW
  1726. typedef struct _UDACCEL {
  1727.     UINT nSec;
  1728.     UINT nInc;
  1729. } UDACCEL,*LPUDACCEL;
  1730. typedef struct _NM_UPDOWN {
  1731.     NMHDR hdr;
  1732.     int iPos;
  1733.     int iDelta;
  1734. } NM_UPDOWN,*LPNM_UPDOWN;
  1735. typedef struct _LVITEMA {
  1736.     UINT mask;
  1737.     int iItem;
  1738.     int iSubItem;
  1739.     UINT state;
  1740.     UINT stateMask;
  1741.     LPSTR pszText;
  1742.     int cchTextMax;
  1743.     int iImage;
  1744.     LPARAM lParam;
  1745. #if (_WIN32_IE >= 0x0300)
  1746.     int iIndent;
  1747. #endif
  1748. } LVITEMA, FAR *LPLVITEMA;
  1749. #define _LV_ITEMA _LVITEMA
  1750. #define LV_ITEMA LVITEMA
  1751. typedef struct _LVITEMW {
  1752.     UINT mask;
  1753.     int iItem;
  1754.     int iSubItem;
  1755.     UINT state;
  1756.     UINT stateMask;
  1757.     LPWSTR pszText;
  1758.     int cchTextMax;
  1759.     int iImage;
  1760.     LPARAM lParam;
  1761. #if (_WIN32_IE >= 0x0300)
  1762.     int iIndent;
  1763. #endif
  1764. } LVITEMW, FAR *LPLVITEMW;
  1765. #define _LV_ITEMW _LVITEMW
  1766. #define LV_ITEMW LVITEMW
  1767. typedef struct tagLVFINDINFOA {
  1768.     UINT flags;
  1769.     LPCSTR psz;
  1770.     LPARAM lParam;
  1771.     POINT pt;
  1772.     UINT vkDirection;
  1773. } LVFINDINFOA, FAR* LPFINDINFOA;
  1774. #define _LV_FINDINFOA tagLVFINDINFOA
  1775. #define LV_FINDINFOA LVFINDINFOA
  1776. typedef struct tagLVFINDINFOW {
  1777.     UINT flags;
  1778.     LPCWSTR psz;
  1779.     LPARAM lParam;
  1780.     POINT pt;
  1781.     UINT vkDirection;
  1782. } LVFINDINFOW, FAR* LPFINDINFOW;
  1783. #define _LV_FINDINFOW tagLVFINDINFOW
  1784. #define LV_FINDINFOW LVFINDINFOW
  1785. typedef struct _LVHITTESTINFO {
  1786.     POINT pt;
  1787.     UINT flags;
  1788.     int iItem;
  1789. #if (_WIN32_IE >= 0x0300)
  1790.     int iSubItem;
  1791. #endif
  1792. } LVHITTESTINFO;
  1793. #define _LV_HITTESTINFO _LVHITTESTINFO
  1794. #define LV_HITTESTINFO LVHITTESTINFO
  1795. typedef struct _LVCOLUMNA {
  1796.     UINT mask;
  1797.     int fmt;
  1798.     int cx;
  1799.     LPSTR pszText;
  1800.     int cchTextMax;
  1801.     int iSubItem;
  1802. #if (_WIN32_IE >= 0x0300)
  1803.     int iImage;
  1804.     int iOrder;
  1805. #endif
  1806. } LVCOLUMNA, FAR *LPLVCOLUMNA;
  1807. #define _LV_COLUMNA _LVCOLUMNA
  1808. #define LV_COLUMNA LVCOLUMNA
  1809. typedef struct _LVCOLUMNW {
  1810.     UINT mask;
  1811.     int fmt;
  1812.     int cx;
  1813.     LPWSTR pszText;
  1814.     int cchTextMax;
  1815.     int iSubItem;
  1816. #if (_WIN32_IE >= 0x0300)
  1817.     int iImage;
  1818.     int iOrder;
  1819. #endif
  1820. } LVCOLUMNW, FAR *LPLVCOLUMNW;
  1821. #define _LV_COLUMNW _LVCOLUMNW
  1822. #define LV_COLUMNW LVCOLUMNW
  1823. typedef int(CALLBACK *PFNLVCOMPARE)(LPARAM,LPARAM,LPARAM);
  1824. typedef struct tagNMLISTVIEW {
  1825.     NMHDR hdr;
  1826.     int iItem;
  1827.     int iSubItem;
  1828.     UINT uNewState;
  1829.     UINT uOldState;
  1830.     UINT uChanged;
  1831.     POINT ptAction;
  1832.     LPARAM lParam;
  1833. } NMLISTVIEW, *LPNMLISTVIEW;
  1834. /* for backward compatability */
  1835. #define _NM_LISTVIEW  tagNMLISTVIEW
  1836. #define NM_LISTVIEW NMLISTVIEW
  1837. #define LPNM_LISTVIEW LPNMLISTVIEW
  1838. typedef struct tagNMLVDISPINFOA {
  1839.     NMHDR hdr;
  1840.     LV_ITEMA item;
  1841. } NMLVDISPINFOA, FAR *LPNMLVDISPINFOA;
  1842. #define _LV_DISPINFOA tagNMLVDISPINFOA
  1843. #define LV_DISPINFOA NMLVDISPINFOA
  1844. typedef struct tagNMLVDISPINFOW {
  1845.     NMHDR hdr;
  1846.     LV_ITEMW item;
  1847. } NMLVDISPINFOW, FAR *LPNMLVDISPINFOW;
  1848. #define _LV_DISPINFOW tagNMLVDISPINFOW
  1849. #define LV_DISPINFOW NMLVDISPINFOW
  1850. typedef struct _LV_KEYDOWN {
  1851.     NMHDR hdr;
  1852.     WORD wVKey;
  1853.     UINT flags;
  1854. } LV_KEYDOWN;
  1855. typedef struct tagNMLVCACHEHINT {
  1856.     NMHDR hdr;
  1857.     int iFrom;
  1858.     int iTo;
  1859. } NMLVCACHEHINT, *PNMLVCACHEHINT;
  1860. #define NM_CACHEHINT NMLVCACHEHINT
  1861. DECLARE_HANDLE(HTREEITEM);
  1862. typedef struct tagTVITEMA {
  1863.     UINT mask;
  1864.     HTREEITEM hItem;
  1865.     UINT state;
  1866.     UINT stateMask;
  1867.     LPSTR pszText;
  1868.     int cchTextMax;
  1869.     int iImage;
  1870.     int iSelectedImage;
  1871.     int cChildren;
  1872.     LPARAM lParam;
  1873. } TVITEMA,*LPTVITEMA;
  1874. #define _TV_ITEMA tagTVITEMA
  1875. #define TV_ITEMA TVITEMA
  1876. #define LPTV_ITEMA LPTVITEMA
  1877. typedef struct tagTVITEMW {
  1878.     UINT mask;
  1879.     HTREEITEM hItem;
  1880.     UINT state;
  1881.     UINT stateMask;
  1882.     LPWSTR pszText;
  1883.     int cchTextMax;
  1884.     int iImage;
  1885.     int iSelectedImage;
  1886.     int cChildren;
  1887.     LPARAM lParam;
  1888. } TVITEMW,*LPTVITEMW;
  1889. #define _TV_ITEMW tagTVITEMW
  1890. #define TV_ITEMW TVITEMW
  1891. #define LPTV_ITEMW LPTVITEMW
  1892. #if (_WIN32_IE >= 0x0400)
  1893. typedef struct tagTVITEMEXA {
  1894.     UINT mask;
  1895.     HTREEITEM hItem;
  1896.     UINT state;
  1897.     UINT stateMask;
  1898.     LPSTR pszText;
  1899.     int cchTextMax;
  1900.     int iImage;
  1901.     int iSelectedImage;
  1902.     int cChildren;
  1903.     LPARAM lParam;
  1904.     int iIntegral;
  1905. } TVITEMEXA, *LPTVITEMEXA;
  1906. typedef struct tagTVITEMEXW {
  1907.     UINT mask;
  1908.     HTREEITEM hItem;
  1909.     UINT state;
  1910.     UINT stateMask;
  1911.     LPWSTR pszText;
  1912.     int cchTextMax;
  1913.     int iImage;
  1914.     int iSelectedImage;
  1915.     int cChildren;
  1916.     LPARAM lParam;
  1917.     int iIntegral;
  1918. } TVITEMEXW, *LPTVITEMEXW;
  1919. #endif /* _WIN32_IE >= 0x0400 */
  1920. typedef struct tagTVINSERTSTRUCTA {
  1921.     HTREEITEM hParent;
  1922.     HTREEITEM hInsertAfter;
  1923. #if (_WIN32_IE >= 0x0400)
  1924.     _ANONYMOUS_UNION union {
  1925.     TVITEMEXA itemex;
  1926.     TV_ITEMA item;
  1927.     } DUMMYUNIONNAME;
  1928. #else
  1929.     TV_ITEMA item;
  1930. #endif
  1931. } TVINSERTSTRUCTA,*LPTVINSERTSTRUCTA;
  1932. #define _TV_INSERTSTRUCTA tagTVINSERTSTRUCTA
  1933. #define TV_INSERTSTRUCTA TVINSERTSTRUCTA
  1934. #define LPTV_INSERTSTRUCTA LPTVINSERTSTRUCTA
  1935. typedef struct tagTVINSERTSTRUCTW {
  1936.     HTREEITEM hParent;
  1937.     HTREEITEM hInsertAfter;
  1938. #if (_WIN32_IE >= 0x0400)
  1939.     _ANONYMOUS_UNION union {
  1940.       TVITEMEXW itemex;
  1941.       TV_ITEMW  item;
  1942.     } DUMMYUNIONNAME;
  1943. #else
  1944.     TV_ITEMW item;
  1945. #endif
  1946. } TVINSERTSTRUCTW,*LPTVINSERTSTRUCTW;
  1947. #define _TV_INSERTSTRUCTW tagTVINSERTSTRUCTW
  1948. #define TV_INSERTSTRUCTW TVINSERTSTRUCTW
  1949. #define LPTV_INSERTSTRUCTW LPTVINSERTSTRUCTW
  1950. typedef struct tagTVHITTESTINFO {
  1951.     POINT pt;
  1952.      UINT flags;
  1953.     HTREEITEM hItem;
  1954. } TVHITTESTINFO, *LPTVHITTESTINFO;
  1955. #define _TV_HITTESTINFO tagTVHITTESTINFO
  1956. #define TV_HITTESTINFO TVHITTESTINFO
  1957. #define LPTV_HITTESTINFO LPTVHITTESTINFO
  1958. typedef int(CALLBACK *PFNTVCOMPARE)(LPARAM,LPARAM,LPARAM);
  1959. typedef struct _TV_SORTCB {
  1960.     HTREEITEM hParent;
  1961.     PFNTVCOMPARE lpfnCompare;
  1962.     LPARAM lParam;
  1963. } TV_SORTCB,*LPTV_SORTCB;
  1964. typedef struct tagNMTREEVIEWA {
  1965.     NMHDR hdr;
  1966.     UINT action;
  1967.     TV_ITEMA itemOld;
  1968.     TV_ITEMA itemNew;
  1969.     POINT ptDrag;
  1970. } NMTREEVIEWA,*LPNMTREEVIEWA;
  1971. #define _NM_TREEVIEWA tagNMTREEVIEWA
  1972. #define NM_TREEVIEWA NMTREEVIEWA
  1973. #define LPNM_TREEVIEWA LPNMTREEVIEWA
  1974. typedef struct tagNMTREEVIEWW {
  1975.     NMHDR hdr;
  1976.     UINT action;
  1977.     TV_ITEMW itemOld;
  1978.     TV_ITEMW itemNew;
  1979.     POINT ptDrag;
  1980. } NMTREEVIEWW,*LPNMTREEVIEWW;
  1981. #define _NM_TREEVIEWW tagNMTREEVIEWW
  1982. #define NM_TREEVIEWW NMTREEVIEWW
  1983. #define LPNM_TREEVIEWW LPNMTREEVIEWW
  1984. typedef struct _TV_DISPINFOA {
  1985.     NMHDR hdr;
  1986.     TV_ITEMA item;
  1987. } TV_DISPINFOA;
  1988. typedef struct _TV_DISPINFOW {
  1989.     NMHDR hdr;
  1990.     TV_ITEMW item;
  1991. } TV_DISPINFOW;
  1992. typedef struct _TV_KEYDOWN {
  1993.     NMHDR hdr;
  1994.     WORD wVKey;
  1995.     UINT flags;
  1996. } TV_KEYDOWN;
  1997. typedef struct _TC_ITEMHEADERA {
  1998.     UINT mask;
  1999.     UINT lpReserved1;
  2000.     UINT lpReserved2;
  2001.     LPSTR pszText;
  2002.     int cchTextMax;
  2003.     int iImage;
  2004. } TC_ITEMHEADERA;
  2005. typedef struct _TC_ITEMHEADERW {
  2006.     UINT mask;
  2007.     UINT lpReserved1;
  2008.     UINT lpReserved2;
  2009.     LPWSTR pszText;
  2010.     int cchTextMax;
  2011.     int iImage;
  2012. } TC_ITEMHEADERW;
  2013. typedef struct _TC_ITEMA {
  2014.     UINT mask;
  2015.     UINT lpReserved1;
  2016.     UINT lpReserved2;
  2017.     LPSTR pszText;
  2018.     int cchTextMax;
  2019.     int iImage;
  2020.     LPARAM lParam;
  2021. } TC_ITEMA;
  2022. typedef struct _TC_ITEMW {
  2023.     UINT mask;
  2024.     UINT lpReserved1;
  2025.     UINT lpReserved2;
  2026.     LPWSTR pszText;
  2027.     int cchTextMax;
  2028.     int iImage;
  2029.     LPARAM lParam;
  2030. } TC_ITEMW;
  2031. typedef struct _TC_HITTESTINFO {
  2032.     POINT pt;
  2033.     UINT flags;
  2034. } TC_HITTESTINFO,*LPTC_HITTESTINFO;
  2035. typedef struct _TC_KEYDOWN {
  2036.     NMHDR hdr;
  2037.     WORD wVKey;
  2038.     UINT flags;
  2039. } TC_KEYDOWN;
  2040. #if (_WIN32_IE >= 0x0300)
  2041. typedef struct tagINITCOMMONCONTROLSEX {
  2042.     DWORD dwSize;
  2043.     DWORD dwICC;
  2044. } INITCOMMONCONTROLSEX,*LPINITCOMMONCONTROLSEX;
  2045. #endif
  2046. typedef struct tagPBRANGE {
  2047.     int iLow;
  2048.     int iHigh;
  2049. } PBRANGE,*PPBRANGE;
  2050. typedef struct tagCOLORSCHEME {
  2051.     DWORD dwSize;
  2052.     COLORREF clrBtnHighlight;
  2053.     COLORREF clrBtnShadow;
  2054. } COLORSCHEME,*LPCOLORSCHEME;
  2055. typedef struct tagTCITEM {
  2056.     UINT mask;
  2057. #if (_WIN32_IE >= 0x0300)
  2058.     DWORD dwState;
  2059.     DWORD dwStateMask;
  2060. #else
  2061.     UINT lpReserved1;
  2062.     UINT lpReserved2;
  2063. #endif
  2064. #ifdef UNICODE
  2065.     LPWSTR pszText;
  2066. #else
  2067.     LPSTR pszText;
  2068. #endif
  2069.     int cchTextMax;
  2070.     int iImage;
  2071.     LPARAM lParam;
  2072. } TCITEM,*LPTCITEM;
  2073. typedef struct tagMCHITTESTINFO {
  2074.     UINT cbSize;
  2075.     POINT pt;
  2076.     UINT uHit;
  2077.     SYSTEMTIME st;
  2078. }MCHITTESTINFO, *PMCHITTESTINFO;
  2079. typedef DWORD MONTHDAYSTATE;
  2080. typedef MONTHDAYSTATE *LPMONTHDAYSTATE;
  2081. typedef struct tagNMDAYSTATE {
  2082.     NMHDR nmhdr;
  2083.     SYSTEMTIME stStart;
  2084.     int cDayState;
  2085.     LPMONTHDAYSTATE prgDayState;
  2086. }NMDAYSTATE,*LPNMDAYSTATE;
  2087. typedef struct tagREBARINFO {
  2088.     UINT cbSize;
  2089.     UINT fMask;
  2090.     HIMAGELIST himl;
  2091. } REBARINFO,*LPREBARINFO;
  2092. typedef struct tagREBARBANDINFOA {
  2093.     UINT cbSize;
  2094.     UINT fMask;
  2095.     UINT fStyle;
  2096.     COLORREF clrFore;
  2097.     COLORREF clrBack;
  2098.     LPSTR lpText;
  2099.     UINT cch;
  2100.     int iImage;
  2101.     HWND hwndChild;
  2102.     UINT cxMinChild;
  2103.     UINT cyMinChild;
  2104.     UINT cx;
  2105.     HBITMAP hbmBack;
  2106.     UINT wID;
  2107. #if (_WIN32_IE >= 0x0400)
  2108.     UINT cyChild;
  2109.     UINT cyMaxChild;
  2110.     UINT cyIntegral;
  2111.     UINT cxIdeal;
  2112.     LPARAM lParam;
  2113.     UINT cxHeader;
  2114. #endif
  2115. } REBARBANDINFOA,*LPREBARBANDINFOA;
  2116. typedef struct tagREBARBANDINFOW {
  2117.     UINT cbSize;
  2118.     UINT fMask;
  2119.     UINT fStyle;
  2120.     COLORREF clrFore;
  2121.     COLORREF clrBack;
  2122.     LPWSTR lpText;
  2123.     UINT cch;
  2124.     int iImage;
  2125.     HWND hwndChild;
  2126.     UINT cxMinChild;
  2127.     UINT cyMinChild;
  2128.     UINT cx;
  2129.     HBITMAP hbmBack;
  2130.     UINT wID;
  2131. #if (_WIN32_IE >= 0x0400)
  2132.     UINT cyChild;
  2133.     UINT cyMaxChild;
  2134.     UINT cyIntegral;
  2135.     UINT cxIdeal;
  2136.     LPARAM lParam;
  2137.     UINT cxHeader;
  2138. #endif
  2139. } REBARBANDINFOW,*LPREBARBANDINFOW;
  2140. typedef REBARBANDINFOA const *LPCREBARBANDINFOA;
  2141. typedef REBARBANDINFOW const *LPCREBARBANDINFOW;
  2142. #define REBARBANDINFOA_V3_SIZE CCSIZEOF_STRUCT(REBARBANDINFOA,wID)
  2143. #define REBARBANDINFOW_V3_SIZE CCSIZEOF_STRUCT(REBARBANDINFOW, wID)
  2144.  
  2145. #if (_WIN32_IE >= 0x0300)
  2146. typedef struct tagTCHITTESTINFO {
  2147.     POINT pt;
  2148.     UINT flags;
  2149. } TCHITTESTINFO,*LPTCHITTESTINFO;
  2150. typedef struct tagIMAGELISTDRAWPARAMS {
  2151.     DWORD cbSize;
  2152.     HIMAGELIST himl;
  2153.     int i;
  2154.     HDC hdcDst;
  2155.     int x;
  2156.     int y;
  2157.     int cx;
  2158.     int cy;
  2159.     int xBitmap;        
  2160.     int yBitmap;        
  2161.     COLORREF rgbBk;
  2162.     COLORREF rgbFg;
  2163.     UINT fStyle;
  2164.     DWORD dwRop;
  2165. } IMAGELISTDRAWPARAMS,*LPIMAGELISTDRAWPARAMS;
  2166. #endif /* (_WIN32_IE >= 0x0300) */
  2167. #if (_WIN32_IE >= 0x0400)
  2168. typedef struct tagNMREBARCHILDSIZE {
  2169.     NMHDR hdr;
  2170.     UINT uBand;
  2171.     UINT wID;
  2172.     RECT rcChild;
  2173.     RECT rcBand;
  2174. } NMREBARCHILDSIZE,*LPNMREBARCHILDSIZE;
  2175. typedef struct tagNMREBAR {
  2176.     NMHDR hdr;
  2177.     DWORD dwMask;
  2178.     UINT uBand;
  2179.     UINT fStyle;
  2180.     UINT wID;
  2181.     LPARAM lParam;
  2182. } NMREBAR,*LPNMREBAR;
  2183. typedef struct tagNMRBAUTOSIZE {
  2184.     NMHDR hdr;
  2185.     BOOL fChanged;
  2186.     RECT rcTarget;
  2187.     RECT rcActual;
  2188. } NMRBAUTOSIZE,*LPNMRBAUTOSIZE;
  2189. #if (_WIN32_IE >= 0x0500)
  2190. typedef struct tagNMREBARCHEVRON {
  2191.     NMHDR hdr;
  2192.     UINT uBand;
  2193.     UINT wID;
  2194.     LPARAM lParam;
  2195.     RECT rc;
  2196.     LPARAM lParamNM;
  2197. } NMREBARCHEVRON, *LPNMREBARCHEVRON;
  2198. #endif
  2199. typedef struct _RB_HITTESTINFO {
  2200.     POINT pt;
  2201.     UINT flags;
  2202.     int iBand;
  2203. } RBHITTESTINFO,*LPRBHITTESTINFO;
  2204. #endif
  2205.  
  2206. #define INDEXTOOVERLAYMASK(i) ((i)<<8)
  2207. #define INDEXTOSTATEIMAGEMASK(i) ((i)<<12)
  2208. #define HANDLE_WM_NOTIFY(h,w,l,f) (f)((h),(int)(w),(NMHDR*)(l))
  2209. #define FORWARD_WM_NOTIFY(h,i,p,f) (LRESULT)(f)((h),WM_NOTIFY,(WPARAM)(int)(i),(LPARAM)(NMHDR*)(p))
  2210. #define CCSIZEOF_STRUCT(n,m) (((int)((PBYTE)(&((s*)0)->m)-((PBYTE)((s*)0))))+sizeof(((s*)0)->m))
  2211. #define MAKEIPADDRESS(b1,b2,b3,b4) ((LPARAM)(((DWORD)(b1)<<24)+((DWORD)(b2)<<16)+((DWORD)(b3)<<8)+((DWORD)(b4))))
  2212. #define MAKEIPRANGE(low,high) ((LPARAM)(WORD)(((BYTE)(high)<<8)+(BYTE)(low)))
  2213. #define FIRST_IPADDRESS(a) ((a>>24) & 0xff)
  2214. #define SECOND_IPADDRESS(a) ((a>>16) & 0xff)
  2215. #define THIRD_IPADDRESS(a)  ((a>>8) & 0xff)
  2216. #define FOURTH_IPADDRESS(a) (a & 0xff)
  2217. #define Animate_Create(w,i,s,hI) CreateWindow(ANIMATE_CLASS,NULL,s,0,0,0,0,w,(HMENU)(i),hI,NULL)
  2218. #define Animate_Open(w,f) (BOOL)SNDMSG(w,ACM_OPEN,0,(LPARAM)f)
  2219. #define Animate_Play(w,f,t,r) (BOOL)SNDMSG(w,ACM_PLAY,(r),(LPARAM)MAKELONG(f,t))
  2220. #define Animate_Stop(w)    (BOOL)SNDMSG(w,ACM_STOP,0,0)
  2221. #define Animate_Close(w)    Animate_Open(w,NULL)
  2222. #define Animate_Seek(w,f)    Animate_Play(w,f,f,1)
  2223. HBITMAP WINAPI CreateMappedBitmap(HINSTANCE,int,UINT,LPCOLORMAP,int);
  2224. HWND WINAPI CreateStatusWindowA(LONG,LPCSTR,HWND,UINT);
  2225. HWND WINAPI CreateStatusWindowW(LONG,LPCWSTR,HWND,UINT);
  2226. HWND WINAPI CreateToolbarEx(HWND,DWORD,UINT,int,HINSTANCE,UINT,LPCTBBUTTON,int,int,int,int,int,UINT);
  2227. HWND WINAPI CreateUpDownControl(DWORD,int,int,int,int,HWND,int,HINSTANCE,HWND,int,int,int);
  2228. #define DateTime_GetMonthCal(hwnd) SNDMSG(hwnd, DTM_GETMONTHCAL, 0, 0)
  2229. #define DateTime_GetMonthCalColor(hwnd, icolor) SNDMSG(hwnd, DTM_GETMONTHCAL, (WPARAM)icolor,0)
  2230. #define DateTime_GetMonthCalFont(hwnd) SNDMSG(hwnd,DTM_GETMCFONT,0,0)
  2231. #define DateTime_GetRange(hwnd,lpsystimearray) SNDMSG(hwnd,DTM_GETRANGE,0,(LPARAM)lpsystimearray)
  2232. #define DateTime_GetSystemTime(hwnd,lpsystime) SNDMSG(hwnd,DTM_GETSYSTEMTIME,0,(LPARAM)lpsystime)
  2233. #define DateTime_SetFormat(hwnd,lpszformat) SNDMSG(hwnd,DTM_SETFORMAT,0,(LPARAM)lpszformat)
  2234. #define DateTime_SetMonthCalColor(hwnd,icolor,clr) SNDMSG(hwnd,DTM_SETMCCOLOR,(WPARAM)icolor,(LPARAM)clr)
  2235. #define DateTime_SetMonthCalFont(hwnd,hfont,lparam) SNDMSG(hwnd,DTM_SETMCFONT,(WPARAM)hfont,(LPARAM)lparam)
  2236. #define DateTime_SetRange(hwnd,flags,lpsystimearray) SNDMSG(hwnd,DTM_SETRANGE,(WPARAM)flags,(LPARAM)lpsystimearray)
  2237. #define DateTime_SetSystemTime(hwnd,flag,lpsystime) SNDMSG(hwnd,DTM_SETSYSTEMTIME,(WPARAM)flag,(LPARAM)lpsystime)
  2238. void WINAPI DrawInsert(HWND,HWND,int);
  2239. void WINAPI DrawStatusTextA(HDC,LPRECT,LPCSTR,UINT);
  2240. void WINAPI DrawStatusTextW(HDC,LPRECT,LPCWSTR,UINT);
  2241. void WINAPI GetEffectiveClientRect(HWND,LPRECT,LPINT);
  2242. #define Header_GetItemCount(w) (int)SNDMSG((w),HDM_GETITEMCOUNT,0,0)
  2243. #define Header_InsertItem(w,i,phdi) (int)SNDMSG((w),HDM_INSERTITEM,(WPARAM)(int)(i),(LPARAM)(const HD_ITEM*)(phdi))
  2244. #define Header_DeleteItem(w,i) (BOOL)SNDMSG((w),HDM_DELETEITEM,(WPARAM)(int)(i),0)
  2245. #define Header_GetItem(w,i,phdi) (BOOL)SNDMSG((w),HDM_GETITEM,(WPARAM)(int)(i),(LPARAM)(HD_ITEM*)(phdi))
  2246. #define Header_SetItem(w,i,phdi) (BOOL)SNDMSG((w),HDM_SETITEM,(WPARAM)(int)(i),(LPARAM)(const HD_ITEM*)(phdi))
  2247. #define Header_Layout(w,l) (BOOL)SNDMSG((w),HDM_LAYOUT,0,(LPARAM)(HD_LAYOUT*)(l))
  2248. #if (_WIN32_IE >= 0x0300)
  2249. #define Header_GetItemRect(w,i,r) (BOOL)SNDMSG((w),HDM_GETITEMRECT,(WPARAM)(i),(LPARAM)(r))
  2250. #define Header_SetOrderArray(w,l,a) (BOOL)SNDMSG((w),HDM_SETORDERARRAY,(WPARAM)(l),(LPARAM)(a))
  2251. #endif
  2252. int WINAPI ImageList_Add(HIMAGELIST,HBITMAP,HBITMAP);
  2253. #define ImageList_AddIcon(l,i) ImageList_ReplaceIcon(l,-1,i)
  2254. int WINAPI ImageList_AddMasked(HIMAGELIST,HBITMAP,COLORREF);
  2255. BOOL WINAPI ImageList_BeginDrag(HIMAGELIST,int,int,int);
  2256. HIMAGELIST WINAPI ImageList_Create(int,int,UINT,int,int);
  2257. BOOL WINAPI ImageList_Destroy(HIMAGELIST);
  2258. BOOL WINAPI ImageList_DragEnter(HWND,int,int);
  2259. BOOL WINAPI ImageList_DragLeave(HWND);
  2260. BOOL WINAPI ImageList_DragMove(int,int);
  2261. BOOL WINAPI ImageList_DragShowNolock(BOOL);
  2262. BOOL WINAPI ImageList_Draw(HIMAGELIST,int,HDC,int,int,UINT);
  2263. BOOL WINAPI ImageList_DrawEx(HIMAGELIST,int,HDC,int,int,int,int,COLORREF,COLORREF,UINT);
  2264. void WINAPI ImageList_EndDrag(VOID);
  2265. #define ImageList_ExtractIcon(h,l,i) ImageList_GetIcon(l,i,0)
  2266. COLORREF WINAPI ImageList_GetBkColor(HIMAGELIST);
  2267. HIMAGELIST WINAPI ImageList_GetDragImage(LPPOINT,LPPOINT);
  2268. HICON WINAPI ImageList_GetIcon(HIMAGELIST,int,UINT);
  2269. BOOL WINAPI ImageList_GetIconSize(HIMAGELIST,int*,int*);
  2270. int WINAPI ImageList_GetImageCount(HIMAGELIST);
  2271. BOOL WINAPI ImageList_GetImageInfo(HIMAGELIST,int,IMAGEINFO*);
  2272. #define ImageList_LoadBitmap(h,l,x,G,M) ImageList_LoadImage(h,l,x,G,M,IMAGE_BITMAP,0)
  2273. HIMAGELIST WINAPI ImageList_LoadImageA(HINSTANCE,LPCSTR,int,int,COLORREF,UINT,UINT);
  2274. HIMAGELIST WINAPI ImageList_LoadImageW(HINSTANCE,LPCWSTR,int,int,COLORREF,UINT,UINT);
  2275. HIMAGELIST WINAPI ImageList_Merge(HIMAGELIST,int,HIMAGELIST,int,int,int);
  2276. BOOL WINAPI ImageList_Remove(HIMAGELIST,int);
  2277. #define ImageList_RemoveAll(l) ImageList_Remove(l,-1)
  2278. BOOL WINAPI ImageList_Replace(HIMAGELIST,int,HBITMAP,HBITMAP);
  2279. int WINAPI ImageList_ReplaceIcon(HIMAGELIST,int,HICON);
  2280. COLORREF WINAPI ImageList_SetBkColor(HIMAGELIST,COLORREF);
  2281. BOOL WINAPI ImageList_SetDragCursorImage(HIMAGELIST,int,int,int);
  2282. BOOL WINAPI ImageList_SetIconSize(HIMAGELIST,int,int);
  2283. BOOL WINAPI ImageList_SetOverlayImage(HIMAGELIST,int,int);
  2284. #ifdef _OBJIDL_H
  2285. HIMAGELIST WINAPI ImageList_Read(LPSTREAM);
  2286. BOOL WINAPI ImageList_Write(HIMAGELIST,LPSTREAM);
  2287. #endif
  2288. void WINAPI InitCommonControls(void);
  2289. #if (_WIN32_IE >= 0x0300)
  2290. BOOL WINAPI InitCommonControlsEx(LPINITCOMMONCONTROLSEX);
  2291. #endif
  2292. int WINAPI LBItemFromPt(HWND,POINT,BOOL);
  2293. #define ListView_GetBkColor(w) (COLORREF)SNDMSG((w),LVM_GETBKCOLOR,0,0)
  2294. #define ListView_GetImageList(w,i) (HIMAGELIST)SNDMSG((w),LVM_GETIMAGELIST,(i),0)
  2295. #define ListView_GetItemCount(w) (int)SNDMSG((w),LVM_GETITEMCOUNT,0,0)
  2296. #define ListView_GetItem(w,i) (BOOL)SNDMSG((w),LVM_GETITEM,0,(LPARAM)(i))
  2297. #define ListView_SetBkColor(w,c) (BOOL)SNDMSG((w),LVM_SETBKCOLOR,0,(LPARAM)c)
  2298. #define ListView_SetImageList(w,h,i) (HIMAGELIST)(UINT)SNDMSG((w),LVM_SETIMAGELIST,(i),(LPARAM)(h))
  2299. #define ListView_SetItem(w,i) (BOOL)SNDMSG((w),LVM_SETITEM,0,(LPARAM)(const LV_ITEM*)(i))
  2300. #define ListView_InsertItem(w,i) (int)SNDMSG((w),LVM_INSERTITEM,0,(LPARAM)(const LV_ITEM*)(i))
  2301. #define ListView_DeleteItem(w,i) (BOOL)SNDMSG((w),LVM_DELETEITEM,i,0)
  2302. #define ListView_DeleteAllItems(w) (BOOL)SNDMSG((w),LVM_DELETEALLITEMS,0,0)
  2303. #define ListView_GetCallbackMask(w) (BOOL)SNDMSG((w),LVM_GETCALLBACKMASK,0,0)
  2304. #define ListView_SetCallbackMask(w,m) (BOOL)SNDMSG((w),LVM_SETCALLBACKMASK,m,0)
  2305. #define ListView_GetNextItem(w,i,f) (int)SNDMSG((w),LVM_GETNEXTITEM,i,MAKELPARAM((f),0))
  2306. #define ListView_FindItem(w,i,p) (int)SNDMSG((w), LVM_FINDITEM,i,(LPARAM)(const LV_FINDINFO*)(p))
  2307. #define ListView_GetItemRect(w,i,p,c) (BOOL)SNDMSG((w),LVM_GETITEMRECT,i,((p)?(((LPRECT)(p))->left=(c),(LPARAM)(LPRECT)(p)):0))
  2308. #define ListView_SetItemPosition(w,i,x,y) (BOOL)SNDMSG((w),LVM_SETITEMPOSITION,i,MAKELPARAM(x,y))
  2309. #define ListView_GetItemPosition(w,i,p) (BOOL)SNDMSG((w),LVM_GETITEMPOSITION,i,(LPARAM)p)
  2310. #define ListView_GetItemSpacing(w,f) (DWORD)SNDMSG((w),LVM_GETITEMSPACING,f,0)
  2311. #define ListView_GetStringWidth(w,s) (int)SNDMSG((w),LVM_GETSTRINGWIDTH,0,(LPARAM)s)
  2312. #define ListView_HitTest(w,p) (int)SNDMSG((w),LVM_HITTEST,0,(LPARAM)(LV_HITTESTINFO*)(p))
  2313. #define ListView_EnsureVisible(w,i,f) (BOOL)SNDMSG((w),LVM_ENSUREVISIBLE,i,MAKELPARAM((f),0))
  2314. #define ListView_Scroll(w,dx,dy) (BOOL)SNDMSG((w),LVM_SCROLL,dx,dy)
  2315. #define ListView_RedrawItems(w,f,l) (BOOL)SNDMSG((w),LVM_REDRAWITEMS,f,l)
  2316. #define ListView_Arrange(w,c) (BOOL)SNDMSG((w),LVM_ARRANGE,c,0)
  2317. #define ListView_EditLabel(w,i) (HWND)SNDMSG((w),LVM_EDITLABEL,i,0)
  2318. #define ListView_GetEditControl(w) (HWND)SNDMSG((w),LVM_GETEDITCONTROL,0,0)
  2319. #define ListView_GetColumn(w,i,p) (BOOL)SNDMSG((w),LVM_GETCOLUMN,i,(LPARAM)(LV_COLUMN*)(p))
  2320. #define ListView_SetColumn(w,i,p) (BOOL)SNDMSG((w),LVM_SETCOLUMN,i,(LPARAM)(const LV_COLUMN*)(p))
  2321. #define ListView_InsertColumn(w,i,p) (int)SNDMSG((w),LVM_INSERTCOLUMN,i,(LPARAM)(const LV_COLUMN*)(p))
  2322. #define ListView_DeleteColumn(w,i) (BOOL)SNDMSG((w),LVM_DELETECOLUMN,i,0)
  2323. #define ListView_GetColumnWidth(w,i) (int)SNDMSG((w),LVM_GETCOLUMNWIDTH,i,0)
  2324. #define ListView_SetColumnWidth(w,i,x) (BOOL)SNDMSG((w),LVM_SETCOLUMNWIDTH,i,MAKELPARAM((x),0))
  2325. #define ListView_CreateDragImage(w,i,p) (HIMAGELIST)SNDMSG((w),LVM_CREATEDRAGIMAGE,i,(LPARAM)(LPPOINT)(p))
  2326. #define ListView_GetViewRect(w,p) (BOOL)SNDMSG((w),LVM_GETVIEWRECT,0,(LPARAM)(LPRECT)(p))
  2327. #define ListView_GetTextColor(w) (COLORREF)SNDMSG((w),LVM_GETTEXTCOLOR,0,0)
  2328. #define ListView_SetTextColor(w,c) (BOOL)SNDMSG((w),LVM_SETTEXTCOLOR,0,(LPARAM)(COLORREF)(c))
  2329. #define ListView_GetTextBkColor(w) (COLORREF)SNDMSG((w),LVM_GETTEXTBKCOLOR,0,0)
  2330. #define ListView_SetTextBkColor(w,c) (BOOL)SNDMSG((w),LVM_SETTEXTBKCOLOR,0,(LPARAM)(COLORREF)(c))
  2331. #define ListView_GetTopIndex(w) (int)SNDMSG((w),LVM_GETTOPINDEX,0,0)
  2332. #define ListView_GetCountPerPage(w) (int)SNDMSG((w),LVM_GETCOUNTPERPAGE,0,0)
  2333. #define ListView_GetOrigin(w,p) (BOOL)SNDMSG((w),LVM_GETORIGIN,0,(LPARAM)(POINT*)(p))
  2334. #define ListView_GetOrigin(w,p) (BOOL)SNDMSG((w),LVM_GETORIGIN,0,(LPARAM)(POINT*)(p))
  2335. #define ListView_Update(w,i) (BOOL)SNDMSG((w),LVM_UPDATE,i,0)
  2336. #define ListView_SetItemState(w,i,d,m) \
  2337. { \
  2338.     LV_ITEM _lvi;\
  2339.     _lvi.stateMask=m;\
  2340.     _lvi.state=d;\
  2341.     SNDMSG((w),LVM_SETITEMSTATE,i,(LPARAM)(LV_ITEM*)&_lvi);\
  2342. }
  2343. #define ListView_GetItemState(w,i,m) (UINT)SNDMSG((w),LVM_GETITEMSTATE,i,m)
  2344. #define ListView_GetItemText(w,i,iS,s,n) \
  2345. { \
  2346.     LV_ITEM _lvi;\
  2347.     _lvi.iSubItem=iS;\
  2348.     _lvi.cchTextMax=n;\
  2349.     _lvi.pszText=s;\
  2350.     SNDMSG((w),LVM_GETITEMTEXT,i,(LPARAM)(LV_ITEM*)&_lvi);\
  2351. }
  2352. #define ListView_SetItemText(w,i,iS,s) \
  2353. { \
  2354.     LV_ITEM _lvi;\
  2355.     _lvi.iSubItem=iS;\
  2356.     _lvi.pszText=s;\
  2357.     SNDMSG((w),LVM_SETITEMTEXT,i,(LPARAM)(LV_ITEM*)&_lvi);\
  2358. }
  2359. #define ListView_SetItemCount(w,n) SNDMSG((w),LVM_SETITEMCOUNT,n,0)
  2360. #define ListView_SortItems(w,f,l) (BOOL)SNDMSG((w),LVM_SORTITEMS,l,(LPARAM)f)
  2361. #define ListView_SetItemPosition32(w,i,x,y) \
  2362. { \
  2363.     POINT p={x,y}; \
  2364.     SNDMSG((w),LVM_SETITEMPOSITION32,i,(LPARAM)&p);\
  2365. }
  2366. #define ListView_GetSelectedCount(w) (UINT)SNDMSG((w),LVM_GETSELECTEDCOUNT,0,0)
  2367. BOOL WINAPI MakeDragList(HWND);
  2368. void WINAPI MenuHelp(UINT,WPARAM,LPARAM,HMENU,HINSTANCE,HWND,PUINT);
  2369. #define MonthCal_GetColor(hwnd,icolor) SNDMSG(hwnd,MCM_GETCOLOR,(WPARAM)icolor,(LPARAM)0)
  2370. #define MonthCal_GetCurSel(hwnd,lpsystime) SNDMSG(hwnd,MCM_GETCURSEL,0,(LPARAM)lpsystime)
  2371. #define MonthCal_GetFirstDayOfWeek(hwnd) SNDMSG(hwnd,MCM_GETFIRSTDAYOFWEEK,0,0)
  2372. #define MonthCal_GetMaxSelCount(hwnd) SNDMSG(hwnd,MCM_GETMAXSELCOUNT,0,0)
  2373. #define MonthCal_GetMaxTodayWidth(hwnd) SNDMSG(hwnd,MCM_GETMAXTODAYWIDTH,0,0)
  2374. #define MonthCal_GetMinReqRect(hwnd,lpRectInfo) SNDMSG(hwnd,MCM_GETMINREQRECT,0,(LPARAM)lpRectInfo)
  2375. #define MonthCal_GetMonthDelta(hwnd) SNDMSG(hwnd,MCM_GETMONTHDELTA,0,0)
  2376. #define MonthCal_GetMonthRange(hwnd,flag,systimearray) SNDMSG(hwnd,MCM_GETMONTHRANGE,(WPARAM)flag,(LPARAM)systimearray)
  2377. #define MonthCal_GetRange(hwnd,systimearray) SNDMSG(hwnd,MCM_GETRANGE,0,(LPARAM)systimearray)
  2378. #define MonthCal_GetSelRange(hwnd,systimearray) SNDMSG(hwnd,MCM_GETSELRANGE,0,(LPARAM)systimearray)
  2379. #define MonthCal_GetToday(hwnd,systime) SNDMSG(hwnd,MCM_GETTODAY,0,(LPARAM)systime)
  2380. #define MonthCal_GetUnicodeFormat(hwnd) SNDMSG(hwnd,MCM_GETUNICODEFORMAT,0,0)
  2381. #define MonthCal_HitTest(hwnd,pmchittest) SNDMSG(hwnd,MCM_HITTEST,0,(LPARAM)pmchittest)
  2382. #define MonthCal_SetColor(hwnd,icolor,clr) SNDMSG(hwnd,MCM_SETCOLOR,(WPARAM)icolor,(LPARAM)clr)
  2383. #define MonthCal_SetCurSel(hwnd,lpsystime) SNDMSG(hwnd,MCM_SETCURSEL,0,(LPARAM)lpsystime)
  2384. #define MonthCal_SetDayState(hwnd,imonths,lpdatestatearray) SNDMSG(hwnd,MCM_SETDAYSTATE,(WPARAM)imonths,(LPARAM)lpdatestatearray)
  2385. #define MonthCal_SetFirstDayOfWeek(hwnd,iday) SNDMSG(hwnd,MCM_SETFIRSTDAYOFWEEK,0,(LPARAM)iday)
  2386. #define MonthCal_SetMaxSelCount(hwnd,imax) SNDMSG(hwnd,MCM_SETMAXSELCOUNT,(WPARAM)imax,0)
  2387. #define MonthCal_SetMonthDelta(hwnd,idelta) SNDMSG(hwnd,MCM_SETMONTHDELTA,(WPARAM)idelta,0)
  2388. #define MonthCal_SetRange(hwnd,whichlimit,systimearray) SNDMSG(hwnd,MCM_SETRANGE,whichlimit,systimearray)
  2389. #define MonthCal_SetSelRange(hwnd,systimearray) SNDMSG(hwnd,MCM_SETSELRANGE,0,(LPARAM)systimearray)
  2390. #define MonthCal_SetToday(hwnd,systime) SNDMSG(hwnd,MCM_SETTODAY,0,(LPARAM)systime)
  2391. #define MonthCal_SetUnicodeFormat(hwnd,unicode) SNDMSG(hwnd,MCM_SETUNICODEFORMAT,(WPARAM)unicode,0)
  2392. BOOL WINAPI ShowHideMenuCtl(HWND,UINT,PINT);
  2393. #define TabCtrl_GetItem(w,i,p) (BOOL)SNDMSG((w),TCM_GETITEM,i,(LPARAM)(TC_ITEM*)(p))
  2394. #define TabCtrl_SetItem(w,i,p) (BOOL)SNDMSG((w),TCM_SETITEM,i,(LPARAM)(TC_ITEM*)(p))
  2395. #define TabCtrl_InsertItem(w,i,p) (int)SNDMSG((w),TCM_INSERTITEM,i,(LPARAM)(const TC_ITEM*)(p))
  2396. #define TabCtrl_DeleteItem(w,i) (BOOL)SNDMSG((w),TCM_DELETEITEM,i,0)
  2397. #define TabCtrl_DeleteAllItems(w) (BOOL)SNDMSG((w),TCM_DELETEALLITEMS,0,0)
  2398. #define TabCtrl_GetItemRect(w,i,p) (BOOL)SNDMSG((w),TCM_GETITEMRECT,i,(LPARAM)(LPRECT)(p))
  2399. #define TabCtrl_GetCurSel(w) (int)SNDMSG((w),TCM_GETCURSEL,0,0)
  2400. #define TabCtrl_SetCurSel(w,i) (int)SNDMSG((w),TCM_SETCURSEL,i,0)
  2401. #define TabCtrl_HitTest(w,p) (int)SNDMSG((w),TCM_HITTEST,0,(LPARAM)(TC_HITTESTINFO*)(p))
  2402. #define TabCtrl_SetItemExtra(w,c) (BOOL)SNDMSG((w),TCM_SETITEMEXTRA,c,0)
  2403. #define TabCtrl_AdjustRect(w,b,p) (int)SNDMSG((w),TCM_ADJUSTRECT,b,(LPARAM)(LPRECT)p)
  2404. #define TabCtrl_SetItemSize(w,x,y) (DWORD)SNDMSG((w),TCM_SETITEMSIZE,0,MAKELPARAM(x,y))
  2405. #define TabCtrl_RemoveImage(w,i) (void)SNDMSG((w),TCM_REMOVEIMAGE,i,0)
  2406. #define TabCtrl_SetPadding(w,x,y) (void)SNDMSG((w),TCM_SETPADDING,0,MAKELPARAM(x,y))
  2407. #define TabCtrl_GetRowCount(w) (int)SNDMSG((w),TCM_GETROWCOUNT,0,0)
  2408. #define TabCtrl_GetToolTips(w) (HWND)SNDMSG((w),TCM_GETTOOLTIPS,0,0)
  2409. #define TabCtrl_SetToolTips(w,t) (void)SNDMSG((w),TCM_SETTOOLTIPS,(WPARAM)t,0)
  2410. #define TabCtrl_GetCurFocus(w) (int)SNDMSG((w),TCM_GETCURFOCUS,0,0)
  2411. #define TabCtrl_SetCurFocus(w,i) (void)SNDMSG((w),TCM_SETCURFOCUS,i,0)
  2412. #define TabCtrl_SetImageList(w,h) (HIMAGELIST)SNDMSG((w),TCM_SETIMAGELIST,0,(LPARAM)(UINT)(h))
  2413. #define TabCtrl_GetItemCount(w) (int)SNDMSG((w),TCM_GETITEMCOUNT,0,0)
  2414. BOOL WINAPI _TrackMouseEvent(LPTRACKMOUSEEVENT);
  2415. #define TreeView_InsertItem(w,i) (HTREEITEM)SNDMSG((w),TVM_INSERTITEM,0,(LPARAM)(LPTV_INSERTSTRUCT)(i))
  2416. #define TreeView_DeleteItem(w,i) (BOOL)SNDMSG((w),TVM_DELETEITEM,0,(LPARAM)(HTREEITEM)(i))
  2417. #define TreeView_DeleteAllItems(w) (BOOL)SNDMSG((w),TVM_DELETEITEM,0,(LPARAM)TVI_ROOT)
  2418. #define TreeView_Expand(w,i,c) (BOOL)SNDMSG((w),TVM_EXPAND,c,(LPARAM)(HTREEITEM)(i))
  2419. #define TreeView_GetItemRect(w,i,p,c) (*(HTREEITEM*)p=(i),(BOOL)SNDMSG((w),TVM_GETITEMRECT,c,(LPARAM)(LPRECT)(p)))
  2420. #define TreeView_GetCount(w) (UINT)SNDMSG((w),TVM_GETCOUNT,0,0)
  2421. #define TreeView_GetIndent(w) (UINT)SNDMSG((w),TVM_GETINDENT,0,0)
  2422. #define TreeView_SetIndent(w,i) (BOOL)SNDMSG((w),TVM_SETINDENT,i,0)
  2423. #define TreeView_GetImageList(w,i) (HIMAGELIST)SNDMSG((w),TVM_GETIMAGELIST,i,0)
  2424. #define TreeView_SetImageList(w,h,i) (HIMAGELIST)SNDMSG((w),TVM_SETIMAGELIST,i,(LPARAM)(HIMAGELIST)(h))
  2425. #define TreeView_GetNextItem(w,i,c) (HTREEITEM)SNDMSG((w),TVM_GETNEXTITEM,c,(LPARAM)(HTREEITEM)(i))
  2426. #define TreeView_GetChild(w,i)    TreeView_GetNextItem(w,i,TVGN_CHILD)
  2427. #define TreeView_GetNextSibling(w,i)    TreeView_GetNextItem(w,i,TVGN_NEXT)
  2428. #define TreeView_GetPrevSibling(w,i)    TreeView_GetNextItem(w,i,TVGN_PREVIOUS)
  2429. #define TreeView_GetParent(w,i)    TreeView_GetNextItem(w,i,TVGN_PARENT)
  2430. #define TreeView_GetFirstVisible(w)    TreeView_GetNextItem(w,NULL,TVGN_FIRSTVISIBLE)
  2431. #define TreeView_GetNextVisible(w,i)    TreeView_GetNextItem(w,i,TVGN_NEXTVISIBLE)
  2432. #define TreeView_GetPrevVisible(w,i)    TreeView_GetNextItem(w,i,TVGN_PREVIOUSVISIBLE)
  2433. #define TreeView_GetSelection(w)    TreeView_GetNextItem(w,NULL,TVGN_CARET)
  2434. #define TreeView_GetDropHilight(w)    TreeView_GetNextItem(w,NULL,TVGN_DROPHILITE)
  2435. #define TreeView_GetRoot(w)    TreeView_GetNextItem(w,NULL,TVGN_ROOT)
  2436. #define TreeView_Select(w,i,c) (HTREEITEM)SNDMSG((w),TVM_SELECTITEM,c,(LPARAM)(HTREEITEM)(i))
  2437. #define TreeView_SelectItem(w,i)    TreeView_Select(w,i,TVGN_CARET)
  2438. #define TreeView_SelectDropTarget(w,i)    TreeView_Select(w,i,TVGN_DROPHILITE)
  2439. #define TreeView_SelectSetFirstVisible(w,i)    TreeView_Select(w,i,TVGN_FIRSTVISIBLE)
  2440. #define TreeView_GetItem(w,i) (BOOL)SNDMSG((w),TVM_GETITEM,0,(LPARAM)(TV_ITEM*)(i))
  2441. #define TreeView_SetItem(w,i) (BOOL)SNDMSG((w),TVM_SETITEM,0,(LPARAM)(const TV_ITEM*)(i))
  2442. #define TreeView_EditLabel(w,i) (HWND)SNDMSG((w),TVM_EDITLABEL,0,(LPARAM)(HTREEITEM)(i))
  2443. #define TreeView_GetEditControl(w) (HWND)SNDMSG((w),TVM_GETEDITCONTROL,0,0)
  2444. #define TreeView_GetVisibleCount(w) (UINT)SNDMSG((w),TVM_GETVISIBLECOUNT,0,0)
  2445. #define TreeView_HitTest(w,p) (HTREEITEM)SNDMSG((w),TVM_HITTEST,0,(LPARAM)(LPTV_HITTESTINFO)(p))
  2446. #define TreeView_CreateDragImage(w,i) (HIMAGELIST)SNDMSG((w),TVM_CREATEDRAGIMAGE,0,(LPARAM)(HTREEITEM)(i))
  2447. #define TreeView_SortChildren(w,i,r) (BOOL)SNDMSG((w),TVM_SORTCHILDREN,r,(LPARAM)(HTREEITEM)(i))
  2448. #define TreeView_EnsureVisible(w,i) (BOOL)SNDMSG((w),TVM_ENSUREVISIBLE,0,(LPARAM)(HTREEITEM)(i))
  2449. #define TreeView_SortChildrenCB(w,s,r) (BOOL)SNDMSG((w),TVM_SORTCHILDRENCB,r,(LPARAM)(LPTV_SORTCB)(s))
  2450. #define TreeView_EndEditLabelNow(w,f) (BOOL)SNDMSG((w),TVM_ENDEDITLABELNOW,f,0)
  2451. #define TreeView_GetISearchString(w,s) (BOOL)SNDMSG((w),TVM_GETISEARCHSTRING,0,(LPARAM)s)
  2452. #if (_WIN32_IE >= 0x0300)
  2453. #define ListView_ApproximateViewRect(w,iw,ih,i) (DWORD)SNDMSG((w),LVM_APPROXIMATEVIEWRECT,(i),MAKELPARAM((iw),(ih)))
  2454. #define ListView_SetExtendedListViewStyle(w,s) (DWORD)SNDMSG((w),LVM_SETEXTENDEDLISTVIEWSTYLE,0,(s))
  2455. #define ListView_GetExtendedListViewStyle(w) (DWORD)SNDMSG((w),LVM_GETEXTENDEDLISTVIEWSTYLE,0,0)
  2456. #define ListView_SetColumnOrderArray(w,i,a) (BOOL)SNDMSG((w),LVM_SETCOLUMNORDERARRAY,(WPARAM)(i),(LPARAM)(LPINT)(a))
  2457. #define ListView_GetColumnOrderArray(w,i,a) (BOOL)SNDMSG((w),LVM_GETCOLUMNORDERARRAY,(WPARAM)(i),(LPARAM)(LPINT)(a))
  2458. #define ListView_GetHeader(w) (HWND)SNDMSG((w),LVM_GETHEADER,0,0)
  2459. #define ListView_GetHotCursor(w) (HCURSOR)SNDMSG((w),LVM_GETHOTCURSOR,0,0)
  2460. #define ListView_GetHotItem(w) (INT)SNDMSG((w),LVM_GETHOTITEM,0,0)
  2461. #define ListView_GetSubItemRect(w,i,is,c,p) (BOOL)SNDMSG((w),LVM_GETSUBITEMRECT,(WPARAM)(int)(i),((p)?(((LPRECT)(p))->left=(c),(((LPRECT)(p))->top=(is)),(LPARAM)(LPRECT)(p)):0))
  2462. #define ListView_SetHotCursor(w,c) (HCURSOR)SNDMSG((w),LVM_SETHOTCURSOR,0,(LPARAM)(c))
  2463. #define ListView_SetHotItem(w,i) (int)SNDMSG((w),LVM_SETHOTITEM,(WPARAM)(i),0)
  2464. #define ListView_SetIconSpacing(w,x,y) (DWORD)SNDMSG((w),LVM_SETICONSPACING,0,MAKELONG(x,y))
  2465. #define ListView_SubItemHitTest(w,p) (int)SNDMSG((w),LVM_SUBITEMHITTEST,0,(LPARAM)(LPLVHITTESTINFO)(p))
  2466. WINBOOL WINAPI ImageList_SetImageCount(HIMAGELIST,UINT);
  2467. WINBOOL WINAPI ImageList_Copy(HIMAGELIST,int,HIMAGELIST,int,UINT);
  2468. WINBOOL WINAPI ImageList_DrawIndirect(IMAGELISTDRAWPARAMS*);
  2469. #define TabCtrl_SetMinTabWidth(hwnd, x) SNDMSG((hwnd), TCM_SETMINTABWIDTH, 0, x)
  2470. #define TabCtrl_DeselectAll(hwnd, fExcludeFocus) SNDMSG((hwnd), TCM_DESELECTALL, fExcludeFocus, 0)
  2471. #define TreeView_GetToolTips(w) (HWND)SNDMSG((w),TVM_GETTOOLTIPS,0,0)
  2472. #define TreeView_SetToolTips(w,wt) (HWND)SNDMSG((w),TVM_SETTOOLTIPS,(WPARAM)(wt),0)
  2473. #endif
  2474. #if (_WIN32_IE >= 0x0400)
  2475. #define ListView_GetBkImage(h,plvbki) (BOOL)SNDMSG((h), LVM_GETBKIMAGE, 0, (LPARAM)(plvbki))
  2476. #define ListView_SetBkImage(h, plvbki) (BOOL)SNDMSG((h), LVM_SETBKIMAGE, 0, (LPARAM)(plvbki))
  2477. #define ListView_SetExtendedListViewStyleEx(w,m,s) (DWORD)SNDMSG((w),LVM_SETEXTENDEDLISTVIEWSTYLE,(m),(s))
  2478. #define TabCtrl_HighlightItem(hwnd, i, fHighlight) SNDMSG((hwnd), TCM_HIGHLIGHTITEM, (WPARAM)i, (LPARAM)MAKELONG (fHighlight, 0))
  2479. #define TabCtrl_SetExtendedStyle(hwnd, dw) SNDMSG((hwnd), TCM_SETEXTENDEDSTYLE, 0, dw)
  2480. #define TabCtrl_GetExtendedStyle(hwnd) SNDMSG((hwnd), TCM_GETEXTENDEDSTYLE, 0, 0)
  2481. #define TabCtrl_SetUnicodeFormat(hwnd, fUnicode) SNDMSG((hwnd), TCM_SETUNICODEFORMAT, (WPARAM)(fUnicode), 0)
  2482. #define TabCtrl_GetUnicodeFormat(hwnd) SNDMSG((hwnd), TCM_GETUNICODEFORMAT, 0, 0)
  2483. #define TreeView_GetBkColor(w) (COLORREF)SNDMSG((w),TVM_GETBKCOLOR,0,0)
  2484. #define TreeView_GetInsertMarkColor(w) (COLORREF)SNDMSG((w),TVM_GETINSERTMARKCOLOR,0,0)
  2485. #define TreeView_GetItemHeight(w) (int)SNDMSG((w),TVM_GETITEMHEIGHT,0,0)
  2486. #define TreeView_GetTextColor(w) (COLORREF)SNDMSG((w),TVM_GETTEXTCOLOR,0,0)
  2487. #define TreeView_SetBkColor(w,c) (COLORREF)SNDMSG((w),TVM_SETBKCOLOR,0,(LPARAM)(c))
  2488. #define TreeView_SetInsertMarkColor(w,c) (COLORREF)SNDMSG((w),TVM_SETINSERTMARKCOLOR,0,(LPARAM)(c))
  2489. #define TreeView_SetItemHeight(w,h) (int)SNDMSG((w),TVM_SETITEMHEIGHT,(WPARAM)(h),0)
  2490. #define TreeView_SetTextColor(w,c) (COLORREF)SNDMSG((w),TVM_SETTEXTCOLOR,0,(LPARAM)(c))
  2491. #endif
  2492.  
  2493. #ifdef UNICODE
  2494. #define ANIMATE_CLASS ANIMATE_CLASSW
  2495. #define HOTKEY_CLASS HOTKEY_CLASSW
  2496. #define PROGRESS_CLASS PROGRESS_CLASSW
  2497. #define STATUSCLASSNAME STATUSCLASSNAMEW
  2498. #define TOOLBARCLASSNAME TOOLBARCLASSNAMEW
  2499. #define TOOLTIPS_CLASS TOOLTIPS_CLASSW
  2500. #define TRACKBAR_CLASS TRACKBAR_CLASSW
  2501. #define UPDOWN_CLASS UPDOWN_CLASSW
  2502. #define WC_COMBOBOXEX WC_COMBOBOXEXW
  2503. #define WC_HEADER WC_HEADERW
  2504. #define WC_IPADDRESS WC_IPADDRESSW
  2505. #define WC_LISTVIEW WC_LISTVIEWW
  2506. #define WC_TABCONTROL WC_TABCONTROLW
  2507. #define WC_TREEVIEW WC_TREEVIEWW
  2508. typedef HDITEMW HDITEM;
  2509. typedef TOOLINFOW TOOLINFO,*PTOOLINFO,*LPTOOLINFO;
  2510. typedef TTHITTESTINFOW TTHITTESTINFO,*LPHITTESTINFO;
  2511. typedef TOOLTIPTEXTW TOOLTIPTEXT,*LPTOOLTIPTEXT;
  2512. typedef NMTTDISPINFOW NMTTDISPINFO, *LPNMTTDISPINFO;
  2513. typedef TV_ITEMW TV_ITEM,*LPTV_ITEM;
  2514. typedef TVITEMW TVITEM,*LPTVITEM;
  2515. #if (_WIN32_IE >= 0x0400)
  2516. typedef TVITEMEXW TVITEMEX,*LPTVITEMEX;
  2517. #endif
  2518. typedef TV_INSERTSTRUCTW TV_INSERTSTRUCT,*LPTV_INSERTSTRUCT;
  2519. typedef TVINSERTSTRUCTW TVINSERTSTRUCT,*LPTVINSERTSTRUCT;
  2520. typedef NM_TREEVIEWW NM_TREEVIEW,*LPNM_TREEVIEW;
  2521. typedef NMTREEVIEWW NMTREEVIEW,*LPNMTREEVIEW;
  2522. typedef NMHDDISPINFOW NMHDDISPINFO, *LPNMHDDISPINFO;
  2523. #define ACM_OPEN ACM_OPENW
  2524. #define COMBOBOXEXITEM    COMBOBOXEXITEMW
  2525. #define PCOMBOBOXEXITEM    PCOMBOBOXEXITEMW
  2526. #define PCCOMBOBOXEXITEM    PCCOMBOBOXEXITEMW
  2527. #define CBEM_INSERTITEM    CBEM_INSERTITEMW
  2528. #define CBEM_SETITEM    CBEM_SETITEMW
  2529. #define CBEM_GETITEM    CBEM_GETITEMW
  2530. #define CBEN_ENDEDIT    CBEN_ENDEDITW
  2531. #define NMCBEENDEDIT    NMCBEENDEDITW
  2532. #define LPNMCBEENDEDIT    LPNMCBEENDEDITW
  2533. #define PNMCBEENDEDIT    PNMCBEENDEDITW
  2534. #if _WIN32_IE >= 0x0400
  2535. #define NMCOMBOBOXEX    NMCOMBOBOXEXW
  2536. #define PNMCOMBOBOXEX    PNMCOMBOBOXEXW
  2537. #define CBEN_GETDISPINFO    CBEN_GETDISPINFOW
  2538. #define CBEN_DRAGBEGIN    CBEN_DRAGBEGINW
  2539. #define NMCBEDRAGBEGIN    NMCBEDRAGBEGINW
  2540. #define LPNMCBEDRAGBEGIN    LPNMCBEDRAGBEGINW
  2541. #define PNMCBEDRAGBEGIN PNMCBEDRAGBEGINW
  2542. #endif /* _WIN32_IE >= 0x0400 */
  2543. #define SB_GETTEXT    SB_GETTEXTW
  2544. #define SB_SETTEXT    SB_SETTEXTW
  2545. #define SB_GETTEXTLENGTH    SB_GETTEXTLENGTHW
  2546. #define STATUSCLASSNAME         STATUSCLASSNAMEW
  2547. #define HDM_INSERTITEM HDM_INSERTITEMW
  2548. #define HDM_GETITEM HDM_GETITEMW
  2549. #define HDM_SETITEM HDM_SETITEMW
  2550. #define HDN_ITEMCHANGING    HDN_ITEMCHANGINGW
  2551. #define HDN_ITEMCHANGED    HDN_ITEMCHANGEDW
  2552. #define HDN_ITEMCLICK    HDN_ITEMCLICKW
  2553. #define HDN_ITEMDBLCLICK    HDN_ITEMDBLCLICKW
  2554. #define HDN_DIVIDERDBLCLICK    HDN_DIVIDERDBLCLICKW
  2555. #define HDN_BEGINTRACK    HDN_BEGINTRACKW
  2556. #define HDN_ENDTRACK    HDN_ENDTRACKW
  2557. #define HDN_TRACK    HDN_TRACKW
  2558. #if (_WIN32_IE >= 0x0300)
  2559. #define HDN_GETDISPINFO HDN_GETDISPINFOW
  2560. #endif
  2561. #define HD_NOTIFY HD_NOTIFYW
  2562. #define TOOLBARCLASSNAME TOOLBARCLASSNAMEW
  2563. #define TBSAVEPARAMS TBSAVEPARAMSW
  2564. #define TB_GETBUTTONTEXT TB_GETBUTTONTEXTW
  2565. #define TB_SAVERESTORE TB_SAVERESTOREW
  2566. #define TB_ADDSTRING TB_ADDSTRINGW
  2567. #define TBN_GETBUTTONINFO TBN_GETBUTTONINFOW
  2568. #if _WIN32_IE >= 0x400
  2569. #define TBBUTTONINFO TBBUTTONINFOW
  2570. #define LPTBBUTTONINFO LPTBBUTTONINFOW
  2571. #endif
  2572. #define TBNOTIFY TBNOTIFYW
  2573. #define LPTBNOTIFY LPTBNOTIFYW
  2574. #define NMTOOLBAR NMTOOLBARW
  2575. #define LPNMTOOLBAR LPNMTOOLBARW
  2576. #define TOOLTIPS_CLASS TOOLTIPS_CLASSW
  2577. #define TTM_ADDTOOL    TTM_ADDTOOLW
  2578. #define TTM_DELTOOL    TTM_DELTOOLW
  2579. #define TTM_NEWTOOLRECT    TTM_NEWTOOLRECTW
  2580. #define TTM_GETTOOLINFO    TTM_GETTOOLINFOW
  2581. #define TTM_SETTOOLINFO    TTM_SETTOOLINFOW
  2582. #define TTM_HITTEST    TTM_HITTESTW
  2583. #define TTM_GETTEXT    TTM_GETTEXTW
  2584. #define TTM_UPDATETIPTEXT    TTM_UPDATETIPTEXTW
  2585. #define TTM_ENUMTOOLS    TTM_ENUMTOOLSW
  2586. #define TTM_GETCURRENTTOOL    TTM_GETCURRENTTOOLW
  2587. #define TTN_NEEDTEXT TTN_NEEDTEXTW
  2588. #define TTN_GETDISPINFO TTN_GETDISPINFOW
  2589. #define SB_GETTEXT    SB_GETTEXTW
  2590. #define SB_SETTEXT    SB_SETTEXTW
  2591. #define SB_GETTEXTLENGTH    SB_GETTEXTLENGTHW
  2592. #define TRACKBAR_CLASS TRACKBAR_CLASSW
  2593. #define UPDOWN_CLASS UPDOWN_CLASSW
  2594. #define PROGRESS_CLASS PROGRESS_CLASSW
  2595. #define HOTKEY_CLASS HOTKEY_CLASSW
  2596. #define LV_ITEM LV_ITEMW
  2597. #define LVITEM LVITEMW
  2598. #define LPSTR_TEXTCALLBACK LPSTR_TEXTCALLBACKW
  2599. #if _WIN32_IE >= 0x0400
  2600. #define LVBKIMAGE    LVBKIMAGEW
  2601. #define LPLVBKIMAGE    LPLVBKIMAGEW
  2602. #define LVM_SETBKIMAGE    LVM_SETBKIMAGEW
  2603. #define LVM_GETBKIMAGE    LVM_GETBKIMAGEW
  2604. #endif /* _WIN32_IE >= 0x400 */
  2605. #define LVM_GETITEM    LVM_GETITEMW
  2606. #define LVM_SETITEM LVM_SETITEMW
  2607. #define LVM_INSERTITEM LVM_INSERTITEMW
  2608. #define LV_FINDINFO LV_FINDINFOW
  2609. #define LVFINDINFO LVFINDINFOW
  2610. #define LVM_FINDITEM LVM_FINDITEMW
  2611. #define LVM_GETSTRINGWIDTH LVM_GETSTRINGWIDTHW
  2612. #define LVM_EDITLABEL LVM_EDITLABELW
  2613. #define LV_COLUMN LV_COLUMNW
  2614. #define LVCOLUMN LVCOLUMNW
  2615. #define LVM_GETCOLUMN LVM_GETCOLUMNW
  2616. #define LVM_SETCOLUMN LVM_SETCOLUMNW
  2617. #define LVM_INSERTCOLUMN LVM_INSERTCOLUMNW
  2618. #define LVM_GETITEMTEXT LVM_GETITEMTEXTW
  2619. #define LVM_SETITEMTEXT LVM_SETITEMTEXTW
  2620. #define LVM_GETISEARCHSTRING LVM_GETISEARCHSTRINGW
  2621. #define LVN_BEGINLABELEDIT LVN_BEGINLABELEDITW
  2622. #define LVN_ENDLABELEDIT LVN_ENDLABELEDITW
  2623. #define LVN_GETDISPINFO LVN_GETDISPINFOW
  2624. #define LVN_SETDISPINFO LVN_SETDISPINFOW
  2625. #define LV_DISPINFO LV_DISPINFOW
  2626. #define NMLVDISPINFO NMLVDISPINFOW
  2627. #define TVM_INSERTITEM TVM_INSERTITEMW
  2628. #define TVM_GETITEM TVM_GETITEMW
  2629. #define TVM_SETITEM TVM_SETITEMW
  2630. #define TVM_EDITLABEL TVM_EDITLABELW
  2631. #define TVM_GETISEARCHSTRING TVM_GETISEARCHSTRINGW
  2632. #define TV_DISPINFO TV_DISPINFOW
  2633. #define TVN_SELCHANGING TVN_SELCHANGINGW
  2634. #define TVN_SELCHANGED TVN_SELCHANGEDW
  2635. #define TVN_GETDISPINFO TVN_GETDISPINFOW
  2636. #define TVN_SETDISPINFO TVN_SETDISPINFOW
  2637. #define TVN_ITEMEXPANDING TVN_ITEMEXPANDINGW
  2638. #define TVN_ITEMEXPANDED TVN_ITEMEXPANDEDW
  2639. #define TVN_BEGINDRAG TVN_BEGINDRAGW
  2640. #define TVN_BEGINRDRAG TVN_BEGINRDRAGW
  2641. #define TVN_DELETEITEM TVN_DELETEITEMW
  2642. #define TVN_BEGINLABELEDIT TVN_BEGINLABELEDITW
  2643. #define TVN_ENDLABELEDIT TVN_ENDLABELEDITW
  2644. #define TC_ITEMHEADER TC_ITEMHEADERW
  2645. #define TC_ITEM TC_ITEMW
  2646. #define TCM_GETITEM TCM_GETITEMW
  2647. #define TCM_SETITEM TCM_SETITEMW
  2648. #define TCM_INSERTITEM TCM_INSERTITEMW
  2649. #define CreateStatusWindow CreateStatusWindowW
  2650. #define DrawStatusText DrawStatusTextW
  2651. #define ImageList_LoadImage ImageList_LoadImageW
  2652. #define DTM_SETFORMAT DTM_SETFORMATW
  2653. #define DTN_USERSTRING DTN_USERSTRINGW
  2654. #define DTN_WMKEYDOWN DTN_WMKEYDOWNW
  2655. #define DTN_FORMAT DTN_FORMATW
  2656. #define DTN_FORMATQUERY DTN_FORMATQUERYW
  2657. #define DATETIMEPICK_CLASS DATETIMEPICK_CLASSW
  2658. #define MONTHCAL_CLASS MONTHCAL_CLASSW
  2659. #define REBARCLASSNAME REBARCLASSNAMEW
  2660. typedef REBARBANDINFOW REBARBANDINFO,*LPREBARBANDINFO;
  2661. #define LPCREBARBANDINFO LPCREBARBANDINFOW
  2662. #define REBARBANDINFO_V3_SIZE REBARBANDINFOW_V3_SIZE
  2663. #define RB_INSERTBAND RB_INSERTBANDW
  2664. #define RB_SETBANDINFO RB_SETBANDINFOW
  2665. #else /* UNICODE */
  2666. #define ANIMATE_CLASS ANIMATE_CLASSA
  2667. #define HOTKEY_CLASS HOTKEY_CLASSA
  2668. #define PROGRESS_CLASS PROGRESS_CLASSA
  2669. #define STATUSCLASSNAME STATUSCLASSNAMEA
  2670. #define TOOLBARCLASSNAME TOOLBARCLASSNAMEA
  2671. #define TOOLTIPS_CLASS TOOLTIPS_CLASSA
  2672. #define TRACKBAR_CLASS TRACKBAR_CLASSA
  2673. #define UPDOWN_CLASS UPDOWN_CLASSA
  2674. #define WC_COMBOBOXEX WC_COMBOBOXEXA
  2675. #define WC_HEADER WC_HEADERA
  2676. #define WC_IPADDRESS WC_IPADDRESSA
  2677. #define WC_LISTVIEW WC_LISTVIEWA
  2678. #define WC_TABCONTROL WC_TABCONTROLA
  2679. #define WC_TREEVIEW WC_TREEVIEWA
  2680. typedef HDITEMA HDITEM;
  2681. typedef TOOLINFOA TOOLINFO,*PTOOLINFO,*LPTOOLINFO;
  2682. typedef TTHITTESTINFOA TTHITTESTINFO,*LPHITTESTINFO;
  2683. typedef TOOLTIPTEXTA TOOLTIPTEXT,*LPTOOLTIPTEXT;
  2684. typedef NMTTDISPINFOA NMTTDISPINFO, *LPNMTTDISPINFO;
  2685. typedef TV_ITEMA TV_ITEM,*LPTV_ITEM;
  2686. typedef TVITEMA TVITEM,*LPTVITEM;
  2687. #if (_WIN32_IE >= 0x0400)
  2688. typedef TVITEMEXA TVITEMEX,*LPTVITEMEX;
  2689. #endif
  2690. typedef TV_INSERTSTRUCTA TV_INSERTSTRUCT,*LPTV_INSERTSTRUCT;
  2691. typedef TVINSERTSTRUCTA TVINSERTSTRUCT,*LPTVINSERTSTRUCT;
  2692. typedef NM_TREEVIEWA NM_TREEVIEW,*LPNM_TREEVIEW;
  2693. typedef NMTREEVIEWA NMTREEVIEW,*LPNMTREEVIEW;
  2694. typedef NMHDDISPINFOW NMHDDISPINFO, *LPNMHDDISPINFO;
  2695. #define ACM_OPEN ACM_OPENA
  2696. #define COMBOBOXEXITEM    COMBOBOXEXITEMA
  2697. #define PCOMBOBOXEXITEM    PCOMBOBOXEXITEMA
  2698. #define PCCOMBOBOXEXITEM    PCCOMBOBOXEXITEMA
  2699. #define CBEM_INSERTITEM    CBEM_INSERTITEMA
  2700. #define CBEM_SETITEM    CBEM_SETITEMA
  2701. #define CBEM_GETITEM    CBEM_GETITEMA
  2702. #define CBEN_ENDEDIT    CBEN_ENDEDITA
  2703. #define NMCBEENDEDIT    NMCBEENDEDITA
  2704. #define LPNMCBEENDEDIT    LPNMCBEENDEDITA
  2705. #define PNMCBEENDEDIT    PNMCBEENDEDITA
  2706. #if _WIN32_IE >= 0x0400
  2707. #define NMCOMBOBOXEX    NMCOMBOBOXEXA
  2708. #define PNMCOMBOBOXEX    PNMCOMBOBOXEXA
  2709. #define CBEN_DRAGBEGIN    CBEN_DRAGBEGINA
  2710. #define CBEN_GETDISPINFO    CBEN_GETDISPINFOA
  2711. #define NMCBEDRAGBEGIN    NMCBEDRAGBEGINA
  2712. #define LPNMCBEDRAGBEGIN    LPNMCBEDRAGBEGINA
  2713. #define PNMCBEDRAGBEGIN    PNMCBEDRAGBEGINA
  2714. #endif /* _WIN32_IE >= 0x0400 */
  2715. #define SB_GETTEXT    SB_GETTEXTA
  2716. #define SB_SETTEXT    SB_SETTEXTA
  2717. #define SB_GETTEXTLENGTH    SB_GETTEXTLENGTHA
  2718. #define HDM_INSERTITEM HDM_INSERTITEMA
  2719. #define HDM_GETITEM HDM_GETITEMA
  2720. #define HDM_SETITEM HDM_SETITEMA
  2721. #define HDN_ITEMCHANGING    HDN_ITEMCHANGINGA
  2722. #define HDN_ITEMCHANGED    HDN_ITEMCHANGEDA
  2723. #define HDN_ITEMCLICK    HDN_ITEMCLICKA
  2724. #define HDN_ITEMDBLCLICK    HDN_ITEMDBLCLICKA
  2725. #define HDN_DIVIDERDBLCLICK    HDN_DIVIDERDBLCLICKA
  2726. #define HDN_BEGINTRACK    HDN_BEGINTRACKA
  2727. #define HDN_ENDTRACK    HDN_ENDTRACKA
  2728. #define HDN_TRACK    HDN_TRACKA
  2729. #if (_WIN32_IE >= 0x0300)
  2730. #define HDN_GETDISPINFO HDN_GETDISPINFOA
  2731. #endif
  2732. #define HD_NOTIFY HD_NOTIFYA
  2733. #define TBSAVEPARAMS TBSAVEPARAMSA
  2734. #define TB_GETBUTTONTEXT TB_GETBUTTONTEXTA
  2735. #define TB_SAVERESTORE TB_SAVERESTOREA
  2736. #define TB_ADDSTRING TB_ADDSTRINGA
  2737. #define TBN_GETBUTTONINFO TBN_GETBUTTONINFOA
  2738. #if _WIN32_IE >= 0x400
  2739. #define TBBUTTONINFO TBBUTTONINFOA
  2740. #define LPTBBUTTONINFO LPTBBUTTONINFOA
  2741. #endif
  2742. #define TBNOTIFY TBNOTIFYA
  2743. #define LPTBNOTIFY LPTBNOTIFYA
  2744. #define NMTOOLBAR NMTOOLBARA
  2745. #define LPNMTOOLBAR LPNMTOOLBARA
  2746. #define TTM_ADDTOOL    TTM_ADDTOOLA
  2747. #define TTM_DELTOOL    TTM_DELTOOLA
  2748. #define TTM_NEWTOOLRECT    TTM_NEWTOOLRECTA
  2749. #define TTM_GETTOOLINFO    TTM_GETTOOLINFOA
  2750. #define TTM_SETTOOLINFO    TTM_SETTOOLINFOA
  2751. #define TTM_HITTEST    TTM_HITTESTA
  2752. #define TTM_GETTEXT    TTM_GETTEXTA
  2753. #define TTM_UPDATETIPTEXT    TTM_UPDATETIPTEXTA
  2754. #define TTM_ENUMTOOLS    TTM_ENUMTOOLSA
  2755. #define TTM_GETCURRENTTOOL TTM_GETCURRENTTOOLA
  2756. #define TTN_NEEDTEXT TTN_NEEDTEXTA
  2757. #define TTN_GETDISPINFO TTN_GETDISPINFOA
  2758. #define SB_GETTEXT    SB_GETTEXTA
  2759. #define SB_SETTEXT    SB_SETTEXTA
  2760. #define SB_GETTEXTLENGTH    SB_GETTEXTLENGTHA
  2761. #define LV_ITEM LV_ITEMA
  2762. #define LVITEM LVITEMA
  2763. #define LPSTR_TEXTCALLBACK LPSTR_TEXTCALLBACKA
  2764. #if _WIN32_IE >= 0x0400
  2765. #define LVBKIMAGE    LVBKIMAGEA
  2766. #define LPLVBKIMAGE    LPLVBKIMAGEA
  2767. #define LVM_SETBKIMAGE    LVM_SETBKIMAGEA
  2768. #define LVM_GETBKIMAGE    LVM_GETBKIMAGEA
  2769. #endif /* _WIN32_IE >= 0x0400 */
  2770. #define LVM_GETITEM    LVM_GETITEMA
  2771. #define LVM_SETITEM LVM_SETITEMA
  2772. #define LVM_INSERTITEM LVM_INSERTITEMA
  2773. #define LV_FINDINFO LV_FINDINFOA
  2774. #define LVFINDINFO LVFINDINFOA
  2775. #define LVM_FINDITEM LVM_FINDITEMA
  2776. #define LVM_GETSTRINGWIDTH LVM_GETSTRINGWIDTHA
  2777. #define LVM_EDITLABEL LVM_EDITLABELA
  2778. #define LV_COLUMN LV_COLUMNA
  2779. #define LVCOLUMN LVCOLUMNA
  2780. #define LVM_GETCOLUMN LVM_GETCOLUMNA
  2781. #define LVM_SETCOLUMN LVM_SETCOLUMNA
  2782. #define LVM_INSERTCOLUMN LVM_INSERTCOLUMNA
  2783. #define LVM_GETITEMTEXT LVM_GETITEMTEXTA
  2784. #define LVM_SETITEMTEXT LVM_SETITEMTEXTA
  2785. #define LVM_GETISEARCHSTRING LVM_GETISEARCHSTRINGA
  2786. #define LVN_BEGINLABELEDIT LVN_BEGINLABELEDITA
  2787. #define LVN_ENDLABELEDIT LVN_ENDLABELEDITA
  2788. #define LVN_GETDISPINFO LVN_GETDISPINFOA
  2789. #define LVN_SETDISPINFO LVN_SETDISPINFOA
  2790. #define LV_DISPINFO LV_DISPINFOA
  2791. #define NMLVDISPINFO NMLVDISPINFOA
  2792. #define TVM_INSERTITEM TVM_INSERTITEMA
  2793. #define TVM_GETITEM TVM_GETITEMA
  2794. #define TVM_SETITEM TVM_SETITEMA
  2795. #define TVM_EDITLABEL TVM_EDITLABELA
  2796. #define TVM_GETISEARCHSTRING TVM_GETISEARCHSTRINGA
  2797. #define TV_DISPINFO TV_DISPINFOA
  2798. #define TVN_SELCHANGING TVN_SELCHANGINGA
  2799. #define TVN_SELCHANGED TVN_SELCHANGEDA
  2800. #define TVN_GETDISPINFO TVN_GETDISPINFOA
  2801. #define TVN_SETDISPINFO TVN_SETDISPINFOA
  2802. #define TVN_ITEMEXPANDING TVN_ITEMEXPANDINGA
  2803. #define TVN_ITEMEXPANDED TVN_ITEMEXPANDEDA
  2804. #define TVN_BEGINDRAG TVN_BEGINDRAGA
  2805. #define TVN_BEGINRDRAG TVN_BEGINRDRAGA
  2806. #define TVN_DELETEITEM TVN_DELETEITEMA
  2807. #define TVN_BEGINLABELEDIT TVN_BEGINLABELEDITA
  2808. #define TVN_ENDLABELEDIT TVN_ENDLABELEDITA
  2809. #define TC_ITEMHEADER TC_ITEMHEADERA
  2810. #define TC_ITEM TC_ITEMA
  2811. #define TCM_GETITEM TCM_GETITEMA
  2812. #define TCM_SETITEM TCM_SETITEMA
  2813. #define TCM_INSERTITEM TCM_INSERTITEMA
  2814. #define CreateStatusWindow CreateStatusWindowA
  2815. #define DrawStatusText DrawStatusTextA
  2816. #define ImageList_LoadImage ImageList_LoadImageA
  2817. #define DTM_SETFORMAT      DTM_SETFORMATA
  2818. #define DTN_USERSTRING DTN_USERSTRINGA
  2819. #define DTN_WMKEYDOWN DTN_WMKEYDOWNA
  2820. #define DTN_FORMAT DTN_FORMATA
  2821. #define DTN_FORMATQUERY DTN_FORMATQUERYA
  2822. #define DATETIMEPICK_CLASS DATETIMEPICK_CLASSA
  2823. #define MONTHCAL_CLASS MONTHCAL_CLASSA
  2824. #define REBARCLASSNAME REBARCLASSNAMEA
  2825. typedef REBARBANDINFOA REBARBANDINFO,*LPREBARBANDINFO;
  2826. #define LPCREBARBANDINFO LPCREBARBANDINFOA
  2827. #define REBARBANDINFO_V3_SIZE REBARBANDINFOA_V3_SIZE
  2828. #define RB_INSERTBAND RB_INSERTBANDA
  2829. #define RB_SETBANDINFO RB_SETBANDINFOA
  2830. #endif
  2831. #endif
  2832.  
  2833. #ifdef __cplusplus
  2834. }
  2835. #endif
  2836. #endif
  2837.  
  2838.