]> git.saurik.com Git - wxWidgets.git/blob - include/wx/msw/missing.h
2e13f61e78ce836af413fafd52bd350e932cb0a4
[wxWidgets.git] / include / wx / msw / missing.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: wx/msw/missing.h
3 // Purpose: Declarations for parts of the Win32 SDK that are missing in
4 // the versions that come with some compilers
5 // Created: 2002/04/23
6 // RCS-ID: $Id$
7 // Copyright: (c) 2002 Mattia Barbon
8 // Licence: wxWindows licence
9 /////////////////////////////////////////////////////////////////////////////
10
11 #ifndef _WX_MISSING_H_
12 #define _WX_MISSING_H_
13
14 /*
15 * The following are required for VC++ 6.
16 */
17
18 // Needed by strconv.cpp
19 #ifndef WC_NO_BEST_FIT_CHARS
20 #define WC_NO_BEST_FIT_CHARS 0x400
21 #endif
22
23 #ifndef WM_CONTEXTMENU
24 #define WM_CONTEXTMENU 0x007B
25 #endif
26
27 // Needed by toplevel.cpp
28 #ifndef WM_UPDATEUISTATE
29 #define WM_UPDATEUISTATE 0x0128
30 #endif
31
32 #ifndef WM_PRINTCLIENT
33 #define WM_PRINTCLIENT 0x318
34 #endif
35
36 // Needed by toplevel.cpp
37 #ifndef UIS_INITIALIZE
38 #define UIS_INITIALIZE 3
39 #endif
40
41 #ifndef UISF_HIDEFOCUS
42 #define UISF_HIDEFOCUS 1
43 #endif
44
45 #ifndef UISF_HIDEACCEL
46 #define UISF_HIDEACCEL 2
47 #endif
48
49 #ifndef OFN_EXPLORER
50 #define OFN_EXPLORER 0x00080000
51 #endif
52
53 #ifndef OFN_ENABLESIZING
54 #define OFN_ENABLESIZING 0x00800000
55 #endif
56
57 // Needed by window.cpp
58 #if wxUSE_MOUSEWHEEL
59 #ifndef WM_MOUSEWHEEL
60 #define WM_MOUSEWHEEL 0x020A
61 #endif
62 #ifndef WHEEL_DELTA
63 #define WHEEL_DELTA 120
64 #endif
65 #ifndef SPI_GETWHEELSCROLLLINES
66 #define SPI_GETWHEELSCROLLLINES 104
67 #endif
68 #endif // wxUSE_MOUSEWHEEL
69
70 // Needed by window.cpp
71 #ifndef VK_OEM_1
72 #define VK_OEM_1 0xBA
73 #define VK_OEM_2 0xBF
74 #define VK_OEM_3 0xC0
75 #define VK_OEM_4 0xDB
76 #define VK_OEM_5 0xDC
77 #define VK_OEM_6 0xDD
78 #define VK_OEM_7 0xDE
79 #endif
80
81 #ifndef VK_OEM_COMMA
82 #define VK_OEM_PLUS 0xBB
83 #define VK_OEM_COMMA 0xBC
84 #define VK_OEM_MINUS 0xBD
85 #define VK_OEM_PERIOD 0xBE
86 #endif
87
88 // ----------------------------------------------------------------------------
89 // MS HTML Help
90 // Needed by helpchm.cpp
91 // ----------------------------------------------------------------------------
92
93 enum
94 {
95 HH_DISPLAY_TOPIC,
96 HH_DISPLAY_TOC,
97 HH_DISPLAY_INDEX,
98 HH_DISPLAY_SEARCH,
99 HH_SET_WIN_TYPE,
100 HH_GET_WIN_TYPE,
101 HH_GET_WIN_HANDLE,
102 HH_ENUM_INFO_TYPE,
103 HH_SET_INFO_TYPE,
104 HH_SYNC,
105 HH_RESERVED1,
106 HH_RESERVED2,
107 HH_RESERVED3,
108 HH_KEYWORD_LOOKUP,
109 HH_DISPLAY_TEXT_POPUP,
110 HH_HELP_CONTEXT,
111 HH_TP_HELP_CONTEXTMENU,
112 HH_TP_HELP_WM_HELP,
113 HH_CLOSE_ALL,
114 HH_ALINK_LOOKUP,
115 HH_GET_LAST_ERROR,
116 HH_ENUM_CATEGORY,
117 HH_ENUM_CATEGORY_IT,
118 HH_RESET_IT_FILTER,
119 HH_SET_INCLUSIVE_FILTER,
120 HH_SET_EXCLUSIVE_FILTER
121 };
122
123 struct HH_POPUP
124 {
125 int cbStruct;
126 HINSTANCE hinst;
127 UINT idString;
128 LPCTSTR pszText;
129 POINT pt;
130 COLORREF clrForeground;
131 COLORREF clrBackground;
132 RECT rcMargins;
133 LPCTSTR pszFont;
134 };
135
136 struct HH_AKLINK
137 {
138 int cbStruct;
139 BOOL fReserved;
140 LPCTSTR pszKeywords;
141 LPCTSTR pszUrl;
142 LPCTSTR pszMsgText;
143 LPCTSTR pszMsgTitle;
144 LPCTSTR pszWindow;
145 BOOL fIndexOnFail;
146 };
147
148 // ----------------------------------------------------------------------------
149 // ListView common control
150 // Needed by listctrl.cpp
151 // ----------------------------------------------------------------------------
152
153 #ifndef LVS_EX_LABELTIP
154 #define LVS_EX_LABELTIP 0x00004000
155 #endif
156
157 /*
158 * In addition to the above, the following are required for BC++ 5.5.
159 * (None presently.)
160 */
161
162 /*
163 * In addition to the above, the following are required for Digital Mars C++
164 */
165
166 #ifdef __DMC__
167
168 #ifndef CCM_SETUNICODEFORMAT
169 #define CCM_SETUNICODEFORMAT 8197
170 #endif
171
172 #ifdef __DMC__
173 #ifndef _TrackMouseEvent
174 #define _TrackMouseEvent TrackMouseEvent
175 #endif
176 #endif
177
178 #ifndef LVM_SETEXTENDEDLISTVIEWSTYLE
179 #define LVM_SETEXTENDEDLISTVIEWSTYLE (0x1000 + 54)
180 #endif
181
182 #ifndef LVCF_IMAGE
183 #define LVCF_IMAGE 0x0010
184 #endif
185
186 #ifndef Header_GetItemRect
187 #define Header_GetItemRect(w,i,r) \
188 (BOOL)SendMessage((w),HDM_GETITEMRECT,(WPARAM)(i),(LPARAM)(r))
189 #endif
190
191 #ifndef HDM_GETITEMRECT
192 #define HDM_GETITEMRECT (HDM_FIRST+7)
193 #endif
194
195 #ifndef HDN_GETDISPINFOW
196 #define HDN_GETDISPINFOW (HDN_FIRST-29)
197 #endif
198
199 #ifndef ListView_GetHeader
200 #define ListView_GetHeader(w) (HWND)SendMessage((w),LVM_GETHEADER,0,0)
201 #endif
202
203 #ifndef LVM_GETHEADER
204 #define LVM_GETHEADER (LVM_FIRST+31)
205 #endif
206
207 #ifndef LVSICF_NOSCROLL
208 #define LVSICF_NOINVALIDATEALL 0x0001
209 #define LVSICF_NOSCROLL 0x0002
210 #endif
211
212 // ----------------------------------------------------------------------------
213 // Toolbar define value missing
214 // ----------------------------------------------------------------------------
215 #if !defined(CCS_VERT)
216 #define CCS_VERT 0x00000080L
217 #endif
218
219 #if !defined(TB_SETDISABLEDIMAGELIST)
220 #define TB_SETDISABLEDIMAGELIST (WM_USER + 54)
221 #endif // !defined(TB_SETDISABLEDIMAGELIST)
222
223 // ----------------------------------------------------------------------------
224 // Tree control
225 // ----------------------------------------------------------------------------
226
227 #ifndef TVIS_FOCUSED
228 #define TVIS_FOCUSED 0x0001
229 #endif
230
231 #ifndef TV_FIRST
232 #define TV_FIRST 0x1100
233 #endif
234
235 #ifndef TVS_CHECKBOXES
236 #define TVS_CHECKBOXES 0x0100
237 #endif
238
239 #ifndef TVS_FULLROWSELECT
240 #define TVS_FULLROWSELECT 0x1000
241 #endif
242
243 #ifndef TVM_SETBKCOLOR
244 #define TVM_SETBKCOLOR (TV_FIRST + 29)
245 #define TVM_SETTEXTCOLOR (TV_FIRST + 30)
246 #endif
247
248 #endif
249 // DMC++
250
251 /*
252 * In addition to the declarations for VC++, the following are required for OpenWatcom C++
253 */
254
255 #if defined(__WATCOMC__)
256 #ifndef CFM_BACKCOLOR
257 #define CFM_BACKCOLOR 0x04000000
258 #endif
259 #endif
260
261 /*
262 * In addition to the declarations for VC++, the following are required for MinGW
263 */
264
265 #if defined (__MINGW32__)
266 #ifndef CFM_BACKCOLOR
267 #define CFM_BACKCOLOR 0x04000000
268 #endif
269 #endif
270
271 /*
272 * In addition to the declarations for VC++, the following are required for WinCE
273 */
274
275 #ifdef __WXWINCE__
276 #include "wx/msw/wince/missing.h"
277 #endif
278
279 #endif
280 // _WX_MISSING_H_
281