]> git.saurik.com Git - wxWidgets.git/blob - include/wx/msw/missing.h
Fix for MinGW macros not available due to include order (http://www.solidsteel.nl...
[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 // ListView common control
90 // Needed by listctrl.cpp
91 // ----------------------------------------------------------------------------
92
93 #ifndef LVS_EX_LABELTIP
94 #define LVS_EX_LABELTIP 0x00004000
95 #endif
96
97 /*
98 * In addition to the above, the following are required for several compilers.
99 */
100
101 #if !defined(CCS_VERT)
102 #define CCS_VERT 0x00000080L
103 #endif
104
105 #if !defined(TB_SETDISABLEDIMAGELIST)
106 #define TB_SETDISABLEDIMAGELIST (WM_USER + 54)
107 #endif // !defined(TB_SETDISABLEDIMAGELIST)
108
109 #ifndef CFM_BACKCOLOR
110 #define CFM_BACKCOLOR 0x04000000
111 #endif
112
113 /*
114 * The following are required for BC++ 5.5 (none at present.)
115 */
116
117 /*
118 * The following are specifically required for Digital Mars C++
119 */
120
121 #ifdef __DMC__
122
123 #ifndef CCM_SETUNICODEFORMAT
124 #define CCM_SETUNICODEFORMAT 8197
125 #endif
126
127 #ifdef __DMC__
128 #ifndef _TrackMouseEvent
129 #define _TrackMouseEvent TrackMouseEvent
130 #endif
131 #endif
132
133 #ifndef LVM_SETEXTENDEDLISTVIEWSTYLE
134 #define LVM_SETEXTENDEDLISTVIEWSTYLE (0x1000 + 54)
135 #endif
136
137 #ifndef LVCF_IMAGE
138 #define LVCF_IMAGE 0x0010
139 #endif
140
141 #ifndef Header_GetItemRect
142 #define Header_GetItemRect(w,i,r) \
143 (BOOL)SendMessage((w),HDM_GETITEMRECT,(WPARAM)(i),(LPARAM)(r))
144 #endif
145
146 #ifndef HDM_GETITEMRECT
147 #define HDM_GETITEMRECT (HDM_FIRST+7)
148 #endif
149
150 #ifndef HDN_GETDISPINFOW
151 #define HDN_GETDISPINFOW (HDN_FIRST-29)
152 #endif
153
154 #ifndef ListView_GetHeader
155 #define ListView_GetHeader(w) (HWND)SendMessage((w),LVM_GETHEADER,0,0)
156 #endif
157
158 #ifndef LVM_GETHEADER
159 #define LVM_GETHEADER (LVM_FIRST+31)
160 #endif
161
162 #ifndef LVSICF_NOSCROLL
163 #define LVSICF_NOINVALIDATEALL 0x0001
164 #define LVSICF_NOSCROLL 0x0002
165 #endif
166
167 // ----------------------------------------------------------------------------
168 // Tree control
169 // ----------------------------------------------------------------------------
170
171 #ifndef TVIS_FOCUSED
172 #define TVIS_FOCUSED 0x0001
173 #endif
174
175 #ifndef TV_FIRST
176 #define TV_FIRST 0x1100
177 #endif
178
179 #ifndef TVS_CHECKBOXES
180 #define TVS_CHECKBOXES 0x0100
181 #endif
182
183 #ifndef TVS_FULLROWSELECT
184 #define TVS_FULLROWSELECT 0x1000
185 #endif
186
187 #ifndef TVM_SETBKCOLOR
188 #define TVM_SETBKCOLOR (TV_FIRST + 29)
189 #define TVM_SETTEXTCOLOR (TV_FIRST + 30)
190 #endif
191
192 #endif
193 // DMC++
194
195 /*
196 * The following are specifically required for OpenWatcom C++ (none at present)
197 */
198
199 #if defined(__WATCOMC__)
200 #endif
201
202 /*
203 * The following are specifically required for MinGW (none at present)
204 */
205
206 #if defined (__MINGW32__)
207 #endif
208
209 /*
210 * In addition to the declarations for VC++, the following are required for WinCE
211 */
212
213 #ifdef __WXWINCE__
214 #include "wx/msw/wince/missing.h"
215 #endif
216
217 #endif
218 // _WX_MISSING_H_
219