]>
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 | |
9 | // Licence: wxWindows licence | |
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 | |
6d167489 VZ |
39 | // in wxMSW version 2.1.11 and earlier, wxIcon always derives from wxBitmap, |
40 | // but this is very dangerous because you can mistakenly pass an icon instead | |
41 | // of a bitmap to a function taking "const wxBitmap&" - which will *not* work | |
42 | // because an icon is not a valid bitmap | |
43 | // | |
44 | // Starting from 2.1.12, you have the choice under this backwards compatible | |
45 | // behaviour (your code will still compile, but probably won't behave as | |
46 | // expected!) and not deriving wxIcon class from wxBitmap, but providing a | |
47 | // conversion ctor wxBitmap(const wxIcon&) instead. | |
48 | // | |
49 | // Recommended setting: 0 | |
50 | #define wxICON_IS_BITMAP 0 | |
51 | ||
3b415ba4 VZ |
52 | // ---------------------------------------------------------------------------- |
53 | // debugging settings | |
54 | // ---------------------------------------------------------------------------- | |
55 | ||
56 | // Generic comment about debugging settings: they are very useful if you don't | |
57 | // use any other memory leak detection tools such as Purify/BoundsChecker, but | |
58 | // are probably redundant otherwise. Also, Visual C++ CRT has the same features | |
59 | // as wxWindows memory debugging subsystem built in since version 5.0 and you | |
60 | // may prefer to use it instead of built in memory debugging code because it is | |
61 | // faster and more fool proof. | |
62 | // | |
63 | // Using VC++ CRT memory debugging is enabled by default in debug mode | |
64 | // (__WXDEBUG__) if wxUSE_GLOBAL_MEMORY_OPERATORS is *not* enabled (i.e. is 0) | |
65 | // and if __NO_VC_CRTDBG__ is not defined. | |
66 | ||
67 | // If 1, enables wxDebugContext, for writing error messages to file, etc. If | |
68 | // __WXDEBUG__ is not defined, will still use normal memory operators. It's | |
69 | // recommended to set this to 1, since you may well need to output an error log | |
70 | // in a production version (or non-debugging beta). | |
71 | // | |
72 | // Default is 1. | |
73 | // | |
74 | // Recommended setting: 1 but see comment above | |
75 | #define wxUSE_DEBUG_CONTEXT 1 | |
76 | ||
77 | // If 1, enables debugging versions of wxObject::new and wxObject::delete *IF* | |
78 | // __WXDEBUG__ is also defined. | |
79 | // | |
80 | // WARNING: this code may not work with all architectures, especially if | |
81 | // alignment is an issue. This switch is currently ignored for mingw / cygwin | |
82 | // | |
83 | // Default is 1 | |
84 | // | |
85 | // Recommended setting: 1 but see comment in the beginning of this section | |
86 | #define wxUSE_MEMORY_TRACING 1 | |
87 | ||
88 | // In debug mode, cause new and delete to be redefined globally. | |
89 | // If this causes problems (e.g. link errors), set this to 0. | |
90 | // This switch is currently ignored for mingw / cygwin | |
91 | // | |
92 | // Default is 1 | |
93 | // | |
94 | // Recommended setting: 1 but see comment in the beginning of this section | |
95 | #define wxUSE_GLOBAL_MEMORY_OPERATORS 1 | |
96 | ||
97 | // In debug mode, causes new to be defined to be WXDEBUG_NEW (see object.h). If | |
98 | // this causes problems (e.g. link errors), set this to 0. You may need to set | |
99 | // this to 0 if using templates (at least for VC++). This switch is currently | |
100 | // ignored for mingw / cygwin | |
101 | // | |
102 | // Default is 1 | |
103 | // | |
104 | // Recommended setting: 1 but see comment in the beginning of this section | |
105 | #define wxUSE_DEBUG_NEW_ALWAYS 1 | |
106 | ||
107 | // wxHandleFatalExceptions() may be used to catch the program faults at run | |
108 | // time and, instead of terminating the program with a usual GPF message box, | |
109 | // call the user-defined wxApp::OnFatalException() function. If you set | |
110 | // wxUSE_ON_FATAL_EXCEPTION to 0, wxHandleFatalExceptions() will not work. | |
111 | // | |
112 | // This setting is for Win32 only and can only be enabled if your compiler | |
113 | // supports Win32 structured exception handling (currently only VC++ does) | |
114 | // | |
115 | // Default is 1 | |
116 | // | |
117 | // Recommended setting: 1 if your compiler supports it. | |
118 | #ifdef _MSC_VER | |
119 | #define wxUSE_ON_FATAL_EXCEPTION 1 | |
120 | #else | |
121 | #define wxUSE_ON_FATAL_EXCEPTION 0 | |
122 | #endif | |
123 | ||
f6bcfd97 BP |
124 | // ---------------------------------------------------------------------------- |
125 | // Unicode support | |
126 | // ---------------------------------------------------------------------------- | |
127 | ||
128 | // Set wxUSE_UNICODE to 1 to compile wxWindows in Unicode mode: wxChar will be | |
129 | // defined as wchar_t, wxString will use Unicode internally. If you set this | |
130 | // to 1, you must use wxT() macro for all literal strings in the program. | |
131 | // | |
132 | // Unicode is currently only fully supported under Windows NT/2000 (Windows 9x | |
133 | // doesn't support it and the programs compiled in Unicode mode will not run | |
134 | // under 9x). | |
135 | // | |
136 | // Default is 0 | |
137 | // | |
138 | // Recommended setting: 0 (unless you only plan to use Windows NT/2000) | |
139 | #define wxUSE_UNICODE 0 | |
140 | ||
141 | // Setting wxUSE_WCHAR_T to 1 gives you some degree of Unicode support without | |
142 | // compiling the program in Unicode mode. More precisely, it will be possible | |
143 | // to construct wxString from a wide (Unicode) string and convert any wxString | |
144 | // to Unicode. | |
145 | // | |
146 | // Default is 1 | |
147 | // | |
148 | // Recommended setting: 1 | |
149 | #define wxUSE_WCHAR_T 1 | |
150 | ||
3b415ba4 VZ |
151 | // ---------------------------------------------------------------------------- |
152 | // global features | |
153 | // ---------------------------------------------------------------------------- | |
154 | ||
155 | // Support for message/error logging. This includes wxLogXXX() functions and | |
156 | // wxLog and derived classes. Don't set this to 0 unless you really know what | |
157 | // you are doing. | |
158 | // | |
159 | // Default is 1 | |
160 | // | |
161 | // Recommended setting: 1 (always) | |
162 | #define wxUSE_LOG 1 | |
163 | ||
164 | // Support for multithreaded applications: if 1, compile in thread classes | |
165 | // (thread.h) and make the library a bit more thread safe. Although thread | |
166 | // support is quite stable by now, you may still consider recompiling the | |
167 | // library without it if you have no use for it - this will result in a | |
168 | // somewhat smaller and faster operation. | |
169 | // | |
170 | // This is ignored under Win16, threads are only supported under Win32. | |
171 | // | |
172 | // Default is 1 | |
173 | // | |
174 | // Recommended setting: 0 unless you do plan to develop MT applications | |
175 | #define wxUSE_THREADS 1 | |
176 | ||
177 | // If enabled (1), compiles wxWindows streams classes | |
178 | #define wxUSE_STREAMS 1 | |
179 | ||
180 | // Use standard C++ streams if 1. If 0, use wxWin streams implementation. | |
181 | #define wxUSE_STD_IOSTREAM 0 | |
182 | ||
183 | // Use serialization (requires utils/serialize) | |
184 | #define wxUSE_SERIAL 0 | |
185 | ||
73974df1 | 186 | // ---------------------------------------------------------------------------- |
40973ea5 | 187 | // non GUI features selection |
73974df1 VZ |
188 | // ---------------------------------------------------------------------------- |
189 | ||
40973ea5 VZ |
190 | // Set wxUSE_LONGLONG to 1 to compile the wxLongLong class. This is a 64 bit |
191 | // integer which is implemented in terms of native 64 bit integers if any or | |
192 | // uses emulation otherwise. | |
193 | // | |
194 | // This class is required by wxDateTime and so you should enable it if you want | |
195 | // to use wxDateTime. For most modern platforms, it will use the native 64 bit | |
196 | // integers in which case (almost) all of its functions are inline and it | |
197 | // almost does not take any space, so there should be no reason to switch it | |
198 | // off. | |
199 | // | |
200 | // Recommended setting: 1 | |
201 | #define wxUSE_LONGLONG 1 | |
202 | ||
203 | // Set wxUSE_TIMEDATE to 1 to compile the wxDateTime and related classes which | |
204 | // allow to manipulate dates, times and time intervals. wxDateTime replaces the | |
205 | // old wxTime and wxDate classes which are still provided for backwards | |
206 | // compatibility (and implemented in terms of wxDateTime). | |
207 | // | |
208 | // Note that this class is relatively new and is still officially in alpha | |
209 | // stage because some features are not yet (fully) implemented. It is already | |
210 | // quite useful though and should only be disabled if you are aiming at | |
211 | // absolutely minimal version of the library. | |
212 | // | |
213 | // Requires: wxUSE_LONGLONG | |
214 | // | |
215 | // Recommended setting: 1 | |
216 | #define wxUSE_TIMEDATE 1 | |
217 | ||
16193c2b VZ |
218 | // Setting wxUSE_CONFIG to 1 enables the use of wxConfig and related classes |
219 | // which allow the application to store its settings in the persistent | |
220 | // storage. Setting this to 1 will also enable on-demand creation of the | |
221 | // global config object in wxApp. | |
222 | // | |
223 | // See also wxUSE_CONFIG_NATIVE below. | |
224 | // | |
225 | // Recommended setting: 1 | |
73974df1 | 226 | #define wxUSE_CONFIG 1 |
16193c2b VZ |
227 | |
228 | // If wxUSE_CONFIG is 1, you may choose to use either the native config | |
229 | // classes under Windows (using .INI files under Win16 and the registry under | |
230 | // Win32) or the portable text file format used by the config classes under | |
231 | // Unix. | |
232 | // | |
233 | // Default is 1 to use native classes. Note that you may still use | |
234 | // wxFileConfig even if you set this to 1 - just the config object created by | |
235 | // default for the applications needs will be a wxRegConfig or wxIniConfig and | |
236 | // not wxFileConfig. | |
237 | // | |
238 | // Recommended setting: 1 | |
239 | #define wxUSE_CONFIG_NATIVE 1 | |
240 | ||
bf84b0be VZ |
241 | // If wxUSE_DIALUP_MANAGER is 1, compile in wxDialUpManager class which allows |
242 | // to connect/disconnect from the network and be notified whenever the dial-up | |
243 | // network connection is established/terminated. | |
244 | // | |
245 | // Default is 1. | |
246 | // | |
247 | // Recommended setting: 1 | |
106f0395 | 248 | #define wxUSE_DIALUP_MANAGER 1 |
bf84b0be | 249 | |
3b415ba4 VZ |
250 | // Compile in wxLibrary class for run-time DLL loading and function calling |
251 | // | |
252 | // This setting is for Win32 only | |
253 | // | |
254 | // Default is 1. | |
255 | // | |
256 | // Recommended setting: 1 | |
257 | #define wxUSE_DYNLIB_CLASS 1 | |
258 | ||
259 | // Set to 1 to use socket classes | |
260 | #define wxUSE_SOCKETS 1 | |
261 | ||
262 | // Set to 1 to enable virtual file systems | |
263 | // (needed by wxHTML) | |
264 | #define wxUSE_FILESYSTEM 1 | |
265 | #define wxUSE_FS_ZIP 1 | |
266 | #define wxUSE_FS_INET 1 | |
267 | ||
268 | // input stream for reading from zip archives | |
269 | #define wxUSE_ZIPSTREAM 1 | |
270 | ||
271 | #define wxUSE_APPLE_IEEE 1 | |
272 | // if enabled, the float codec written by Apple | |
273 | // will be used to write, in a portable way, | |
274 | // float on the disk | |
275 | ||
276 | // use wxFile class - required by i18n code, wxConfig and others - recommended | |
277 | #define wxUSE_FILE 1 | |
278 | ||
279 | // use wxTextFile class: requires wxFile, required by wxConfig | |
280 | #define wxUSE_TEXTFILE 1 | |
281 | ||
282 | // i18n support: _() macro, wxLocale class. Requires wxFile | |
283 | #define wxUSE_INTL 1 | |
284 | ||
ede8795f RD |
285 | #define wxUSE_DYNAMIC_CLASSES 1 |
286 | // If 1, enables provision of run-time type information. | |
287 | // NOW MANDATORY: don't change. | |
288 | ||
bf84b0be VZ |
289 | // ---------------------------------------------------------------------------- |
290 | // Optional controls | |
291 | // ---------------------------------------------------------------------------- | |
292 | ||
293 | // wxToolBar related settings: if wxUSE_TOOLBAR is 0, don't compile any toolbar | |
294 | // classes at all. Otherwise, use the native toolbar class unless | |
295 | // wxUSE_TOOLBAR_NATIVE is 0. Additionally, the generic toolbar class which | |
296 | // supports some features which might not be supported by the native wxToolBar | |
297 | // class may be compiled in if wxUSE_TOOLBAR_SIMPLE is 1. | |
298 | // | |
299 | // Default is 1 for all settings. | |
300 | // | |
301 | // Recommended setting: 1 for wxUSE_TOOLBAR and wxUSE_TOOLBAR_NATIVE and 0 for | |
302 | // wxUSE_TOOLBAR_SIMPLE (the default is 1 mainly for backwards compatibility). | |
303 | #define wxUSE_TOOLBAR 1 | |
304 | #define wxUSE_TOOLBAR_NATIVE 1 | |
305 | #define wxUSE_TOOLBAR_SIMPLE 1 | |
306 | ||
b3402d0d VZ |
307 | // wxNotebook is a control with several "tabs" located on one of its sides. It |
308 | // may be used ot logically organise the data presented to the user instead of | |
309 | // putting everything in one huge dialog. It replaces wxTabControl and related | |
310 | // classes of wxWin 1.6x. | |
311 | // | |
312 | // Default is 1. | |
313 | // | |
314 | // Recommended setting: 1 | |
315 | #define wxUSE_NOTEBOOK 1 | |
316 | ||
317 | // The corresponding controls will be compiled in if wxUSE_<CONTROL> is set to | |
318 | // 1 and not compiled into the library otherwise. | |
319 | // | |
320 | // Default is 1 for everything. | |
321 | // | |
322 | // Recommended setting: 1 (library might fail to compile for some combinations | |
ff2d113e VZ |
323 | // of disabled controls) |
324 | #define wxUSE_CARET 1 | |
325 | #define wxUSE_CHECKBOX 1 | |
326 | #define wxUSE_CHECKLISTBOX 1 | |
b3402d0d | 327 | #define wxUSE_CHOICE 1 |
ff2d113e VZ |
328 | #define wxUSE_COMBOBOX 1 |
329 | #define wxUSE_GAUGE 1 | |
330 | #define wxUSE_LISTBOX 1 | |
b3402d0d | 331 | #define wxUSE_RADIOBOX 1 |
ff2d113e | 332 | #define wxUSE_RADIOBTN 1 |
3b415ba4 | 333 | #define wxUSE_SASH 1 // wxSashWindow |
b3402d0d | 334 | #define wxUSE_SCROLLBAR 1 |
ff2d113e | 335 | #define wxUSE_SLIDER 1 |
b3402d0d VZ |
336 | #define wxUSE_SPINBTN 1 |
337 | #define wxUSE_SPINCTRL 1 | |
338 | #define wxUSE_STATLINE 1 | |
3b415ba4 VZ |
339 | #define wxUSE_STATUSBAR 1 |
340 | #define wxUSE_TOOLTIPS 1 // wxToolTip and wxWindow::SetToolTip() | |
341 | ||
342 | // Two status bar implementations are available under Win32: the generic one | |
343 | // or the wrapper around native control. For native look and feel the native | |
344 | // version should be used. | |
345 | // | |
346 | // Default is 1. | |
347 | // | |
348 | // Recommended setting: 1 | |
349 | #define wxUSE_NATIVE_STATUSBAR 1 | |
ff2d113e VZ |
350 | |
351 | // this setting is obsolete, value is ignored | |
352 | #define wxUSE_BUTTONBAR 1 | |
353 | ||
354 | // wxGrid class comes in two flavours: the original (pre wxWin 2.2) one and | |
355 | // the new, much imporved and enhanced version. The new version is backwards | |
356 | // compatible with the old one and should be used whenever possible, i.e. if | |
357 | // you set wxUSE_GRID to 1, set wxUSE_NEW_GRID to 1 too. | |
358 | // | |
359 | // Default is 1 for both options. | |
360 | // | |
361 | // Recommended setting: 1 for wxUSE_NEW_GRID, 0 if you have an old code using | |
362 | // wxGrid and 100% backwards compatible (with all old wxGrid quirks) is | |
363 | // essential. | |
9c824f29 JS |
364 | // |
365 | // WIN16/BC++ resets wxUSE_NEW_GRID to 0 because it exceeds the data limit. | |
ff2d113e VZ |
366 | #define wxUSE_GRID 1 |
367 | #define wxUSE_NEW_GRID 1 | |
b3402d0d | 368 | |
3b415ba4 VZ |
369 | // wxValidator class and related methods |
370 | #define wxUSE_VALIDATORS 1 | |
371 | ||
372 | // wxAcceleratorTable/Entry classes and support for them in wxMenu(Bar) | |
373 | #define wxUSE_ACCEL 1 | |
374 | ||
375 | // ---------------------------------------------------------------------------- | |
376 | // common dialogs | |
377 | // ---------------------------------------------------------------------------- | |
378 | ||
379 | // Define 1 to use generic dialogs in Windows, even though they duplicate | |
380 | // native common dialog (e.g. wxColourDialog). This is mainly useful for | |
381 | // testing. | |
382 | // | |
383 | // Default is 0 | |
384 | // | |
385 | // Recommended setting: 0 | |
386 | #define wxUSE_GENERIC_DIALOGS_IN_MSW 0 | |
387 | ||
388 | // On rare occasions (e.g. using DJGPP) may want to omit common dialogs (e.g. | |
389 | // file selector, printer dialog). Switching this off also switches off the | |
390 | // printing architecture and interactive wxPrinterDC. | |
391 | // | |
392 | // Default is 1 | |
393 | // | |
394 | // Recommended setting: 1 (unless it really doesn't work) | |
395 | #define wxUSE_COMMON_DIALOGS 1 | |
396 | ||
397 | // text entry dialog and wxGetTextFromUser function | |
398 | #define wxUSE_TEXTDLG 1 | |
399 | ||
400 | // progress dialog class for lengthy operations | |
401 | #define wxUSE_PROGRESSDLG 1 | |
402 | ||
403 | // wxBusyInfo displays window with message when app is busy. Works in same way | |
404 | // as wxBusyCursor | |
405 | #define wxUSE_BUSYINFO 1 | |
406 | ||
407 | // wxDirDlg class for getting a directory name from user | |
408 | #define wxUSE_DIRDLG 1 | |
409 | ||
410 | // support for startup tips (wxShowTip &c) | |
411 | #define wxUSE_STARTUP_TIPS 1 | |
412 | ||
d9317fd4 VZ |
413 | // ---------------------------------------------------------------------------- |
414 | // Metafiles support | |
415 | // ---------------------------------------------------------------------------- | |
416 | ||
417 | // Windows supports the graphics format known as metafile which is, though not | |
418 | // portable, is widely used under Windows and so is supported by wxWin (under | |
419 | // Windows only, of course). Win16 (Win3.1) used the so-called "Window | |
420 | // MetaFiles" or WMFs which were replaced with "Enhanced MetaFiles" or EMFs in | |
421 | // Win32 (Win9x, NT, 2000). Both of these are supported in wxWin and, by | |
422 | // default, WMFs will be used under Win16 and EMFs under Win32. This may be | |
423 | // changed by setting wxUSE_WIN_METAFILES_ALWAYS to 1 and/or setting | |
424 | // wxUSE_ENH_METAFILE to 0. You may also set wxUSE_METAFILE to 0 to not compile | |
425 | // in any metafile related classes at all. | |
426 | // | |
427 | // Default is 1 for wxUSE_ENH_METAFILE and 0 for wxUSE_WIN_METAFILES_ALWAYS. | |
428 | // | |
429 | // Recommended setting: default or 0 for everything for portable programs. | |
430 | #define wxUSE_METAFILE 1 | |
431 | #define wxUSE_ENH_METAFILE 1 | |
432 | #define wxUSE_WIN_METAFILES_ALWAYS 0 | |
433 | ||
ff2d113e VZ |
434 | // ---------------------------------------------------------------------------- |
435 | // Big GUI components | |
436 | // ---------------------------------------------------------------------------- | |
437 | ||
3b415ba4 VZ |
438 | // Set to 0 to disable document/view architecture |
439 | #define wxUSE_DOC_VIEW_ARCHITECTURE 1 | |
440 | ||
441 | // Set to 0 to disable MDI document/view architecture | |
442 | #define wxUSE_MDI_ARCHITECTURE 1 | |
443 | ||
444 | // Set to 0 to disable print/preview architecture code | |
445 | #define wxUSE_PRINTING_ARCHITECTURE 1 | |
446 | ||
ff2d113e VZ |
447 | // wxHTML sublibrary allows to display HTML in wxWindow programs and much, |
448 | // much more. | |
449 | // | |
450 | // Default is 1. | |
451 | // | |
452 | // Recommended setting: 1 (wxHTML is great!), set to 0 if you want compile a | |
453 | // smaller library. | |
454 | #define wxUSE_HTML 1 | |
455 | ||
456 | // wxPlot is a class to display functions plots in wxWindow. | |
457 | // | |
458 | // Default is 1. | |
459 | // | |
460 | // Recommended setting: 1 | |
461 | #define wxUSE_PLOT 1 | |
462 | ||
8b089c5e JS |
463 | // OpenGL canvas |
464 | #define wxUSE_GLCANVAS 0 | |
465 | ||
babc9758 JS |
466 | // wxTreeLayout class |
467 | #define wxUSE_TREELAYOUT 1 | |
468 | ||
bf84b0be | 469 | // ---------------------------------------------------------------------------- |
3b415ba4 | 470 | // miscellaneous settings |
bf84b0be VZ |
471 | // ---------------------------------------------------------------------------- |
472 | ||
9bd6a503 VZ |
473 | #define wxUSE_IPC 1 |
474 | // 0 for no interprocess comms | |
9bd6a503 VZ |
475 | #define wxUSE_HELP 1 |
476 | // 0 for no help facility | |
f6bcfd97 BP |
477 | #define wxUSE_MS_HTML_HELP 0 |
478 | // 0 for no MS HTML Help | |
9bd6a503 VZ |
479 | #define wxUSE_RESOURCES 1 |
480 | // 0 for no wxGetResource/wxWriteResource | |
481 | #define wxUSE_CONSTRAINTS 1 | |
482 | // 0 for no window layout constraint system | |
483 | ||
9bd6a503 VZ |
484 | #define wxUSE_CLIPBOARD 1 |
485 | // 0 for no clipboard functions | |
1f112209 | 486 | |
9bd6a503 | 487 | #define wxUSE_SPLINES 1 |
83b1bfaa | 488 | // 0 for no splines |
9bd6a503 VZ |
489 | |
490 | #define wxUSE_DRAG_AND_DROP 1 | |
491 | // 0 for no drag and drop | |
492 | ||
83b1bfaa | 493 | #define wxUSE_XPM_IN_MSW 1 |
1ea67089 GRG |
494 | // 0 for no XPM support in wxBitmap. |
495 | // Default is 1, as XPM is now fully | |
496 | // supported this makes easier the issue | |
497 | // of portable icons and bitmaps. | |
9bd6a503 | 498 | #define wxUSE_IMAGE_LOADING_IN_MSW 1 |
83b1bfaa | 499 | // Use dynamic DIB loading/saving code in utils/dib under MSW. |
9bd6a503 | 500 | #define wxUSE_RESOURCE_LOADING_IN_MSW 1 |
83b1bfaa GRG |
501 | // Use dynamic icon/cursor loading/saving code |
502 | // under MSW. | |
9bd6a503 | 503 | #define wxUSE_WX_RESOURCES 1 |
83b1bfaa | 504 | // Use .wxr resource mechanism (requires PrologIO library) |
9bd6a503 | 505 | |
3b415ba4 VZ |
506 | // ---------------------------------------------------------------------------- |
507 | // Postscript support settings | |
508 | // ---------------------------------------------------------------------------- | |
509 | ||
510 | #define wxUSE_POSTSCRIPT 0 | |
511 | // 0 for no PostScript device context | |
512 | #define wxUSE_AFM_FOR_POSTSCRIPT 0 | |
513 | // 1 to use font metric files in GetTextExtent | |
9bd6a503 | 514 | |
9bd6a503 | 515 | #define wxUSE_POSTSCRIPT_ARCHITECTURE_IN_MSW 1 |
83b1bfaa GRG |
516 | // Set to 0 to disable PostScript print/preview architecture code |
517 | // under Windows (just use Windows printing). | |
3b415ba4 VZ |
518 | |
519 | // ---------------------------------------------------------------------------- | |
520 | // database classes | |
521 | // ---------------------------------------------------------------------------- | |
9bd6a503 | 522 | |
83b1bfaa GRG |
523 | #define wxUSE_ODBC 0 |
524 | // Define 1 to use ODBC classes | |
9bd6a503 | 525 | |
aeb040bf GT |
526 | #define wxODBC_FWD_ONLY_CURSORS 1 |
527 | // For backward compatibility reasons, this parameter now only | |
528 | // controls the default scrolling method used by cursors. This | |
529 | // default behavior can be overriden by setting the second param | |
530 | // of wxDB::GetDbConnection() to indicate whether the connection | |
531 | // (and any wxTable()s that use the connection) should support | |
532 | // forward only scrolling of cursors, or both forward and backward | |
ede8795f | 533 | // Support for backward scrolling cursors is dependent on the |
aeb040bf | 534 | // data source as well as the ODBC driver being used. |
9695185a | 535 | |
f6bcfd97 BP |
536 | #define wxODBC_BACKWARD_COMPATABILITY 0 |
537 | // Default is 0. Set to 1 to use the deprecated classes, enum | |
538 | // types, function, member variables. With a setting of 1, full | |
539 | // backward compatability with the 2.0.x release is possible. | |
540 | // It is STRONGLY recommended that this be set to 0, as | |
541 | // future development will be done only on the non-deprecated | |
542 | // functions/classes/member variables/etc. | |
543 | ||
3b415ba4 VZ |
544 | // ---------------------------------------------------------------------------- |
545 | // other compiler (mis)features | |
546 | // ---------------------------------------------------------------------------- | |
547 | ||
548 | // Set this to 0 if your compiler can't cope with omission of prototype | |
549 | // parameters. | |
550 | // | |
551 | // Default is 1. | |
552 | // | |
553 | // Recommended setting: 1 (should never need to set this to 0) | |
554 | #define REMOVE_UNUSED_ARG 1 | |
555 | ||
556 | // VC++ 4.2 and above allows <iostream> and <iostream.h> but you can't mix | |
557 | // them. Set to 1 for <iostream.h>, 0 for <iostream> | |
558 | // | |
559 | // Default is 1. | |
560 | // | |
561 | // Recommended setting: whatever your compiler likes more | |
dbda9e86 | 562 | #define wxUSE_IOSTREAMH 1 |
d4ec5d32 | 563 | |
3b415ba4 VZ |
564 | // ---------------------------------------------------------------------------- |
565 | // image format support | |
566 | // ---------------------------------------------------------------------------- | |
567 | ||
9bd6a503 | 568 | #define wxUSE_ZLIB 1 |
83b1bfaa | 569 | // Use zlib for compression in streams and PNG code |
9bd6a503 | 570 | #define wxUSE_LIBPNG 1 |
83b1bfaa GRG |
571 | // Use PNG bitmap/image code |
572 | #define wxUSE_LIBJPEG 1 | |
573 | // Use JPEG bitmap/image code | |
1ea67089 | 574 | #define wxUSE_LIBTIFF 1 |
5ea6dbbf | 575 | // Use TIFF bitmap/image code |
83b1bfaa GRG |
576 | #define wxUSE_GIF 1 |
577 | // Use GIF bitmap/image code | |
1044a386 | 578 | #define wxUSE_PNM 1 |
83b1bfaa | 579 | // Use PNM bitmap/image code |
1044a386 | 580 | #define wxUSE_PCX 1 |
83b1bfaa | 581 | // Use PCX bitmap/image code |
9bd6a503 | 582 | |
3b415ba4 VZ |
583 | // ---------------------------------------------------------------------------- |
584 | // Windows-only settings | |
585 | // ---------------------------------------------------------------------------- | |
1318fabe | 586 | |
3f8e5072 JS |
587 | // Make settings compatible with MFC |
588 | #define wxUSE_MFC 0 | |
589 | ||
3b415ba4 | 590 | // required for drag-and-drop, clipboard, OLE Automation |
3aa0e8fa | 591 | #define wxUSE_OLE 1 |
3aa0e8fa | 592 | |
9bd6a503 | 593 | #if defined(__WIN95__) |
1f112209 | 594 | #define wxUSE_CTL3D 0 |
9bd6a503 | 595 | #else |
3b415ba4 | 596 | // Define 1 to use Microsoft CTL3D library. |
1f112209 | 597 | #define wxUSE_CTL3D 1 |
9bd6a503 VZ |
598 | #endif |
599 | ||
6d167489 VZ |
600 | // can we use RICHEDIT control? |
601 | #if defined(__WIN95__) && !defined(__TWIN32__) && !defined(__GNUWIN32_OLD__) | |
602 | #define wxUSE_RICHEDIT 1 | |
603 | #else | |
604 | #define wxUSE_RICHEDIT 0 | |
605 | #endif | |
606 | ||
9bd6a503 | 607 | #define wxUSE_ITSY_BITSY 1 |
83b1bfaa | 608 | // Define 1 to use Microsoft's ItsyBitsy |
1ea67089 GRG |
609 | // small title bar library, for wxMiniFrame. |
610 | // This setting is only used for Win3.1; | |
611 | // Win9x and NT use native miniframes | |
612 | // support instead. | |
9bd6a503 | 613 | #define wxUSE_BITMAP_MESSAGE 1 |
83b1bfaa | 614 | // Define 1 to use bitmap messages. |
1f112209 | 615 | #define wxFONT_SIZE_COMPATIBILITY 0 |
83b1bfaa GRG |
616 | // Define 1 for font size to be backward compatible |
617 | // to 1.63 and earlier. 1.64 and later define point | |
618 | // sizes to be compatible with Windows. | |
f6bcfd97 BP |
619 | #define wxDIALOG_UNIT_COMPATIBILITY 0 |
620 | // Set to 0 for accurate dialog units, else | |
621 | // 1 to be as per 2.1.16 and before. If migrating | |
622 | // between versions, your dialogs may seem to shrink. | |
7fee680b | 623 | #define wxUSE_PENWINDOWS 0 |
83b1bfaa | 624 | // Set to 1 to use PenWindows |
9bd6a503 VZ |
625 | |
626 | #define wxUSE_OWNER_DRAWN 1 | |
83b1bfaa | 627 | // Owner-drawn menus and listboxes |
9bd6a503 | 628 | |
74afbadc | 629 | #if (defined(__MINGW32__) || defined(__CYGWIN__)) && ((__GNUC__>2) ||((__GNUC__==2) && (__GNUC_MINOR__>=95))) |
1a7f3062 JS |
630 | #ifndef wxUSE_NORLANDER_HEADERS |
631 | # define wxUSE_NORLANDER_HEADERS 1 | |
632 | #endif | |
633 | #endif | |
634 | ||
3b415ba4 VZ |
635 | // ---------------------------------------------------------------------------- |
636 | // disable the settings which don't work for some compilers | |
637 | // ---------------------------------------------------------------------------- | |
638 | ||
1ea67089 | 639 | #if defined(__GNUWIN32__) |
f6bcfd97 | 640 | // These don't work as expected for mingw32 and cygwin32 |
1ea67089 GRG |
641 | #undef wxUSE_MEMORY_TRACING |
642 | #define wxUSE_MEMORY_TRACING 0 | |
643 | ||
644 | #undef wxUSE_GLOBAL_MEMORY_OPERATORS | |
645 | #define wxUSE_GLOBAL_MEMORY_OPERATORS 0 | |
646 | ||
647 | #undef wxUSE_DEBUG_NEW_ALWAYS | |
648 | #define wxUSE_DEBUG_NEW_ALWAYS 0 | |
f6bcfd97 BP |
649 | |
650 | #undef wxUSE_MS_HTML_HELP | |
651 | #define wxUSE_MS_HTML_HELP 0 | |
652 | ||
74afbadc JS |
653 | // Cygwin betas don't have wcslen |
654 | #if defined(__CYGWIN__) || defined(__CYGWIN32__) | |
655 | # if ! ((__GNUC__>2) ||((__GNUC__==2) && (__GNUC_MINOR__>=95))) | |
656 | # undef wxUSE_WCHAR_T | |
657 | # define wxUSE_WCHAR_T 0 | |
658 | # endif | |
f6bcfd97 BP |
659 | #endif |
660 | ||
74afbadc JS |
661 | #endif // __GNUWIN32__ |
662 | ||
3f8e5072 JS |
663 | // MFC duplicates these operators |
664 | #if wxUSE_MFC | |
665 | #undef wxUSE_GLOBAL_MEMORY_OPERATORS | |
666 | #define wxUSE_GLOBAL_MEMORY_OPERATORS 0 | |
667 | ||
668 | #undef wxUSE_DEBUG_NEW_ALWAYS | |
669 | #define wxUSE_DEBUG_NEW_ALWAYS 0 | |
3b415ba4 | 670 | #endif // wxUSE_MFC |
3f8e5072 | 671 | |
f6bcfd97 BP |
672 | // ODBC classes aren't Unicode-compatible yet |
673 | #if wxUSE_UNICODE | |
674 | #undef wxUSE_ODBC | |
675 | #define wxUSE_ODBC 0 | |
676 | #endif | |
677 | ||
e06b9569 | 678 | #if (!defined(WIN32) && !defined(__WIN32__)) || (defined(__GNUWIN32__) && !wxUSE_NORLANDER_HEADERS) |
9bd6a503 VZ |
679 | // Can't use OLE drag and drop in Windows 3.1 because we don't know how |
680 | // to implement UUIDs | |
681 | // GnuWin32 doesn't have appropriate headers for e.g. IUnknown. | |
682 | #undef wxUSE_DRAG_AND_DROP | |
683 | #define wxUSE_DRAG_AND_DROP 0 | |
684 | #endif | |
685 | ||
686 | // Only WIN32 supports wxStatusBar95 | |
687 | #if !defined(__WIN32__) && wxUSE_NATIVE_STATUSBAR | |
688 | #undef wxUSE_NATIVE_STATUSBAR | |
689 | #define wxUSE_NATIVE_STATUSBAR 0 | |
690 | #endif | |
691 | ||
f6bcfd97 BP |
692 | #if !wxUSE_OWNER_DRAWN |
693 | #undef wxUSE_CHECKLISTBOX | |
694 | #define wxUSE_CHECKLISTBOX 0 | |
695 | #endif | |
696 | ||
9bd6a503 VZ |
697 | // Salford C++ doesn't like some of the memory operator definitions |
698 | #ifdef __SALFORDC__ | |
699 | #undef wxUSE_MEMORY_TRACING | |
700 | #define wxUSE_MEMORY_TRACING 0 | |
701 | ||
702 | #undef wxUSE_GLOBAL_MEMORY_OPERATORS | |
703 | #define wxUSE_GLOBAL_MEMORY_OPERATORS 0 | |
704 | ||
705 | #undef wxUSE_DEBUG_NEW_ALWAYS | |
706 | #define wxUSE_DEBUG_NEW_ALWAYS 0 | |
707 | ||
708 | #undef wxUSE_THREADS | |
709 | #define wxUSE_THREADS 0 | |
710 | ||
9bd6a503 VZ |
711 | #undef wxUSE_OWNER_DRAWN |
712 | #define wxUSE_OWNER_DRAWN 0 | |
f6bcfd97 | 713 | #endif // __SALFORDC__ |
9bd6a503 VZ |
714 | |
715 | #ifdef __TWIN32__ | |
716 | ||
717 | #undef wxUSE_THREADS | |
718 | #define wxUSE_THREADS 0 | |
719 | ||
9bd6a503 VZ |
720 | #undef wxUSE_ODBC |
721 | #define wxUSE_ODBC 0 | |
722 | ||
f6bcfd97 | 723 | #endif // __TWIN32__ |
9bd6a503 | 724 | |
448af9a4 JS |
725 | // BC++/Win16 can't cope with the amount of data in resource.cpp |
726 | #if defined(__WIN16__) && defined(__BORLANDC__) | |
727 | #undef wxUSE_WX_RESOURCES | |
728 | #define wxUSE_WX_RESOURCES 0 | |
154f22b3 JS |
729 | |
730 | #undef wxUSE_ODBC | |
731 | #define wxUSE_ODBC 0 | |
9c824f29 JS |
732 | |
733 | #undef wxUSE_NEW_GRID | |
734 | #define wxUSE_NEW_GRID 0 | |
448af9a4 JS |
735 | #endif |
736 | ||
b2cf617c JS |
737 | #if defined(__BORLANDC__) && (__BORLANDC__ < 0x500) |
738 | // BC++ 4.0 can't compile JPEG library | |
739 | #undef wxUSE_LIBJPEG | |
740 | #define wxUSE_LIBJPEG 0 | |
741 | #endif | |
742 | ||
f6bcfd97 BP |
743 | #if defined(__BORLANDC__) |
744 | // Need a BC++-specific htmlhelp.lib before we can enable this | |
745 | #undef wxUSE_MS_HTML_HELP | |
746 | #define wxUSE_MS_HTML_HELP 0 | |
747 | #endif | |
669f7a11 | 748 | |
f6bcfd97 BP |
749 | // wxUSE_DBEUG_NEW_ALWAYS = 1 not compatible with BC++ in DLL mode |
750 | #if defined(__BORLANDC__) && (defined(WXMAKINGDLL) || defined(WXUSINGDLL)) | |
751 | #undef wxUSE_DEBUG_NEW_ALWAYS | |
752 | #define wxUSE_DEBUG_NEW_ALWAYS 0 | |
753 | #endif | |
b2cf617c | 754 | |
f6bcfd97 BP |
755 | #if defined(__WXMSW__) && defined(__WATCOMC__) |
756 | /* | |
b2cf617c JS |
757 | #undef wxUSE_GLCANVAS |
758 | #define wxUSE_GLCANVAS 0 | |
f6bcfd97 BP |
759 | */ |
760 | ||
761 | #undef wxUSE_MS_HTML_HELP | |
762 | #define wxUSE_MS_HTML_HELP 0 | |
763 | ||
764 | #undef wxUSE_WCHAR_T | |
765 | #define wxUSE_WCHAR_T 0 | |
0cdf89ab JS |
766 | #endif |
767 | ||
9bd6a503 VZ |
768 | #if defined(__WXMSW__) && !defined(__WIN32__) |
769 | ||
8fb3a512 JS |
770 | #undef wxUSE_SOCKETS |
771 | #define wxUSE_SOCKETS 0 | |
772 | ||
9bd6a503 VZ |
773 | #undef wxUSE_THREADS |
774 | #define wxUSE_THREADS 0 | |
775 | ||
750b78ba JS |
776 | #undef wxUSE_TOOLTIPS |
777 | #define wxUSE_TOOLTIPS 0 | |
778 | ||
0e528b99 JS |
779 | #undef wxUSE_SPINCTRL |
780 | #define wxUSE_SPINCTRL 0 | |
781 | ||
782 | #undef wxUSE_SPINBTN | |
783 | #define wxUSE_SPINBTN 0 | |
784 | ||
1044a386 JS |
785 | #undef wxUSE_LIBPNG |
786 | #define wxUSE_LIBPNG 0 | |
787 | ||
788 | #undef wxUSE_LIBJPEG | |
789 | #define wxUSE_LIBJPEG 0 | |
790 | ||
669f7a11 JS |
791 | #undef wxUSE_LIBTIFF |
792 | #define wxUSE_LIBTIFF 0 | |
793 | ||
83b1bfaa GRG |
794 | #undef wxUSE_GIF |
795 | #define wxUSE_GIF 0 | |
1044a386 JS |
796 | |
797 | #undef wxUSE_PNM | |
798 | #define wxUSE_PNM 0 | |
799 | ||
800 | #undef wxUSE_PCX | |
801 | #define wxUSE_PCX 0 | |
802 | ||
b2cf617c JS |
803 | #undef wxUSE_GLCANVAS |
804 | #define wxUSE_GLCANVAS 0 | |
805 | ||
f6bcfd97 BP |
806 | #undef wxUSE_MS_HTML_HELP |
807 | #define wxUSE_MS_HTML_HELP 0 | |
808 | ||
809 | #undef wxUSE_WCHAR_T | |
810 | #define wxUSE_WCHAR_T 0 | |
811 | ||
812 | #endif // Win16 | |
813 | ||
814 | // ---------------------------------------------------------------------------- | |
815 | // check the settings consistency: do it here to abort compilation immediately | |
816 | // and not almost in the very end when the relevant file fails to compile and | |
817 | // you need to modify setup.h and rebuild everything | |
818 | // ---------------------------------------------------------------------------- | |
819 | ||
820 | #if wxUSE_TIMEDATE && !wxUSE_LONGLONG | |
821 | #error wxDateTime requires wxLongLong | |
9bd6a503 VZ |
822 | #endif |
823 | ||
f6bcfd97 BP |
824 | #if wxUSE_TEXTFILE && !wxUSE_FILE |
825 | #error You cannot compile wxTextFile without wxFile | |
826 | #endif | |
827 | ||
828 | #if wxUSE_FILESYSTEM && !wxUSE_STREAMS | |
829 | #error You cannot compile virtual file systems without wxUSE_STREAMS | |
830 | #endif | |
831 | ||
832 | #if wxUSE_HTML && !wxUSE_FILESYSTEM | |
833 | #error You cannot compile wxHTML without virtual file systems | |
834 | #endif | |
835 | ||
836 | // add more tests here... | |
837 | ||
9bd6a503 VZ |
838 | #endif |
839 | // _WX_SETUP_H_ |