]> git.saurik.com Git - wxWidgets.git/blob - include/wx/msw/missing.h
added a few WXDLLEXPORTS, corrected/expanded comments
[wxWidgets.git] / include / wx / msw / missing.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: missing.h
3 // Purpose: Declarations for parts of the Win32 SDK that are missing in
4 // the version that comes with some compilers
5 // Created: 2002/04/23
6 // RCS-ID: $Id$
7 // Licence: wxWindows licence
8 /////////////////////////////////////////////////////////////////////////////
9
10 #ifndef _WX_MISSING_H_
11 #define _WX_MISSING_H_
12
13 // ----------------------------------------------------------------------------
14 // ListView common control
15 // ----------------------------------------------------------------------------
16
17 #ifndef LVHT_ONITEM
18 #define LVHT_ONITEM \
19 (LVHT_ONITEMICON | LVHT_ONITEMLABEL | LVHT_ONITEMSTATEICON)
20 #endif
21
22 #ifndef LVM_SETEXTENDEDLISTVIEWSTYLE
23 #define LVM_SETEXTENDEDLISTVIEWSTYLE (0x1000 + 54)
24 #endif
25
26 #ifndef LVS_EX_FULLROWSELECT
27 #define LVS_EX_FULLROWSELECT 0x00000020
28 #endif
29
30 #ifndef LVS_OWNERDATA
31 #define LVS_OWNERDATA 0x1000
32 #endif
33
34 #ifndef LVM_FIRST
35 #define LVM_FIRST 0x1000
36 #endif
37
38 #ifndef HDM_FIRST
39 #define HDM_FIRST 0x1200
40 #endif
41
42 #ifndef LVCFMT_JUSTIFYMASK
43 #define LVCFMT_JUSTIFYMASK 0x0003
44 #endif
45
46 // mingw32/cygwin don't have declarations for comctl32.dll 4.70+ stuff
47 #ifndef NM_CACHEHINT
48 typedef struct tagNMLVCACHEHINT
49 {
50 NMHDR hdr;
51 int iFrom;
52 int iTo;
53 } NMLVCACHEHINT;
54
55 #define NM_CACHEHINT NMLVCACHEHINT
56 #endif
57
58 #ifndef LVN_ODCACHEHINT
59 #define LVN_ODCACHEHINT (-113)
60 #endif
61
62 #ifndef ListView_GetHeader
63 #define ListView_GetHeader(w) (HWND)SendMessage((w),LVM_GETHEADER,0,0)
64 #endif
65
66 #ifndef LVM_GETHEADER
67 #define LVM_GETHEADER (LVM_FIRST+31)
68 #endif
69
70 #ifndef Header_GetItemRect
71 #define Header_GetItemRect(w,i,r) \
72 (BOOL)SendMessage((w),HDM_GETITEMRECT,(WPARAM)(i),(LPARAM)(r))
73 #endif
74
75 #ifndef HDM_GETITEMRECT
76 #define HDM_GETITEMRECT (HDM_FIRST+7)
77 #endif
78
79 #ifndef LVCF_IMAGE
80 #define LVCF_IMAGE 0x0010
81 #endif
82
83 #ifndef LVCFMT_BITMAP_ON_RIGHT
84 #define LVCFMT_BITMAP_ON_RIGHT 0x1000
85 #endif
86
87 #if defined(__GNUWIN32__) && !defined(LV_ITEM) \
88 && !wxCHECK_W32API_VERSION( 0, 5 )
89 typedef struct _LVITEMW {
90 UINT mask;
91 int iItem;
92 int iSubItem;
93 UINT state;
94 UINT stateMask;
95 LPWSTR pszText;
96 int cchTextMax;
97 int iImage;
98 LPARAM lParam;
99 #if (_WIN32_IE >= 0x0300)
100 int iIndent;
101 #endif
102 } LV_ITEMW;
103 typedef LV_ITEM LV_ITEMA;
104 #endif
105
106 #ifndef ListView_GetColumnWidth
107 #define ListView_GetColumnWidth(hwnd, iCol) \
108 (int)SNDMSG((hwnd), LVM_GETCOLUMNWIDTH, (WPARAM)(int)(iCol), 0)
109 #endif
110
111 #ifndef ListView_SetColumnWidth
112 #define ListView_SetColumnWidth(hwnd, iCol, cx) \
113 (BOOL)SNDMSG((hwnd), LVM_SETCOLUMNWIDTH, (WPARAM)(int)(iCol), MAKELPARAM((cx), 0))
114 #endif
115
116 #ifndef ListView_GetTextColor
117 #define ListView_GetTextColor(hwnd) \
118 (COLORREF)SNDMSG((hwnd), LVM_GETTEXTCOLOR, 0, 0L)
119 #endif
120
121 #ifndef ListView_FindItem
122 #define ListView_FindItem(hwnd, iStart, plvfi) \
123 (int)SNDMSG((hwnd), LVM_FINDITEM, (WPARAM)(int)(iStart), (LPARAM)(const LV_FINDINFO FAR*)(plvfi))
124 #endif
125
126 #if defined(__GNUWIN32__) && !wxCHECK_W32API_VERSION( 0, 5 )
127 #ifndef LV_DISPINFOA
128 typedef struct tagNMLVDISPINFOA {
129 NMHDR hdr;
130 LV_ITEMA item;
131 } NMLVDISPINFOA, FAR *LPNMLVDISPINFOA;
132 #define _LV_DISPINFOA tagNMLVDISPINFOA
133 #define LV_DISPINFOA NMLVDISPINFOA
134 #endif
135 #ifndef LV_DISPINFOW
136 typedef struct tagNMLVDISPINFOW {
137 NMHDR hdr;
138 LV_ITEMW item;
139 } NMLVDISPINFOW, FAR *LPNMLVDISPINFOW;
140 #define _LV_DISPINFOW tagNMLVDISPINFOW
141 #define LV_DISPINFOW NMLVDISPINFOW
142 #endif
143 #endif
144
145
146 // ----------------------------------------------------------------------------
147 // MS HTML Help
148 // ----------------------------------------------------------------------------
149
150 // instead of including htmlhelp.h, duplicate the things from it we need here:
151
152 enum
153 {
154 HH_DISPLAY_TOPIC,
155 HH_DISPLAY_TOC,
156 HH_DISPLAY_INDEX,
157 HH_DISPLAY_SEARCH,
158 HH_SET_WIN_TYPE,
159 HH_GET_WIN_TYPE,
160 HH_GET_WIN_HANDLE,
161 HH_ENUM_INFO_TYPE,
162 HH_SET_INFO_TYPE,
163 HH_SYNC,
164 HH_RESERVED1,
165 HH_RESERVED2,
166 HH_RESERVED3,
167 HH_KEYWORD_LOOKUP,
168 HH_DISPLAY_TEXT_POPUP,
169 HH_HELP_CONTEXT,
170 HH_TP_HELP_CONTEXTMENU,
171 HH_TP_HELP_WM_HELP,
172 HH_CLOSE_ALL,
173 HH_ALINK_LOOKUP,
174 HH_GET_LAST_ERROR,
175 HH_ENUM_CATEGORY,
176 HH_ENUM_CATEGORY_IT,
177 HH_RESET_IT_FILTER,
178 HH_SET_INCLUSIVE_FILTER,
179 HH_SET_EXCLUSIVE_FILTER
180 };
181
182 struct HH_POPUP
183 {
184 int cbStruct;
185 HINSTANCE hinst;
186 UINT idString;
187 LPCTSTR pszText;
188 POINT pt;
189 COLORREF clrForeground;
190 COLORREF clrBackground;
191 RECT rcMargins;
192 LPCTSTR pszFont;
193 };
194
195 struct HH_AKLINK
196 {
197 int cbStruct;
198 BOOL fReserved;
199 LPCTSTR pszKeywords;
200 LPCTSTR pszUrl;
201 LPCTSTR pszMsgText;
202 LPCTSTR pszMsgTitle;
203 LPCTSTR pszWindow;
204 BOOL fIndexOnFail;
205 };
206
207
208 // ----------------------------------------------------------------------------
209 // Misc stuff
210 // ----------------------------------------------------------------------------
211
212 #ifndef QS_ALLPOSTMESSAGE
213 #define QS_ALLPOSTMESSAGE 0x0100
214 #endif
215
216 #ifdef __WXWINE__
217 #define LV_ITEMA LVITEMA
218 #define LV_ITEMW LVITEMW
219 #define LV_DISPINFOA NMLVDISPINFOA
220 #define LV_DISPINFOW NMLVDISPINFOW
221
222 #if wxUSE_UNICODE
223 #define LV_FINDINFO LVFINDINFOW
224 #else
225 #define LV_FINDINFO LVFINDINFOA
226 #endif
227
228 #endif
229
230 #endif
231 // _WX_MISSING_H_