]> git.saurik.com Git - wxWidgets.git/blob - include/wx/msw/missing.h
don't redeclare struct tm if it's already declared in std headers; declare and define...
[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 cursor.cpp
19 #ifndef IDC_HAND
20 #define IDC_HAND MAKEINTRESOURCE(32649)
21 #endif
22
23 // Needed by strconv.cpp
24 #ifndef WC_NO_BEST_FIT_CHARS
25 #define WC_NO_BEST_FIT_CHARS 0x400
26 #endif
27
28 #ifndef WM_CONTEXTMENU
29 #define WM_CONTEXTMENU 0x007B
30 #endif
31
32 // Needed by toplevel.cpp
33 #ifndef WM_UPDATEUISTATE
34 #define WM_UPDATEUISTATE 0x0128
35 #endif
36
37 #ifndef WM_PRINTCLIENT
38 #define WM_PRINTCLIENT 0x318
39 #endif
40
41 // Needed by toplevel.cpp
42 #ifndef UIS_INITIALIZE
43 #define UIS_INITIALIZE 3
44 #endif
45
46 #ifndef UISF_HIDEFOCUS
47 #define UISF_HIDEFOCUS 1
48 #endif
49
50 #ifndef UISF_HIDEACCEL
51 #define UISF_HIDEACCEL 2
52 #endif
53
54 #ifndef OFN_EXPLORER
55 #define OFN_EXPLORER 0x00080000
56 #endif
57
58 #ifndef OFN_ENABLESIZING
59 #define OFN_ENABLESIZING 0x00800000
60 #endif
61
62 // Needed by window.cpp
63 #if wxUSE_MOUSEWHEEL
64 #ifndef WM_MOUSEWHEEL
65 #define WM_MOUSEWHEEL 0x020A
66 #endif
67 #ifndef WHEEL_DELTA
68 #define WHEEL_DELTA 120
69 #endif
70 #ifndef SPI_GETWHEELSCROLLLINES
71 #define SPI_GETWHEELSCROLLLINES 104
72 #endif
73 #endif // wxUSE_MOUSEWHEEL
74
75 // Needed by window.cpp
76 #ifndef VK_OEM_1
77 #define VK_OEM_1 0xBA
78 #define VK_OEM_2 0xBF
79 #define VK_OEM_3 0xC0
80 #define VK_OEM_4 0xDB
81 #define VK_OEM_5 0xDC
82 #define VK_OEM_6 0xDD
83 #define VK_OEM_7 0xDE
84 #endif
85
86 #ifndef VK_OEM_COMMA
87 #define VK_OEM_PLUS 0xBB
88 #define VK_OEM_COMMA 0xBC
89 #define VK_OEM_MINUS 0xBD
90 #define VK_OEM_PERIOD 0xBE
91 #endif
92
93 // ----------------------------------------------------------------------------
94 // ListView common control
95 // Needed by listctrl.cpp
96 // ----------------------------------------------------------------------------
97
98 #ifndef LVS_EX_FULLROWSELECT
99 #define LVS_EX_FULLROWSELECT 0x00000020
100 #endif
101
102 #ifndef LVS_EX_LABELTIP
103 #define LVS_EX_LABELTIP 0x00004000
104 #endif
105
106 /*
107 * In addition to the above, the following are required for several compilers.
108 */
109
110 #if !defined(CCS_VERT)
111 #define CCS_VERT 0x00000080L
112 #endif
113
114 #if !defined(TB_SETDISABLEDIMAGELIST)
115 #define TB_SETDISABLEDIMAGELIST (WM_USER + 54)
116 #endif // !defined(TB_SETDISABLEDIMAGELIST)
117
118 #ifndef CFM_BACKCOLOR
119 #define CFM_BACKCOLOR 0x04000000
120 #endif
121
122 /*
123 * The following are required for BC++ 5.5 (none at present.)
124 */
125
126 /*
127 * The following are specifically required for Digital Mars C++
128 */
129
130 #ifdef __DMC__
131
132 #ifndef CCM_SETUNICODEFORMAT
133 #define CCM_SETUNICODEFORMAT 8197
134 #endif
135
136 #ifdef __DMC__
137 #ifndef _TrackMouseEvent
138 #define _TrackMouseEvent TrackMouseEvent
139 #endif
140 #endif
141
142 #ifndef LVM_SETEXTENDEDLISTVIEWSTYLE
143 #define LVM_SETEXTENDEDLISTVIEWSTYLE (0x1000 + 54)
144 #endif
145
146 #ifndef LVCF_IMAGE
147 #define LVCF_IMAGE 0x0010
148 #endif
149
150 #ifndef Header_GetItemRect
151 #define Header_GetItemRect(w,i,r) \
152 (BOOL)SendMessage((w),HDM_GETITEMRECT,(WPARAM)(i),(LPARAM)(r))
153 #endif
154
155 #ifndef HDM_GETITEMRECT
156 #define HDM_GETITEMRECT (HDM_FIRST+7)
157 #endif
158
159 #ifndef HDN_GETDISPINFOW
160 #define HDN_GETDISPINFOW (HDN_FIRST-29)
161 #endif
162
163 #ifndef ListView_GetHeader
164 #define ListView_GetHeader(w) (HWND)SendMessage((w),LVM_GETHEADER,0,0)
165 #endif
166
167 #ifndef LVM_GETHEADER
168 #define LVM_GETHEADER (LVM_FIRST+31)
169 #endif
170
171 #ifndef LVSICF_NOSCROLL
172 #define LVSICF_NOINVALIDATEALL 0x0001
173 #define LVSICF_NOSCROLL 0x0002
174 #endif
175
176 // ----------------------------------------------------------------------------
177 // Tree control
178 // ----------------------------------------------------------------------------
179
180 #ifndef TVIS_FOCUSED
181 #define TVIS_FOCUSED 0x0001
182 #endif
183
184 #ifndef TV_FIRST
185 #define TV_FIRST 0x1100
186 #endif
187
188 #ifndef TVS_CHECKBOXES
189 #define TVS_CHECKBOXES 0x0100
190 #endif
191
192 #ifndef TVS_FULLROWSELECT
193 #define TVS_FULLROWSELECT 0x1000
194 #endif
195
196 #ifndef TVM_SETBKCOLOR
197 #define TVM_SETBKCOLOR (TV_FIRST + 29)
198 #define TVM_SETTEXTCOLOR (TV_FIRST + 30)
199 #endif
200
201 #endif
202 // DMC++
203
204 /*
205 * The following are specifically required for OpenWatcom C++ (none at present)
206 */
207
208 #if defined(__WATCOMC__)
209 #endif
210
211 /*
212 * The following are specifically required for MinGW (none at present)
213 */
214
215 #if defined (__MINGW32__)
216 #endif
217
218 /*
219 * In addition to the declarations for VC++, the following are required for WinCE
220 */
221
222 #ifdef __WXWINCE__
223 #include "wx/msw/wince/missing.h"
224 #endif
225
226 #endif
227 // _WX_MISSING_H_
228