]>
Commit | Line | Data |
---|---|---|
9bd6a503 | 1 | ///////////////////////////////////////////////////////////////////////////// |
b3402d0d | 2 | // Name: wx/msw/setup.h |
9bd6a503 VZ |
3 | // Purpose: Configuration for the library |
4 | // Author: Julian Smart | |
5 | // Modified by: | |
6 | // Created: 01/02/97 | |
7 | // RCS-ID: $Id$ | |
8 | // Copyright: (c) Julian Smart | |
3ca6a5f0 | 9 | // Licence: wxWindows license |
9bd6a503 VZ |
10 | ///////////////////////////////////////////////////////////////////////////// |
11 | ||
12 | #ifndef _WX_SETUP_H_ | |
13 | #define _WX_SETUP_H_ | |
14 | ||
73974df1 VZ |
15 | // ---------------------------------------------------------------------------- |
16 | // global settings | |
17 | // ---------------------------------------------------------------------------- | |
9bd6a503 | 18 | |
f6bcfd97 BP |
19 | // define this to 0 when building wxBase library - this can also be done from |
20 | // makefile/project file overriding the value here | |
21 | #ifndef wxUSE_GUI | |
22 | #define wxUSE_GUI 1 | |
23 | #endif // wxUSE_GUI | |
1f112209 | 24 | |
6d167489 VZ |
25 | // ---------------------------------------------------------------------------- |
26 | // compatibility settings | |
27 | // ---------------------------------------------------------------------------- | |
28 | ||
b3402d0d VZ |
29 | // This setting determines the compatibility with 1.68 API: |
30 | // Level 0: no backward compatibility, all new features | |
31 | // Level 1: some extra methods are defined for compatibility. | |
32 | // | |
33 | // Default is 0. | |
34 | // | |
35 | // Recommended setting: 0 (in fact the compatibility code is now very minimal | |
36 | // so there is little advantage to setting it to 1. | |
9bd6a503 | 37 | #define WXWIN_COMPATIBILITY 0 |
9bd6a503 | 38 | |
874efd13 VZ |
39 | // This setting determines the compatibility with 2.0 API: set it to 1 to |
40 | // enable it | |
41 | // | |
42 | // Default is 0. | |
43 | // | |
44 | // Recommended setting: 0 (please update your code instead!) | |
45 | #define WXWIN_COMPATIBILITY_2 0 | |
46 | ||
47 | // This setting determines the compatibility with 2.0 API: set it to 1 to | |
48 | // enable it | |
49 | // | |
bcebad81 | 50 | // Default is 1. |
874efd13 VZ |
51 | // |
52 | // Recommended setting: 0 (please update your code instead!) | |
bcebad81 | 53 | #define WXWIN_COMPATIBILITY_2_2 1 |
874efd13 | 54 | |
6d167489 VZ |
55 | // in wxMSW version 2.1.11 and earlier, wxIcon always derives from wxBitmap, |
56 | // but this is very dangerous because you can mistakenly pass an icon instead | |
57 | // of a bitmap to a function taking "const wxBitmap&" - which will *not* work | |
58 | // because an icon is not a valid bitmap | |
59 | // | |
60 | // Starting from 2.1.12, you have the choice under this backwards compatible | |
61 | // behaviour (your code will still compile, but probably won't behave as | |
62 | // expected!) and not deriving wxIcon class from wxBitmap, but providing a | |
63 | // conversion ctor wxBitmap(const wxIcon&) instead. | |
64 | // | |
65 | // Recommended setting: 0 | |
66 | #define wxICON_IS_BITMAP 0 | |
67 | ||
3ca6a5f0 BP |
68 | // Define as 1 for font size to be backward compatible to 1.63 and earlier. |
69 | // 1.64 and later define point sizes to be compatible with Windows. | |
70 | // | |
71 | // Default is 0 | |
72 | // | |
73 | // Recommended setting: 0 | |
74 | #define wxFONT_SIZE_COMPATIBILITY 0 | |
75 | ||
76 | // Set to 0 for accurate dialog units, else 1 to be as per 2.1.16 and before. | |
77 | // If migrating between versions, your dialogs may seem to shrink. | |
78 | // | |
79 | // Default is 1 | |
80 | // | |
81 | // Recommended setting: 0 (the new calculations are more correct!) | |
82 | #define wxDIALOG_UNIT_COMPATIBILITY 1 | |
83 | ||
3b415ba4 VZ |
84 | // ---------------------------------------------------------------------------- |
85 | // debugging settings | |
86 | // ---------------------------------------------------------------------------- | |
87 | ||
88 | // Generic comment about debugging settings: they are very useful if you don't | |
89 | // use any other memory leak detection tools such as Purify/BoundsChecker, but | |
90 | // are probably redundant otherwise. Also, Visual C++ CRT has the same features | |
91 | // as wxWindows memory debugging subsystem built in since version 5.0 and you | |
92 | // may prefer to use it instead of built in memory debugging code because it is | |
93 | // faster and more fool proof. | |
94 | // | |
95 | // Using VC++ CRT memory debugging is enabled by default in debug mode | |
96 | // (__WXDEBUG__) if wxUSE_GLOBAL_MEMORY_OPERATORS is *not* enabled (i.e. is 0) | |
97 | // and if __NO_VC_CRTDBG__ is not defined. | |
98 | ||
99 | // If 1, enables wxDebugContext, for writing error messages to file, etc. If | |
100 | // __WXDEBUG__ is not defined, will still use normal memory operators. It's | |
101 | // recommended to set this to 1, since you may well need to output an error log | |
102 | // in a production version (or non-debugging beta). | |
103 | // | |
104 | // Default is 1. | |
105 | // | |
106 | // Recommended setting: 1 but see comment above | |
874efd13 | 107 | #define wxUSE_DEBUG_CONTEXT 1 |
3b415ba4 VZ |
108 | |
109 | // If 1, enables debugging versions of wxObject::new and wxObject::delete *IF* | |
110 | // __WXDEBUG__ is also defined. | |
111 | // | |
112 | // WARNING: this code may not work with all architectures, especially if | |
113 | // alignment is an issue. This switch is currently ignored for mingw / cygwin | |
114 | // | |
115 | // Default is 1 | |
116 | // | |
117 | // Recommended setting: 1 but see comment in the beginning of this section | |
874efd13 | 118 | #define wxUSE_MEMORY_TRACING 1 |
3b415ba4 VZ |
119 | |
120 | // In debug mode, cause new and delete to be redefined globally. | |
121 | // If this causes problems (e.g. link errors), set this to 0. | |
122 | // This switch is currently ignored for mingw / cygwin | |
123 | // | |
124 | // Default is 1 | |
125 | // | |
126 | // Recommended setting: 1 but see comment in the beginning of this section | |
874efd13 | 127 | #define wxUSE_GLOBAL_MEMORY_OPERATORS 1 |
3b415ba4 VZ |
128 | |
129 | // In debug mode, causes new to be defined to be WXDEBUG_NEW (see object.h). If | |
130 | // this causes problems (e.g. link errors), set this to 0. You may need to set | |
131 | // this to 0 if using templates (at least for VC++). This switch is currently | |
132 | // ignored for mingw / cygwin | |
133 | // | |
134 | // Default is 1 | |
135 | // | |
136 | // Recommended setting: 1 but see comment in the beginning of this section | |
874efd13 | 137 | #define wxUSE_DEBUG_NEW_ALWAYS 1 |
3b415ba4 VZ |
138 | |
139 | // wxHandleFatalExceptions() may be used to catch the program faults at run | |
140 | // time and, instead of terminating the program with a usual GPF message box, | |
141 | // call the user-defined wxApp::OnFatalException() function. If you set | |
142 | // wxUSE_ON_FATAL_EXCEPTION to 0, wxHandleFatalExceptions() will not work. | |
143 | // | |
144 | // This setting is for Win32 only and can only be enabled if your compiler | |
145 | // supports Win32 structured exception handling (currently only VC++ does) | |
146 | // | |
147 | // Default is 1 | |
148 | // | |
149 | // Recommended setting: 1 if your compiler supports it. | |
150 | #ifdef _MSC_VER | |
151 | #define wxUSE_ON_FATAL_EXCEPTION 1 | |
152 | #else | |
153 | #define wxUSE_ON_FATAL_EXCEPTION 0 | |
154 | #endif | |
155 | ||
f6bcfd97 BP |
156 | // ---------------------------------------------------------------------------- |
157 | // Unicode support | |
158 | // ---------------------------------------------------------------------------- | |
159 | ||
160 | // Set wxUSE_UNICODE to 1 to compile wxWindows in Unicode mode: wxChar will be | |
161 | // defined as wchar_t, wxString will use Unicode internally. If you set this | |
162 | // to 1, you must use wxT() macro for all literal strings in the program. | |
163 | // | |
db3272a0 | 164 | // Unicode is currently only fully supported under Windows NT/2000/XP (Windows 9x |
f6bcfd97 BP |
165 | // doesn't support it and the programs compiled in Unicode mode will not run |
166 | // under 9x). | |
167 | // | |
168 | // Default is 0 | |
169 | // | |
db3272a0 | 170 | // Recommended setting: 0 (unless you only plan to use Windows NT/2000/XP) |
f6bcfd97 BP |
171 | #define wxUSE_UNICODE 0 |
172 | ||
db3272a0 VS |
173 | // Set wxUSE_UNICODE_MSLU to 1 if you want to compile wxWindows in Unicode mode |
174 | // and be able to run compiled apps under Windows 9x as well as NT/2000/XP. This | |
175 | // setting enables use of unicows.dll from MSLU (MS Layer for Unicode, see | |
176 | // http://www.microsoft.com/globaldev/Articles/mslu_announce.asp). Note that you | |
177 | // will have to modify the makefiles to include unicows.lib import library as the first | |
178 | // library. | |
179 | // | |
180 | // Default is 0 | |
181 | // | |
182 | // Recommended setting: 0 | |
183 | #define wxUSE_UNICODE_MSLU 0 | |
184 | ||
f6bcfd97 BP |
185 | // Setting wxUSE_WCHAR_T to 1 gives you some degree of Unicode support without |
186 | // compiling the program in Unicode mode. More precisely, it will be possible | |
187 | // to construct wxString from a wide (Unicode) string and convert any wxString | |
188 | // to Unicode. | |
189 | // | |
190 | // Default is 1 | |
191 | // | |
192 | // Recommended setting: 1 | |
193 | #define wxUSE_WCHAR_T 1 | |
194 | ||
3b415ba4 VZ |
195 | // ---------------------------------------------------------------------------- |
196 | // global features | |
197 | // ---------------------------------------------------------------------------- | |
198 | ||
199 | // Support for message/error logging. This includes wxLogXXX() functions and | |
200 | // wxLog and derived classes. Don't set this to 0 unless you really know what | |
201 | // you are doing. | |
202 | // | |
203 | // Default is 1 | |
204 | // | |
205 | // Recommended setting: 1 (always) | |
206 | #define wxUSE_LOG 1 | |
207 | ||
874efd13 VZ |
208 | // Support for command line parsing using wxCmdLineParser class. |
209 | // | |
210 | // Default is 1 | |
211 | // | |
212 | // Recommended setting: 1 (can be set to 0 if you don't use the cmd line) | |
213 | #define wxUSE_CMDLINE_PARSER 1 | |
214 | ||
215 | // Recommended setting: 1 | |
dd8b2f4a JS |
216 | #define wxUSE_LOGWINDOW 1 |
217 | ||
874efd13 | 218 | // Recommended setting: 1 |
dd8b2f4a JS |
219 | #define wxUSE_LOGGUI 1 |
220 | ||
874efd13 | 221 | // Recommended setting: 1 |
3e6e2754 JS |
222 | #define wxUSE_LOG_DIALOG 1 |
223 | ||
3b415ba4 VZ |
224 | // Support for multithreaded applications: if 1, compile in thread classes |
225 | // (thread.h) and make the library a bit more thread safe. Although thread | |
226 | // support is quite stable by now, you may still consider recompiling the | |
227 | // library without it if you have no use for it - this will result in a | |
228 | // somewhat smaller and faster operation. | |
229 | // | |
230 | // This is ignored under Win16, threads are only supported under Win32. | |
231 | // | |
232 | // Default is 1 | |
233 | // | |
234 | // Recommended setting: 0 unless you do plan to develop MT applications | |
235 | #define wxUSE_THREADS 1 | |
236 | ||
237 | // If enabled (1), compiles wxWindows streams classes | |
238 | #define wxUSE_STREAMS 1 | |
239 | ||
240 | // Use standard C++ streams if 1. If 0, use wxWin streams implementation. | |
241 | #define wxUSE_STD_IOSTREAM 0 | |
242 | ||
73974df1 | 243 | // ---------------------------------------------------------------------------- |
40973ea5 | 244 | // non GUI features selection |
73974df1 VZ |
245 | // ---------------------------------------------------------------------------- |
246 | ||
40973ea5 VZ |
247 | // Set wxUSE_LONGLONG to 1 to compile the wxLongLong class. This is a 64 bit |
248 | // integer which is implemented in terms of native 64 bit integers if any or | |
249 | // uses emulation otherwise. | |
250 | // | |
251 | // This class is required by wxDateTime and so you should enable it if you want | |
252 | // to use wxDateTime. For most modern platforms, it will use the native 64 bit | |
253 | // integers in which case (almost) all of its functions are inline and it | |
254 | // almost does not take any space, so there should be no reason to switch it | |
255 | // off. | |
256 | // | |
257 | // Recommended setting: 1 | |
258 | #define wxUSE_LONGLONG 1 | |
259 | ||
1e6feb95 VZ |
260 | // Set wxUSE_(F)FILE to 1 to compile wx(F)File classes. wxFile uses low level |
261 | // POSIX functions for file access, wxFFile uses ANSI C stdio.h functions. | |
262 | // | |
263 | // Default is 1 | |
264 | // | |
265 | // Recommended setting: 1 (wxFile is highly recommended as it is required by | |
266 | // i18n code, wxFileConfig and others) | |
267 | #define wxUSE_FILE 1 | |
268 | #define wxUSE_FFILE 1 | |
269 | ||
05815ab3 VZ |
270 | // Use wxFSVolume class providing access to the configured/active mount points |
271 | // | |
272 | // Default is 1 | |
273 | // | |
274 | // Recommended setting: 1 (but may be safely disabled if you don't use it) | |
275 | #define wxUSE_FSVOLUME 1 | |
276 | ||
a3a584a7 VZ |
277 | // use wxTextBuffer class: required by wxTextFile |
278 | #define wxUSE_TEXTBUFFER 1 | |
279 | ||
280 | // use wxTextFile class: requires wxFile and wxTextBuffer, required by | |
281 | // wxFileConfig | |
1e6feb95 VZ |
282 | #define wxUSE_TEXTFILE 1 |
283 | ||
284 | // i18n support: _() macro, wxLocale class. Requires wxTextFile. | |
285 | #define wxUSE_INTL 1 | |
286 | ||
874efd13 | 287 | // Set wxUSE_DATETIME to 1 to compile the wxDateTime and related classes which |
40973ea5 VZ |
288 | // allow to manipulate dates, times and time intervals. wxDateTime replaces the |
289 | // old wxTime and wxDate classes which are still provided for backwards | |
290 | // compatibility (and implemented in terms of wxDateTime). | |
291 | // | |
292 | // Note that this class is relatively new and is still officially in alpha | |
293 | // stage because some features are not yet (fully) implemented. It is already | |
294 | // quite useful though and should only be disabled if you are aiming at | |
295 | // absolutely minimal version of the library. | |
296 | // | |
297 | // Requires: wxUSE_LONGLONG | |
298 | // | |
874efd13 VZ |
299 | // Default is 1 |
300 | // | |
40973ea5 | 301 | // Recommended setting: 1 |
e421922f VZ |
302 | #define wxUSE_DATETIME 1 |
303 | ||
874efd13 VZ |
304 | // wxUSE_TIMEDATE enables compilation of the old wxDate and wxTime classes (not |
305 | // the same as wxDateTime!). These classes are obsolete and shouldn't be used | |
306 | // in new code | |
307 | // | |
308 | // Default is 0 | |
309 | // | |
310 | // Recommended setting: 0 unless you have legacy code which uses these classes | |
311 | #define wxUSE_TIMEDATE 0 | |
312 | ||
1e6feb95 VZ |
313 | // Set wxUSE_TIMER to 1 to compile wxTimer class |
314 | // | |
315 | // Default is 1 | |
316 | // | |
317 | // Recommended setting: 1 | |
318 | #define wxUSE_TIMER 1 | |
319 | ||
320 | // Use wxStopWatch clas. | |
321 | // | |
322 | // Default is 1 | |
323 | // | |
324 | // Recommended setting: 1 (needed by wxSocket) | |
325 | #define wxUSE_STOPWATCH 1 | |
326 | ||
16193c2b VZ |
327 | // Setting wxUSE_CONFIG to 1 enables the use of wxConfig and related classes |
328 | // which allow the application to store its settings in the persistent | |
329 | // storage. Setting this to 1 will also enable on-demand creation of the | |
330 | // global config object in wxApp. | |
331 | // | |
332 | // See also wxUSE_CONFIG_NATIVE below. | |
333 | // | |
334 | // Recommended setting: 1 | |
1e6feb95 | 335 | #define wxUSE_CONFIG 1 |
16193c2b VZ |
336 | |
337 | // If wxUSE_CONFIG is 1, you may choose to use either the native config | |
338 | // classes under Windows (using .INI files under Win16 and the registry under | |
339 | // Win32) or the portable text file format used by the config classes under | |
340 | // Unix. | |
341 | // | |
342 | // Default is 1 to use native classes. Note that you may still use | |
343 | // wxFileConfig even if you set this to 1 - just the config object created by | |
344 | // default for the applications needs will be a wxRegConfig or wxIniConfig and | |
345 | // not wxFileConfig. | |
346 | // | |
347 | // Recommended setting: 1 | |
348 | #define wxUSE_CONFIG_NATIVE 1 | |
349 | ||
bf84b0be VZ |
350 | // If wxUSE_DIALUP_MANAGER is 1, compile in wxDialUpManager class which allows |
351 | // to connect/disconnect from the network and be notified whenever the dial-up | |
0b9ab0bd | 352 | // network connection is established/terminated. Requires wxUSE_DYNAMIC_LOADER. |
bf84b0be VZ |
353 | // |
354 | // Default is 1. | |
355 | // | |
356 | // Recommended setting: 1 | |
106f0395 | 357 | #define wxUSE_DIALUP_MANAGER 1 |
bf84b0be | 358 | |
0b9ab0bd | 359 | // Compile in classes for run-time DLL loading and function calling. |
3ca6a5f0 | 360 | // Required by wxUSE_DIALUP_MANAGER. |
3b415ba4 VZ |
361 | // |
362 | // This setting is for Win32 only | |
363 | // | |
364 | // Default is 1. | |
365 | // | |
366 | // Recommended setting: 1 | |
466367be | 367 | #define wxUSE_DYNLIB_CLASS 1 |
3b415ba4 | 368 | |
466367be | 369 | // experimental, don't use for now |
abad5367 | 370 | #define wxUSE_DYNAMIC_LOADER 1 |
b4a5319e | 371 | |
3b415ba4 VZ |
372 | // Set to 1 to use socket classes |
373 | #define wxUSE_SOCKETS 1 | |
374 | ||
3ca6a5f0 | 375 | // Set to 1 to enable virtual file systems (required by wxHTML) |
3b415ba4 | 376 | #define wxUSE_FILESYSTEM 1 |
3ca6a5f0 BP |
377 | |
378 | // Set to 1 to enable virtual ZIP filesystem (requires wxUSE_FILESYSTEM) | |
3b415ba4 | 379 | #define wxUSE_FS_ZIP 1 |
3ca6a5f0 BP |
380 | |
381 | // Set to 1 to enable virtual Internet filesystem (requires wxUSE_FILESYSTEM) | |
3b415ba4 VZ |
382 | #define wxUSE_FS_INET 1 |
383 | ||
3ca6a5f0 | 384 | // Set to 1 to compile wxZipInput/OutputStream classes. |
3b415ba4 VZ |
385 | #define wxUSE_ZIPSTREAM 1 |
386 | ||
3ca6a5f0 BP |
387 | // Set to 1 to compile wxZlibInput/OutputStream classes. Also required by |
388 | // wxUSE_LIBPNG. | |
389 | #define wxUSE_ZLIB 1 | |
390 | ||
3ca6a5f0 BP |
391 | // If enabled, the code written by Apple will be used to write, in a portable |
392 | // way, float on the disk. See extended.c for the license which is different | |
393 | // from wxWindows one. | |
394 | // | |
395 | // Default is 1. | |
396 | // | |
397 | // Recommended setting: 1 unless you don't like the license terms (unlikely) | |
3b415ba4 | 398 | #define wxUSE_APPLE_IEEE 1 |
3b415ba4 | 399 | |
29104849 RD |
400 | // Joystick support class |
401 | #define wxUSE_JOYSTICK 1 | |
402 | ||
1e6feb95 VZ |
403 | // wxFontMapper class |
404 | #define wxUSE_FONTMAP 1 | |
b9e5acef | 405 | |
1e6feb95 VZ |
406 | // wxMimeTypesManager class |
407 | #define wxUSE_MIMETYPE 1 | |
29104849 | 408 | |
a5d46b73 VZ |
409 | // wxProtocol and related classes: if you want to use either of wxFTP, wxHTTP |
410 | // or wxURL you need to set this to 1. | |
411 | // | |
412 | // Default is 1. | |
413 | // | |
414 | // Recommended setting: 1 | |
415 | #define wxUSE_PROTOCOL 1 | |
416 | ||
417 | // The settings for the individual URL schemes | |
418 | #define wxUSE_PROTOCOL_FILE 1 | |
419 | #define wxUSE_PROTOCOL_FTP 1 | |
420 | #define wxUSE_PROTOCOL_HTTP 1 | |
421 | ||
422 | // Define this to use wxURL class. | |
423 | #define wxUSE_URL 1 | |
874efd13 VZ |
424 | |
425 | // Support for regular expression matching via wxRegEx class: enable this to | |
426 | // use POSIX regular expressions in your code. You need to compile regex | |
427 | // library from src/regex to use it under Windows. | |
428 | // | |
429 | // Default is 0 | |
430 | // | |
431 | // Recommended setting: 1 if your compiler supports it, if it doesn't please | |
432 | // contribute us a makefile for src/regex for it | |
5638d705 | 433 | #define wxUSE_REGEX 1 |
874efd13 | 434 | |
a5d46b73 VZ |
435 | // wxSystemOptions class |
436 | #define wxUSE_SYSTEM_OPTIONS 1 | |
437 | ||
874efd13 VZ |
438 | // wxWave class |
439 | #define wxUSE_WAVE 1 | |
440 | ||
bf84b0be | 441 | // ---------------------------------------------------------------------------- |
1e6feb95 | 442 | // Individual GUI controls |
bf84b0be VZ |
443 | // ---------------------------------------------------------------------------- |
444 | ||
1e6feb95 VZ |
445 | // You must set wxUSE_CONTROLS to 1 if you are using any controls at all |
446 | // (without it, wxControl class is not compiled) | |
447 | // | |
448 | // Default is 1 | |
449 | // | |
450 | // Recommended setting: 1 (don't change except for very special programs) | |
451 | #define wxUSE_CONTROLS 1 | |
452 | ||
f38bcae5 VZ |
453 | // wxPopupWindow class is a top level transient window. It is currently used |
454 | // to implement wxTipWindow | |
1e6feb95 | 455 | // |
f38bcae5 | 456 | // Default is 1 |
1e6feb95 | 457 | // |
f38bcae5 VZ |
458 | // Recommended setting: 1 (may be set to 0 if you don't wxUSE_TIPWINDOW) |
459 | #define wxUSE_POPUPWIN 1 | |
460 | ||
461 | // wxTipWindow allows to implement the custom tooltips, it is used by the | |
462 | // context help classes. Requires wxUSE_POPUPWIN. | |
463 | // | |
464 | // Default is 1 | |
465 | // | |
466 | // Recommended setting: 1 (may be set to 0) | |
467 | #define wxUSE_TIPWINDOW 1 | |
1e6feb95 VZ |
468 | |
469 | // Each of the settings below corresponds to one wxWindows control. They are | |
470 | // all switched on by default but may be disabled if you are sure that your | |
471 | // program (including any standard dialogs it can show!) doesn't need them and | |
472 | // if you desperately want to save some space. If you use any of these you must | |
473 | // set wxUSE_CONTROLS as well. | |
474 | // | |
475 | // Default is 1 | |
476 | // | |
477 | // Recommended setting: 1 | |
478 | #define wxUSE_BUTTON 1 // wxButton | |
479 | #define wxUSE_BMPBUTTON 1 // wxBitmapButton | |
480 | #define wxUSE_CALENDARCTRL 1 // wxCalendarCtrl | |
481 | #define wxUSE_CHECKBOX 1 // wxCheckBox | |
482 | #define wxUSE_CHECKLISTBOX 1 // wxCheckListBox (requires wxUSE_OWNER_DRAWN) | |
483 | #define wxUSE_CHOICE 1 // wxChoice | |
484 | #define wxUSE_COMBOBOX 1 // wxComboBox | |
485 | #define wxUSE_GAUGE 1 // wxGauge | |
486 | #define wxUSE_LISTBOX 1 // wxListBox | |
487 | #define wxUSE_LISTCTRL 1 // wxListCtrl | |
488 | #define wxUSE_RADIOBOX 1 // wxRadioBox | |
489 | #define wxUSE_RADIOBTN 1 // wxRadioButton | |
490 | #define wxUSE_SCROLLBAR 1 // wxScrollBar | |
491 | #define wxUSE_SLIDER 1 // wxSlider | |
492 | #define wxUSE_SPINBTN 1 // wxSpinButton | |
493 | #define wxUSE_SPINCTRL 1 // wxSpinCtrl | |
494 | #define wxUSE_STATBOX 1 // wxStaticBox | |
495 | #define wxUSE_STATLINE 1 // wxStaticLine | |
496 | #define wxUSE_STATTEXT 1 // wxStaticText | |
497 | #define wxUSE_STATBMP 1 // wxStaticBitmap | |
498 | #define wxUSE_TEXTCTRL 1 // wxTextCtrl | |
499 | #define wxUSE_TOGGLEBTN 1 // requires wxButton | |
500 | #define wxUSE_TREECTRL 1 // wxTreeCtrl | |
501 | ||
502 | // Use a status bar class? Depending on the value of wxUSE_NATIVE_STATUSBAR | |
503 | // below either wxStatusBar95 or a generic wxStatusBar will be used. | |
504 | // | |
505 | // Default is 1 | |
506 | // | |
507 | // Recommended setting: 1 | |
508 | #define wxUSE_STATUSBAR 1 | |
509 | ||
510 | // Two status bar implementations are available under Win32: the generic one | |
511 | // or the wrapper around native control. For native look and feel the native | |
512 | // version should be used. | |
513 | // | |
514 | // Default is 1. | |
515 | // | |
516 | // Recommended setting: 1 (there is no advantage in using the generic one) | |
517 | #define wxUSE_NATIVE_STATUSBAR 1 | |
518 | ||
bf84b0be VZ |
519 | // wxToolBar related settings: if wxUSE_TOOLBAR is 0, don't compile any toolbar |
520 | // classes at all. Otherwise, use the native toolbar class unless | |
521 | // wxUSE_TOOLBAR_NATIVE is 0. Additionally, the generic toolbar class which | |
522 | // supports some features which might not be supported by the native wxToolBar | |
523 | // class may be compiled in if wxUSE_TOOLBAR_SIMPLE is 1. | |
524 | // | |
525 | // Default is 1 for all settings. | |
526 | // | |
527 | // Recommended setting: 1 for wxUSE_TOOLBAR and wxUSE_TOOLBAR_NATIVE and 0 for | |
528 | // wxUSE_TOOLBAR_SIMPLE (the default is 1 mainly for backwards compatibility). | |
529 | #define wxUSE_TOOLBAR 1 | |
530 | #define wxUSE_TOOLBAR_NATIVE 1 | |
531 | #define wxUSE_TOOLBAR_SIMPLE 1 | |
532 | ||
1e6feb95 VZ |
533 | // this setting is obsolete, value is ignored |
534 | #define wxUSE_BUTTONBAR 1 | |
535 | ||
b3402d0d VZ |
536 | // wxNotebook is a control with several "tabs" located on one of its sides. It |
537 | // may be used ot logically organise the data presented to the user instead of | |
538 | // putting everything in one huge dialog. It replaces wxTabControl and related | |
539 | // classes of wxWin 1.6x. | |
540 | // | |
541 | // Default is 1. | |
542 | // | |
543 | // Recommended setting: 1 | |
544 | #define wxUSE_NOTEBOOK 1 | |
545 | ||
1e6feb95 VZ |
546 | // wxTabDialog is a generic version of wxNotebook but it is incompatible with |
547 | // the new class. It shouldn't be used in new code. | |
3b415ba4 | 548 | // |
1e6feb95 | 549 | // Default is 0. |
3b415ba4 | 550 | // |
1e6feb95 VZ |
551 | // Recommended setting: 0 (use wxNotebook) |
552 | #define wxUSE_TAB_DIALOG 0 | |
ff2d113e VZ |
553 | |
554 | // wxGrid class comes in two flavours: the original (pre wxWin 2.2) one and | |
555 | // the new, much imporved and enhanced version. The new version is backwards | |
556 | // compatible with the old one and should be used whenever possible, i.e. if | |
557 | // you set wxUSE_GRID to 1, set wxUSE_NEW_GRID to 1 too. | |
558 | // | |
559 | // Default is 1 for both options. | |
560 | // | |
561 | // Recommended setting: 1 for wxUSE_NEW_GRID, 0 if you have an old code using | |
3ca6a5f0 | 562 | // wxGrid and 100% backwards compatibality (with all old wxGrid quirks) is |
ff2d113e | 563 | // essential. |
9c824f29 JS |
564 | // |
565 | // WIN16/BC++ resets wxUSE_NEW_GRID to 0 because it exceeds the data limit. | |
ff2d113e VZ |
566 | #define wxUSE_GRID 1 |
567 | #define wxUSE_NEW_GRID 1 | |
b3402d0d | 568 | |
5638d705 JS |
569 | // wxProperty[Value/Form/List] classes, used by Dialog Editor |
570 | #define wxUSE_PROPSHEET 0 | |
571 | ||
1e6feb95 VZ |
572 | // ---------------------------------------------------------------------------- |
573 | // Miscellaneous GUI stuff | |
574 | // ---------------------------------------------------------------------------- | |
3b415ba4 VZ |
575 | |
576 | // wxAcceleratorTable/Entry classes and support for them in wxMenu(Bar) | |
577 | #define wxUSE_ACCEL 1 | |
578 | ||
1e6feb95 VZ |
579 | // Use wxCaret: a class implementing a "cursor" in a text control (called caret |
580 | // under Windows). | |
581 | // | |
582 | // Default is 1. | |
583 | // | |
584 | // Recommended setting: 1 (can be safely set to 0, not used by the library) | |
585 | #define wxUSE_CARET 1 | |
586 | ||
587 | // Miscellaneous geometry code: needed for Canvas library | |
588 | #define wxUSE_GEOMETRY 1 | |
589 | ||
590 | // Use wxImageList. This class is needed by wxNotebook, wxTreeCtrl and | |
591 | // wxListCtrl. | |
592 | // | |
593 | // Default is 1. | |
594 | // | |
595 | // Recommended setting: 1 (set it to 0 if you don't use any of the controls | |
596 | // enumerated above, then this class is mostly useless too) | |
597 | #define wxUSE_IMAGLIST 1 | |
598 | ||
599 | // Use wxMenu, wxMenuBar, wxMenuItem. | |
600 | // | |
601 | // Default is 1. | |
602 | // | |
603 | // Recommended setting: 1 (can't be disabled under MSW) | |
604 | #define wxUSE_MENUS 1 | |
605 | ||
606 | // Use wxSashWindow class. | |
607 | // | |
608 | // Default is 1. | |
609 | // | |
610 | // Recommended setting: 1 | |
611 | #define wxUSE_SASH 1 | |
612 | ||
613 | // Use wxSplitterWindow class. | |
614 | // | |
615 | // Default is 1. | |
616 | // | |
617 | // Recommended setting: 1 | |
618 | #define wxUSE_SPLITTER 1 | |
619 | ||
620 | // Use wxToolTip and wxWindow::Set/GetToolTip() methods. | |
621 | // | |
622 | // Default is 1. | |
623 | // | |
624 | // Recommended setting: 1 | |
625 | #define wxUSE_TOOLTIPS 1 | |
626 | ||
627 | // wxValidator class and related methods | |
628 | #define wxUSE_VALIDATORS 1 | |
629 | ||
874efd13 VZ |
630 | // wxDC cacheing implementation |
631 | #define wxUSE_DC_CACHEING 1 | |
632 | ||
3b415ba4 VZ |
633 | // ---------------------------------------------------------------------------- |
634 | // common dialogs | |
635 | // ---------------------------------------------------------------------------- | |
636 | ||
637 | // Define 1 to use generic dialogs in Windows, even though they duplicate | |
638 | // native common dialog (e.g. wxColourDialog). This is mainly useful for | |
639 | // testing. | |
640 | // | |
641 | // Default is 0 | |
642 | // | |
643 | // Recommended setting: 0 | |
644 | #define wxUSE_GENERIC_DIALOGS_IN_MSW 0 | |
645 | ||
646 | // On rare occasions (e.g. using DJGPP) may want to omit common dialogs (e.g. | |
647 | // file selector, printer dialog). Switching this off also switches off the | |
648 | // printing architecture and interactive wxPrinterDC. | |
649 | // | |
650 | // Default is 1 | |
651 | // | |
652 | // Recommended setting: 1 (unless it really doesn't work) | |
653 | #define wxUSE_COMMON_DIALOGS 1 | |
654 | ||
874efd13 VZ |
655 | // wxBusyInfo displays window with message when app is busy. Works in same way |
656 | // as wxBusyCursor | |
657 | #define wxUSE_BUSYINFO 1 | |
658 | ||
659 | // Use single/multiple choice dialogs. | |
660 | // | |
661 | // Default is 1 | |
662 | // | |
663 | // Recommended setting: 1 (used in the library itself) | |
664 | #define wxUSE_CHOICEDLG 1 | |
665 | ||
666 | // Use colour picker dialog | |
667 | // | |
668 | // Default is 1 | |
669 | // | |
670 | // Recommended setting: 1 | |
671 | #define wxUSE_COLOURDLG 1 | |
672 | ||
673 | // wxDirDlg class for getting a directory name from user | |
674 | #define wxUSE_DIRDLG 1 | |
675 | ||
676 | // TODO: setting to choose the generic or native one | |
677 | ||
1e6feb95 VZ |
678 | // Use file open/save dialogs. |
679 | // | |
680 | // Default is 1 | |
681 | // | |
682 | // Recommended setting: 1 (used in many places in the library itself) | |
683 | #define wxUSE_FILEDLG 1 | |
684 | ||
874efd13 VZ |
685 | // Use find/replace dialogs. |
686 | // | |
687 | // Default is 1 | |
688 | // | |
689 | // Recommended setting: 1 (but may be safely set to 0) | |
baff4ae2 VZ |
690 | #define wxUSE_FINDREPLDLG 1 |
691 | ||
1e6feb95 VZ |
692 | // Use font picker dialog |
693 | // | |
694 | // Default is 1 | |
695 | // | |
696 | // Recommended setting: 1 (used in the library itself) | |
697 | #define wxUSE_FONTDLG 1 | |
698 | ||
e421922f | 699 | // Use wxMessageDialog and wxMessageBox. |
1e6feb95 VZ |
700 | // |
701 | // Default is 1 | |
702 | // | |
703 | // Recommended setting: 1 (used in the library itself) | |
e421922f | 704 | #define wxUSE_MSGDLG 1 |
3b415ba4 | 705 | |
874efd13 VZ |
706 | // progress dialog class for lengthy operations |
707 | #define wxUSE_PROGRESSDLG 1 | |
3b415ba4 | 708 | |
874efd13 VZ |
709 | // support for startup tips (wxShowTip &c) |
710 | #define wxUSE_STARTUP_TIPS 1 | |
3b415ba4 | 711 | |
e421922f VZ |
712 | // text entry dialog and wxGetTextFromUser function |
713 | #define wxUSE_TEXTDLG 1 | |
714 | ||
874efd13 | 715 | // number entry dialog |
ff8b6290 JS |
716 | #define wxUSE_NUMBERDLG 1 |
717 | ||
874efd13 VZ |
718 | // splash screen class |
719 | #define wxUSE_SPLASH 1 | |
47606d36 | 720 | |
874efd13 | 721 | // wizards |
b1f5d087 VZ |
722 | #define wxUSE_WIZARDDLG 1 |
723 | ||
d9317fd4 VZ |
724 | // ---------------------------------------------------------------------------- |
725 | // Metafiles support | |
726 | // ---------------------------------------------------------------------------- | |
727 | ||
728 | // Windows supports the graphics format known as metafile which is, though not | |
729 | // portable, is widely used under Windows and so is supported by wxWin (under | |
730 | // Windows only, of course). Win16 (Win3.1) used the so-called "Window | |
731 | // MetaFiles" or WMFs which were replaced with "Enhanced MetaFiles" or EMFs in | |
732 | // Win32 (Win9x, NT, 2000). Both of these are supported in wxWin and, by | |
733 | // default, WMFs will be used under Win16 and EMFs under Win32. This may be | |
734 | // changed by setting wxUSE_WIN_METAFILES_ALWAYS to 1 and/or setting | |
735 | // wxUSE_ENH_METAFILE to 0. You may also set wxUSE_METAFILE to 0 to not compile | |
736 | // in any metafile related classes at all. | |
737 | // | |
738 | // Default is 1 for wxUSE_ENH_METAFILE and 0 for wxUSE_WIN_METAFILES_ALWAYS. | |
739 | // | |
740 | // Recommended setting: default or 0 for everything for portable programs. | |
741 | #define wxUSE_METAFILE 1 | |
742 | #define wxUSE_ENH_METAFILE 1 | |
743 | #define wxUSE_WIN_METAFILES_ALWAYS 0 | |
744 | ||
ff2d113e VZ |
745 | // ---------------------------------------------------------------------------- |
746 | // Big GUI components | |
747 | // ---------------------------------------------------------------------------- | |
748 | ||
3b415ba4 VZ |
749 | // Set to 0 to disable document/view architecture |
750 | #define wxUSE_DOC_VIEW_ARCHITECTURE 1 | |
751 | ||
752 | // Set to 0 to disable MDI document/view architecture | |
753 | #define wxUSE_MDI_ARCHITECTURE 1 | |
754 | ||
755 | // Set to 0 to disable print/preview architecture code | |
756 | #define wxUSE_PRINTING_ARCHITECTURE 1 | |
757 | ||
ff2d113e VZ |
758 | // wxHTML sublibrary allows to display HTML in wxWindow programs and much, |
759 | // much more. | |
760 | // | |
761 | // Default is 1. | |
762 | // | |
763 | // Recommended setting: 1 (wxHTML is great!), set to 0 if you want compile a | |
764 | // smaller library. | |
765 | #define wxUSE_HTML 1 | |
766 | ||
8b089c5e JS |
767 | // OpenGL canvas |
768 | #define wxUSE_GLCANVAS 0 | |
769 | ||
babc9758 JS |
770 | // wxTreeLayout class |
771 | #define wxUSE_TREELAYOUT 1 | |
772 | ||
1e6feb95 VZ |
773 | // ---------------------------------------------------------------------------- |
774 | // Data transfer | |
775 | // ---------------------------------------------------------------------------- | |
776 | ||
777 | // Use wxClipboard class for clipboard copy/paste. | |
778 | // | |
779 | // Default is 1. | |
780 | // | |
781 | // Recommended setting: 1 | |
782 | #define wxUSE_CLIPBOARD 1 | |
783 | ||
784 | // Use wxDataObject and related classes. Needed for clipboard and OLE drag and | |
785 | // drop | |
786 | // | |
787 | // Default is 1. | |
788 | // | |
789 | // Recommended setting: 1 | |
790 | #define wxUSE_DATAOBJ 1 | |
791 | ||
792 | // Use wxDropTarget and wxDropSource classes for drag and drop (this is | |
793 | // different from "built in" drag and drop in wxTreeCtrl which is always | |
794 | // available). Requires wxUSE_DATAOBJ. | |
795 | // | |
796 | // Default is 1. | |
797 | // | |
798 | // Recommended setting: 1 | |
799 | #define wxUSE_DRAG_AND_DROP 1 | |
800 | ||
bf84b0be | 801 | // ---------------------------------------------------------------------------- |
3b415ba4 | 802 | // miscellaneous settings |
bf84b0be VZ |
803 | // ---------------------------------------------------------------------------- |
804 | ||
68a602fc VZ |
805 | // wxSingleInstanceChecker class allows to verify at startup if another program |
806 | // instance is running (it is only available under Win32) | |
807 | // | |
808 | // Default is 1 | |
809 | // | |
810 | // Recommended setting: 1 (the class is tiny, disabling it won't save much | |
811 | // space) | |
812 | #define wxUSE_SNGLINST_CHECKER 1 | |
813 | ||
24fd6d87 VZ |
814 | #define wxUSE_DRAGIMAGE 1 |
815 | ||
9bd6a503 VZ |
816 | #define wxUSE_IPC 1 |
817 | // 0 for no interprocess comms | |
9bd6a503 VZ |
818 | #define wxUSE_HELP 1 |
819 | // 0 for no help facility | |
f6bcfd97 BP |
820 | #define wxUSE_MS_HTML_HELP 0 |
821 | // 0 for no MS HTML Help | |
874efd13 VZ |
822 | |
823 | // Use wxHTML-based help controller? | |
3379ed37 | 824 | #define wxUSE_WXHTML_HELP 1 |
874efd13 | 825 | |
9bd6a503 VZ |
826 | #define wxUSE_RESOURCES 1 |
827 | // 0 for no wxGetResource/wxWriteResource | |
828 | #define wxUSE_CONSTRAINTS 1 | |
829 | // 0 for no window layout constraint system | |
830 | ||
9bd6a503 | 831 | #define wxUSE_SPLINES 1 |
83b1bfaa | 832 | // 0 for no splines |
9bd6a503 | 833 | |
1e6feb95 VZ |
834 | #define wxUSE_XPM_IN_MSW 1 |
835 | // 0 for no XPM support in wxBitmap. | |
836 | // Default is 1, as XPM is now fully | |
837 | // supported this makes easier the issue | |
838 | // of portable icons and bitmaps. | |
9bd6a503 | 839 | |
9bd6a503 | 840 | #define wxUSE_IMAGE_LOADING_IN_MSW 1 |
83b1bfaa | 841 | // Use dynamic DIB loading/saving code in utils/dib under MSW. |
9bd6a503 | 842 | #define wxUSE_RESOURCE_LOADING_IN_MSW 1 |
83b1bfaa GRG |
843 | // Use dynamic icon/cursor loading/saving code |
844 | // under MSW. | |
9bd6a503 | 845 | #define wxUSE_WX_RESOURCES 1 |
83b1bfaa | 846 | // Use .wxr resource mechanism (requires PrologIO library) |
9bd6a503 | 847 | |
d2c52078 RD |
848 | #define wxUSE_MOUSEWHEEL 1 |
849 | // Include mouse wheel support | |
850 | ||
3b415ba4 | 851 | // ---------------------------------------------------------------------------- |
3ca6a5f0 | 852 | // postscript support settings |
3b415ba4 VZ |
853 | // ---------------------------------------------------------------------------- |
854 | ||
3ca6a5f0 | 855 | // Set to 1 for PostScript device context. |
3b415ba4 | 856 | #define wxUSE_POSTSCRIPT 0 |
3ca6a5f0 BP |
857 | |
858 | // Set to 1 to use font metric files in GetTextExtent | |
3b415ba4 | 859 | #define wxUSE_AFM_FOR_POSTSCRIPT 0 |
9bd6a503 | 860 | |
3ca6a5f0 BP |
861 | // Set to 0 to disable PostScript print/preview architecture code under Windows |
862 | // (just use Windows printing). | |
9bd6a503 | 863 | #define wxUSE_POSTSCRIPT_ARCHITECTURE_IN_MSW 1 |
3b415ba4 VZ |
864 | |
865 | // ---------------------------------------------------------------------------- | |
866 | // database classes | |
867 | // ---------------------------------------------------------------------------- | |
9bd6a503 | 868 | |
3ca6a5f0 | 869 | // Define 1 to use ODBC classes |
83b1bfaa | 870 | #define wxUSE_ODBC 0 |
9bd6a503 | 871 | |
3ca6a5f0 BP |
872 | // For backward compatibility reasons, this parameter now only controls the |
873 | // default scrolling method used by cursors. This default behavior can be | |
d2c52078 | 874 | // overriden by setting the second param of wxDB::wxDbGetConnection() or |
3ca6a5f0 | 875 | // wxDb() constructor to indicate whether the connection (and any wxDbTable()s |
d2c52078 RD |
876 | // that use the connection) should support forward only scrolling of cursors, |
877 | // or both forward and backward support for backward scrolling cursors is | |
3ca6a5f0 | 878 | // dependent on the data source as well as the ODBC driver being used. |
aeb040bf | 879 | #define wxODBC_FWD_ONLY_CURSORS 1 |
9695185a | 880 | |
3ca6a5f0 BP |
881 | // Default is 0. Set to 1 to use the deprecated classes, enum types, function, |
882 | // member variables. With a setting of 1, full backward compatability with the | |
883 | // 2.0.x release is possible. It is STRONGLY recommended that this be set to 0, | |
884 | // as future development will be done only on the non-deprecated | |
885 | // functions/classes/member variables/etc. | |
f6bcfd97 | 886 | #define wxODBC_BACKWARD_COMPATABILITY 0 |
f6bcfd97 | 887 | |
3b415ba4 VZ |
888 | // ---------------------------------------------------------------------------- |
889 | // other compiler (mis)features | |
890 | // ---------------------------------------------------------------------------- | |
891 | ||
892 | // Set this to 0 if your compiler can't cope with omission of prototype | |
893 | // parameters. | |
894 | // | |
895 | // Default is 1. | |
896 | // | |
897 | // Recommended setting: 1 (should never need to set this to 0) | |
898 | #define REMOVE_UNUSED_ARG 1 | |
899 | ||
900 | // VC++ 4.2 and above allows <iostream> and <iostream.h> but you can't mix | |
901 | // them. Set to 1 for <iostream.h>, 0 for <iostream> | |
902 | // | |
903 | // Default is 1. | |
904 | // | |
905 | // Recommended setting: whatever your compiler likes more | |
dbda9e86 | 906 | #define wxUSE_IOSTREAMH 1 |
d4ec5d32 | 907 | |
3b415ba4 VZ |
908 | // ---------------------------------------------------------------------------- |
909 | // image format support | |
910 | // ---------------------------------------------------------------------------- | |
911 | ||
3ca6a5f0 BP |
912 | // wxImage supports many different image formats which can be configured at |
913 | // compile-time. BMP is always supported, others are optional and can be safely | |
914 | // disabled if you don't plan to use images in such format sometimes saving | |
915 | // substantial amount of code in the final library. | |
916 | // | |
917 | // Some formats require an extra library which is included in wxWin sources | |
918 | // which is mentioned if it is the case. | |
919 | ||
0046ff7c VS |
920 | // Set to 1 for wxImage support (recommended). |
921 | #define wxUSE_IMAGE 1 | |
922 | ||
3ca6a5f0 | 923 | // Set to 1 for PNG format support (requires libpng). Also requires wxUSE_ZLIB. |
9bd6a503 | 924 | #define wxUSE_LIBPNG 1 |
3ca6a5f0 BP |
925 | |
926 | // Set to 1 for JPEG format support (requires libjpeg) | |
83b1bfaa | 927 | #define wxUSE_LIBJPEG 1 |
3ca6a5f0 BP |
928 | |
929 | // Set to 1 for TIFF format support (requires libtiff) | |
1ea67089 | 930 | #define wxUSE_LIBTIFF 1 |
3ca6a5f0 BP |
931 | |
932 | // Set to 1 for GIF format support | |
83b1bfaa | 933 | #define wxUSE_GIF 1 |
3ca6a5f0 BP |
934 | |
935 | // Set to 1 for PNM format support | |
1044a386 | 936 | #define wxUSE_PNM 1 |
3ca6a5f0 BP |
937 | |
938 | // Set to 1 for PCX format support | |
1044a386 | 939 | #define wxUSE_PCX 1 |
9bd6a503 | 940 | |
d297e8ff VZ |
941 | // Set to 1 for IFF format support (Amiga format) |
942 | #define wxUSE_IFF 0 | |
4b6b4dfc | 943 | |
0046ff7c VS |
944 | // Set to 1 for XPM format support |
945 | #define wxUSE_XPM 1 | |
946 | ||
658974ae VS |
947 | // Set to 1 for MS Icons and Cursors format support |
948 | #define wxUSE_ICO_CUR 1 | |
949 | ||
874efd13 | 950 | // Set to 1 to compile in wxPalette class |
d275c7eb VZ |
951 | #define wxUSE_PALETTE 1 |
952 | ||
3b415ba4 VZ |
953 | // ---------------------------------------------------------------------------- |
954 | // Windows-only settings | |
955 | // ---------------------------------------------------------------------------- | |
1318fabe | 956 | |
3ca6a5f0 BP |
957 | // Set this to 1 if you want to use wxWindows and MFC in the same program. This |
958 | // will override some other settings (see below) | |
959 | // | |
960 | // Default is 0. | |
961 | // | |
962 | // Recommended setting: 0 unless you really have to use MFC | |
3f8e5072 JS |
963 | #define wxUSE_MFC 0 |
964 | ||
3ca6a5f0 BP |
965 | // Set this to 1 for generic OLE support: this is required for drag-and-drop, |
966 | // clipboard, OLE Automation. Only set it to 0 if your compiler is very old and | |
967 | // can't compile/doesn't have the OLE headers. | |
968 | // | |
969 | // Default is 1. | |
970 | // | |
971 | // Recommended setting: 1 | |
3aa0e8fa | 972 | #define wxUSE_OLE 1 |
3aa0e8fa | 973 | |
3ca6a5f0 BP |
974 | // Set this to 1 to use Microsoft CTL3D library for "3D-look" under Win16 or NT |
975 | // 3.x. This setting is ignored under Win9x and NT 4.0+. | |
976 | // | |
977 | // Default is 0 for (most) Win32 (systems), 1 for Win16 | |
978 | // | |
979 | // Recommended setting: same as default | |
9bd6a503 | 980 | #if defined(__WIN95__) |
1f112209 | 981 | #define wxUSE_CTL3D 0 |
9bd6a503 | 982 | #else |
1f112209 | 983 | #define wxUSE_CTL3D 1 |
9bd6a503 VZ |
984 | #endif |
985 | ||
3ca6a5f0 BP |
986 | // Define as 1 to use Microsoft's ItsyBitsy small title bar library, for |
987 | // wxMiniFrame. This setting is only used for Win3.1; Win9x and NT use native | |
988 | // miniframes support instead. | |
989 | // | |
990 | // Default is 0 for (most) Win32 (systems), 1 for Win16 | |
991 | // | |
992 | // Recommended setting: same as default | |
993 | #if defined(__WIN95__) | |
994 | #define wxUSE_ITSY_BITSY 0 | |
995 | #else | |
996 | #define wxUSE_ITSY_BITSY 1 | |
997 | #endif | |
998 | ||
999 | // Set this to 1 to use RICHEDIT controls for wxTextCtrl with style wxTE_RICH | |
1000 | // which allows to put more than ~32Kb of text in it even under Win9x (NT | |
1001 | // doesn't have such limitation). | |
1002 | // | |
1003 | // Default is 1 for compilers which support it | |
1004 | // | |
1005 | // Recommended setting: 1, only set it to 0 if your compiler doesn't have | |
1006 | // or can't compile <richedit.h> | |
6d167489 | 1007 | #if defined(__WIN95__) && !defined(__TWIN32__) && !defined(__GNUWIN32_OLD__) |
be329a3d RD |
1008 | #define wxUSE_RICHEDIT 1 |
1009 | ||
1010 | // TODO: This should be ifdef'ed for any compilers that don't support | |
1011 | // RichEdit 2.0 but do have RichEdit 1.0... | |
1012 | #define wxUSE_RICHEDIT2 1 | |
1013 | ||
6d167489 | 1014 | #else |
be329a3d RD |
1015 | #define wxUSE_RICHEDIT 0 |
1016 | #define wxUSE_RICHEDIT2 0 | |
6d167489 VZ |
1017 | #endif |
1018 | ||
3ca6a5f0 BP |
1019 | // Set this to 1 to enable support for the owner-drawn menu and listboxes. This |
1020 | // is required by wxUSE_CHECKLISTBOX. | |
1021 | // | |
1022 | // Default is 1. | |
1023 | // | |
1024 | // Recommended setting: 1, set to 0 for a small library size reduction | |
1025 | #define wxUSE_OWNER_DRAWN 1 | |
1026 | ||
1027 | // ---------------------------------------------------------------------------- | |
1028 | // obsolete settings | |
1029 | // ---------------------------------------------------------------------------- | |
1030 | ||
1031 | // NB: all settings in this section are obsolete and should not be used/changed | |
1032 | // at all, they will disappear | |
1033 | ||
1034 | // Set to 1 to use PenWindows | |
7fee680b | 1035 | #define wxUSE_PENWINDOWS 0 |
9bd6a503 | 1036 | |
3ca6a5f0 BP |
1037 | // Define 1 to use bitmap messages. |
1038 | #define wxUSE_BITMAP_MESSAGE 1 | |
1039 | ||
1040 | // If 1, enables provision of run-time type information. | |
1041 | // NOW MANDATORY: don't change. | |
1042 | #define wxUSE_DYNAMIC_CLASSES 1 | |
1043 | ||
1044 | // ---------------------------------------------------------------------------- | |
1045 | // disable the settings which don't work for some compilers | |
1046 | // ---------------------------------------------------------------------------- | |
9bd6a503 | 1047 | |
1a7f3062 | 1048 | #ifndef wxUSE_NORLANDER_HEADERS |
b64f0a5f | 1049 | #if (defined(__MINGW32__) || defined(__CYGWIN__)) && ((__GNUC__>2) ||((__GNUC__==2) && (__GNUC_MINOR__>=95))) |
1a7f3062 | 1050 | # define wxUSE_NORLANDER_HEADERS 1 |
b64f0a5f RL |
1051 | #else |
1052 | # define wxUSE_NORLANDER_HEADERS 0 | |
1a7f3062 JS |
1053 | #endif |
1054 | #endif | |
1055 | ||
1ea67089 | 1056 | #if defined(__GNUWIN32__) |
f6bcfd97 | 1057 | // These don't work as expected for mingw32 and cygwin32 |
1ea67089 GRG |
1058 | #undef wxUSE_MEMORY_TRACING |
1059 | #define wxUSE_MEMORY_TRACING 0 | |
1060 | ||
1061 | #undef wxUSE_GLOBAL_MEMORY_OPERATORS | |
1062 | #define wxUSE_GLOBAL_MEMORY_OPERATORS 0 | |
1063 | ||
1064 | #undef wxUSE_DEBUG_NEW_ALWAYS | |
1065 | #define wxUSE_DEBUG_NEW_ALWAYS 0 | |
f6bcfd97 | 1066 | |
74afbadc JS |
1067 | // Cygwin betas don't have wcslen |
1068 | #if defined(__CYGWIN__) || defined(__CYGWIN32__) | |
1069 | # if ! ((__GNUC__>2) ||((__GNUC__==2) && (__GNUC_MINOR__>=95))) | |
1070 | # undef wxUSE_WCHAR_T | |
1071 | # define wxUSE_WCHAR_T 0 | |
1072 | # endif | |
f6bcfd97 BP |
1073 | #endif |
1074 | ||
74afbadc JS |
1075 | #endif // __GNUWIN32__ |
1076 | ||
3f8e5072 JS |
1077 | // MFC duplicates these operators |
1078 | #if wxUSE_MFC | |
1079 | #undef wxUSE_GLOBAL_MEMORY_OPERATORS | |
1080 | #define wxUSE_GLOBAL_MEMORY_OPERATORS 0 | |
1081 | ||
1082 | #undef wxUSE_DEBUG_NEW_ALWAYS | |
1083 | #define wxUSE_DEBUG_NEW_ALWAYS 0 | |
3b415ba4 | 1084 | #endif // wxUSE_MFC |
3f8e5072 | 1085 | |
f6bcfd97 BP |
1086 | // ODBC classes aren't Unicode-compatible yet |
1087 | #if wxUSE_UNICODE | |
1088 | #undef wxUSE_ODBC | |
1089 | #define wxUSE_ODBC 0 | |
1090 | #endif | |
1091 | ||
e06b9569 | 1092 | #if (!defined(WIN32) && !defined(__WIN32__)) || (defined(__GNUWIN32__) && !wxUSE_NORLANDER_HEADERS) |
9bd6a503 VZ |
1093 | // Can't use OLE drag and drop in Windows 3.1 because we don't know how |
1094 | // to implement UUIDs | |
1095 | // GnuWin32 doesn't have appropriate headers for e.g. IUnknown. | |
1096 | #undef wxUSE_DRAG_AND_DROP | |
1097 | #define wxUSE_DRAG_AND_DROP 0 | |
1098 | #endif | |
1099 | ||
1100 | // Only WIN32 supports wxStatusBar95 | |
1101 | #if !defined(__WIN32__) && wxUSE_NATIVE_STATUSBAR | |
1102 | #undef wxUSE_NATIVE_STATUSBAR | |
1103 | #define wxUSE_NATIVE_STATUSBAR 0 | |
1104 | #endif | |
1105 | ||
f6bcfd97 BP |
1106 | #if !wxUSE_OWNER_DRAWN |
1107 | #undef wxUSE_CHECKLISTBOX | |
1108 | #define wxUSE_CHECKLISTBOX 0 | |
1109 | #endif | |
1110 | ||
9bd6a503 VZ |
1111 | // Salford C++ doesn't like some of the memory operator definitions |
1112 | #ifdef __SALFORDC__ | |
1113 | #undef wxUSE_MEMORY_TRACING | |
1114 | #define wxUSE_MEMORY_TRACING 0 | |
1115 | ||
1116 | #undef wxUSE_GLOBAL_MEMORY_OPERATORS | |
1117 | #define wxUSE_GLOBAL_MEMORY_OPERATORS 0 | |
1118 | ||
1119 | #undef wxUSE_DEBUG_NEW_ALWAYS | |
1120 | #define wxUSE_DEBUG_NEW_ALWAYS 0 | |
1121 | ||
1122 | #undef wxUSE_THREADS | |
1123 | #define wxUSE_THREADS 0 | |
1124 | ||
9bd6a503 VZ |
1125 | #undef wxUSE_OWNER_DRAWN |
1126 | #define wxUSE_OWNER_DRAWN 0 | |
f6bcfd97 | 1127 | #endif // __SALFORDC__ |
9bd6a503 VZ |
1128 | |
1129 | #ifdef __TWIN32__ | |
1130 | ||
1131 | #undef wxUSE_THREADS | |
1132 | #define wxUSE_THREADS 0 | |
1133 | ||
9bd6a503 VZ |
1134 | #undef wxUSE_ODBC |
1135 | #define wxUSE_ODBC 0 | |
1136 | ||
f6bcfd97 | 1137 | #endif // __TWIN32__ |
9bd6a503 | 1138 | |
448af9a4 JS |
1139 | // BC++/Win16 can't cope with the amount of data in resource.cpp |
1140 | #if defined(__WIN16__) && defined(__BORLANDC__) | |
1141 | #undef wxUSE_WX_RESOURCES | |
1142 | #define wxUSE_WX_RESOURCES 0 | |
154f22b3 JS |
1143 | |
1144 | #undef wxUSE_ODBC | |
1145 | #define wxUSE_ODBC 0 | |
9c824f29 JS |
1146 | |
1147 | #undef wxUSE_NEW_GRID | |
1148 | #define wxUSE_NEW_GRID 0 | |
448af9a4 JS |
1149 | #endif |
1150 | ||
b2cf617c JS |
1151 | #if defined(__BORLANDC__) && (__BORLANDC__ < 0x500) |
1152 | // BC++ 4.0 can't compile JPEG library | |
1153 | #undef wxUSE_LIBJPEG | |
1154 | #define wxUSE_LIBJPEG 0 | |
1155 | #endif | |
1156 | ||
3ca6a5f0 | 1157 | // wxUSE_DEBUG_NEW_ALWAYS = 1 not compatible with BC++ in DLL mode |
f6bcfd97 BP |
1158 | #if defined(__BORLANDC__) && (defined(WXMAKINGDLL) || defined(WXUSINGDLL)) |
1159 | #undef wxUSE_DEBUG_NEW_ALWAYS | |
1160 | #define wxUSE_DEBUG_NEW_ALWAYS 0 | |
1161 | #endif | |
b2cf617c | 1162 | |
f6bcfd97 BP |
1163 | #if defined(__WXMSW__) && defined(__WATCOMC__) |
1164 | /* | |
b2cf617c JS |
1165 | #undef wxUSE_GLCANVAS |
1166 | #define wxUSE_GLCANVAS 0 | |
f6bcfd97 BP |
1167 | */ |
1168 | ||
f6bcfd97 BP |
1169 | #undef wxUSE_WCHAR_T |
1170 | #define wxUSE_WCHAR_T 0 | |
0cdf89ab JS |
1171 | #endif |
1172 | ||
9bd6a503 VZ |
1173 | #if defined(__WXMSW__) && !defined(__WIN32__) |
1174 | ||
8fb3a512 JS |
1175 | #undef wxUSE_SOCKETS |
1176 | #define wxUSE_SOCKETS 0 | |
1177 | ||
9bd6a503 VZ |
1178 | #undef wxUSE_THREADS |
1179 | #define wxUSE_THREADS 0 | |
1180 | ||
750b78ba JS |
1181 | #undef wxUSE_TOOLTIPS |
1182 | #define wxUSE_TOOLTIPS 0 | |
1183 | ||
0e528b99 JS |
1184 | #undef wxUSE_SPINCTRL |
1185 | #define wxUSE_SPINCTRL 0 | |
1186 | ||
1187 | #undef wxUSE_SPINBTN | |
1188 | #define wxUSE_SPINBTN 0 | |
1189 | ||
1044a386 JS |
1190 | #undef wxUSE_LIBPNG |
1191 | #define wxUSE_LIBPNG 0 | |
1192 | ||
1193 | #undef wxUSE_LIBJPEG | |
1194 | #define wxUSE_LIBJPEG 0 | |
1195 | ||
669f7a11 JS |
1196 | #undef wxUSE_LIBTIFF |
1197 | #define wxUSE_LIBTIFF 0 | |
1198 | ||
83b1bfaa GRG |
1199 | #undef wxUSE_GIF |
1200 | #define wxUSE_GIF 0 | |
1044a386 JS |
1201 | |
1202 | #undef wxUSE_PNM | |
1203 | #define wxUSE_PNM 0 | |
1204 | ||
1205 | #undef wxUSE_PCX | |
1206 | #define wxUSE_PCX 0 | |
1207 | ||
b2cf617c JS |
1208 | #undef wxUSE_GLCANVAS |
1209 | #define wxUSE_GLCANVAS 0 | |
1210 | ||
f6bcfd97 BP |
1211 | #undef wxUSE_MS_HTML_HELP |
1212 | #define wxUSE_MS_HTML_HELP 0 | |
1213 | ||
1214 | #undef wxUSE_WCHAR_T | |
1215 | #define wxUSE_WCHAR_T 0 | |
1216 | ||
1217 | #endif // Win16 | |
1218 | ||
3ca6a5f0 BP |
1219 | // ---------------------------------------------------------------------------- |
1220 | // undef the things which don't make sense for wxBase build | |
1221 | // ---------------------------------------------------------------------------- | |
1222 | ||
1223 | #if !wxUSE_GUI | |
1224 | ||
1225 | #undef wxUSE_HTML | |
1226 | #define wxUSE_HTML 0 | |
1227 | ||
1228 | #endif // !wxUSE_GUI | |
1229 | ||
f6bcfd97 BP |
1230 | // ---------------------------------------------------------------------------- |
1231 | // check the settings consistency: do it here to abort compilation immediately | |
1232 | // and not almost in the very end when the relevant file fails to compile and | |
1233 | // you need to modify setup.h and rebuild everything | |
1234 | // ---------------------------------------------------------------------------- | |
1235 | ||
874efd13 | 1236 | #if wxUSE_DATETIME && !wxUSE_LONGLONG |
f6bcfd97 | 1237 | #error wxDateTime requires wxLongLong |
9bd6a503 VZ |
1238 | #endif |
1239 | ||
f6bcfd97 BP |
1240 | #if wxUSE_TEXTFILE && !wxUSE_FILE |
1241 | #error You cannot compile wxTextFile without wxFile | |
1242 | #endif | |
1243 | ||
1244 | #if wxUSE_FILESYSTEM && !wxUSE_STREAMS | |
1245 | #error You cannot compile virtual file systems without wxUSE_STREAMS | |
1246 | #endif | |
1247 | ||
1248 | #if wxUSE_HTML && !wxUSE_FILESYSTEM | |
1249 | #error You cannot compile wxHTML without virtual file systems | |
1250 | #endif | |
1251 | ||
1252 | // add more tests here... | |
1253 | ||
9bd6a503 VZ |
1254 | #endif |
1255 | // _WX_SETUP_H_ |