]> git.saurik.com Git - wxWidgets.git/blame - include/wx/msw/setup0.h
1. serious bug in wxRegConfig corrected - deleting a value would delete the
[wxWidgets.git] / include / wx / msw / setup0.h
CommitLineData
9bd6a503
VZ
1/////////////////////////////////////////////////////////////////////////////
2// Name: setup.h
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
15/*
16 * General features
17 *
18 */
19
20#define wxUSE_CONFIG 1
21 // Use wxConfig, with CreateConfig in wxApp
1f112209 22
9bd6a503
VZ
23#define WXWIN_COMPATIBILITY 0
24 // Compatibility with 1.68 API.
25 // Level 0: no backward compatibility, all new features
26 // Level 1: Some compatibility. In fact
27 // the compatibility code is now very minimal so there
28 // is little advantage to setting it to 1.
29
9bd6a503
VZ
30#define wxUSE_POSTSCRIPT 0
31 // 0 for no PostScript device context
32#define wxUSE_AFM_FOR_POSTSCRIPT 0
33 // 1 to use font metric files in GetTextExtent
34#define wxUSE_METAFILE 1
35 // 0 for no Metafile and metafile device context
9bd6a503
VZ
36#define wxUSE_IPC 1
37 // 0 for no interprocess comms
38// Note: wxHELP uses IPC under X so these are interdependent!
39#define wxUSE_HELP 1
40 // 0 for no help facility
41#define wxUSE_RESOURCES 1
42 // 0 for no wxGetResource/wxWriteResource
43#define wxUSE_CONSTRAINTS 1
44 // 0 for no window layout constraint system
45
46#define wxUSE_TIMEDATE 1
47 // 0 for no wxTime/wxDate classes
48
49#define wxUSE_CLIPBOARD 1
50 // 0 for no clipboard functions
1f112209 51
9bd6a503
VZ
52#define wxUSE_SPLINES 1
53 // 0 for no splines
9bd6a503
VZ
54
55#define wxUSE_DRAG_AND_DROP 1
56 // 0 for no drag and drop
57
58#define wxUSE_TOOLBAR 1
59 // Define 1 to use toolbar classes
60#define wxUSE_BUTTONBAR 1
61 // Define 1 to use buttonbar classes (enhanced toolbar
62 // for MS Windows)
63#define wxUSE_GAUGE 1
64 // Define 1 to use Microsoft's gauge (Windows)
65 // or Bull's gauge (Motif) library (both in contrib).
66#define wxUSE_COMBOBOX 1
67 // Define 1 to use COMBOXBOX control (Windows)
68 // or FWW's ComboBox widget (Motif).
ce4169a4
RR
69#define wxUSE_CHOICE 1
70 // Define 1 to use CHOICE
71
9bd6a503
VZ
72#define wxUSE_RADIOBUTTON 1
73 // Define 1 to use radio button control
28d52eed
JS
74#define wxUSE_RADIOBTN 1
75 // Unfortunately someone introduced this one, too
9bd6a503
VZ
76
77#define wxUSE_SCROLLBAR 1
78 // Define 1 to compile contributed wxScrollBar class
28d52eed
JS
79
80#define wxUSE_CHECKBOX 1
81 // Define 1 to compile checkbox
82
83#define wxUSE_LISTBOX 1
84 // Define 1 to compile listbox
85
86#define wxUSE_SPINBTN 1
87 // Define 1 to compile spin button
88
89#define wxUSE_CHECKLISTBOX 1
90 // Define 1 to compile check listbox
91
92#define wxUSE_CHOICE 1
93 // Define 1 to compile choice
94
789295bf
VZ
95#define wxUSE_CARET 1
96 // Define 1 to use wxCaret class
9bd6a503
VZ
97#define wxUSE_XPM_IN_MSW 1
98 // Define 1 to support the XPM package in wxBitmap.
99#define wxUSE_IMAGE_LOADING_IN_MSW 1
100 // Use dynamic DIB loading/saving code in utils/dib under MSW.
101#define wxUSE_RESOURCE_LOADING_IN_MSW 1
102 // Use dynamic icon/cursor loading/saving code
103 // under MSW.
104#define wxUSE_WX_RESOURCES 1
105 // Use .wxr resource mechanism (requires PrologIO library)
106
107// BC++/Win16 can't cope with the amount of data in resource.cpp
108#if defined(__WIN16__) && defined(__BORLANDC__)
109#undef wxUSE_WX_RESOURCES
110#define wxUSE_WX_RESOURCES 0
111#endif
112
9bd6a503
VZ
113#define wxUSE_DOC_VIEW_ARCHITECTURE 1
114 // Set to 0 to disable document/view architecture
115#define wxUSE_PRINTING_ARCHITECTURE 1
116 // Set to 0 to disable print/preview architecture code
117#define wxUSE_POSTSCRIPT_ARCHITECTURE_IN_MSW 1
118 // Set to 0 to disable PostScript print/preview architecture code
119 // under Windows (just use Windows printing).
120#define wxUSE_DYNAMIC_CLASSES 1
121 // If 1, enables provision of run-time type information.
122 // NOW MANDATORY: don't change.
123#define wxUSE_MEMORY_TRACING 1
124 // If 1, enables debugging versions of wxObject::new and
125 // wxObject::delete *IF* __WXDEBUG__ is also defined.
126 // WARNING: this code may not work with all architectures, especially
127 // if alignment is an issue.
128#define wxUSE_DEBUG_CONTEXT 1
129 // If 1, enables wxDebugContext, for
130 // writing error messages to file, etc.
131 // If __WXDEBUG__ is not defined, will still use
132 // normal memory operators.
133 // It's recommended to set this to 1,
134 // since you may well need to output
135 // an error log in a production
136 // version (or non-debugging beta)
137#define wxUSE_GLOBAL_MEMORY_OPERATORS 1
138 // In debug mode, cause new and delete to be redefined globally.
139 // If this causes problems (e.g. link errors), set this to 0.
140
141#define wxUSE_DEBUG_NEW_ALWAYS 1
142 // In debug mode, causes new to be defined to
143 // be WXDEBUG_NEW (see object.h).
144 // If this causes problems (e.g. link errors), set this to 0.
145 // You may need to set this to 0 if using templates (at least
146 // for VC++).
147
148#define REMOVE_UNUSED_ARG 1
149 // Set this to 0 if your compiler can't cope
150 // with omission of prototype parameters.
151
152#define wxUSE_ODBC 1
153 // Define 1 to use ODBC classes
154
155#ifndef __MWERKS__
156#define wxUSE_IOSTREAMH 1
157#else
dbda9e86 158#define wxUSE_IOSTREAMH 1
9bd6a503
VZ
159#endif
160 // VC++ 4.2 and above allows <iostream> and <iostream.h>
161 // but you can't mix them. Set to 1 for <iostream.h>,
162 // 0 for <iostream>
163
d4ec5d32
JS
164#define wxUSE_STREAMS 1
165 // If enabled (1), compiles wxWindows streams classes
166
167#define wxUSE_STD_IOSTREAM 1
168 // Use standard C++ streams if 1. If 0, use wxWin
169 // streams implementation.
170
9bd6a503
VZ
171#define wxUSE_WXCONFIG 1
172 // if enabled, compiles built-in OS independent wxConfig
173 // class and it's file (any platform) and registry (Win)
174 // based implementations
175#define wxUSE_THREADS 1
176 // support for multithreaded applications: if
177 // 1, compile in thread classes (thread.h)
178 // and make the library thread safe
179#define wxUSE_ZLIB 1
180 // Use zlib for compression in streams and PNG code
181#define wxUSE_LIBPNG 1
182 // Use PNG bitmap code
2fff5f08
VS
183#define wxUSE_LIBJPEG 0
184 // Use JPEG bitmap code
d4ec5d32
JS
185#define wxUSE_SERIAL 0
186 // Use serialization (requires utils/serialize)
3aa0e8fa
VZ
187#define wxUSE_DYNLIB_CLASS 0
188 // Compile in wxLibrary class for run-time
189 // DLL loading and function calling
9bd6a503
VZ
190#define wxUSE_TOOLTIPS 1
191 // Define to use wxToolTip class and
192 // wxWindow::SetToolTip() method
a737331d 193#define wxUSE_SOCKETS 0
9a05fd8d 194 // Set to 1 to use socket classes
9bd6a503
VZ
195
196/*
197 * Finer detail
198 *
199 */
200
201#define wxUSE_APPLE_IEEE 1
202 // if enabled, the float codec written by Apple
203 // will be used to write, in a portable way,
204 // float on the disk
205
1318fabe
VZ
206// use wxFile class - required by i18n code, wxConfig and others - recommended
207#define wxUSE_FILE 1
208
209// use wxTextFile class: requires wxFile, required by wxConfig
210#define wxUSE_TEXTFILE 1
211
212// i18n support: _() macro, wxLocale class. Requires wxFile
213#define wxUSE_INTL 1
214
215// wxLogXXX functions - highly recommended
216#define wxUSE_LOG 1
217
218// wxValidator class
219#define wxUSE_VALIDATORS 1
220
221// wxAcceleratorTable/Entry classes and support for them in wxMenu(Bar)
222#define wxUSE_ACCEL 1
223
224// wxSashWindow class
225#define wxUSE_SASH 1
226
227// text entry dialog and wxGetTextFromUser function
228#define wxUSE_TEXTDLG 1
229
230// wxToolBar class
231#define wxUSE_TOOLBAR 1
232
233// wxStatusBar class
234#define wxUSE_STATUSBAR 1
235
236// progress dialog class for lengthy operations
237#define wxUSE_PROGRESSDLG 1
238
239// wxDirDlg class for getting a directory name from user
240#define wxUSE_DIRDLG 1
241
9bd6a503
VZ
242/*
243 * MS Windows/Windows NT
244 *
245 */
246
3aa0e8fa
VZ
247#define wxUSE_OLE 1
248 // drag-and-drop, clipboard, OLE Automation
249
9bd6a503 250#if defined(__WIN95__)
1f112209 251#define wxUSE_CTL3D 0
9bd6a503 252#else
1f112209 253#define wxUSE_CTL3D 1
9bd6a503
VZ
254 // Define 1 to use Microsoft CTL3D library.
255 // See note above about using FAFA and CTL3D.
256#endif
257
258#define wxUSE_COMMON_DIALOGS 1
259 // On rare occasions (e.g. using DJGPP) may want
260 // to omit common dialogs
261 // (e.g. file selector, printer dialog).
262 // Switching this off also switches off
263 // the printing architecture and interactive
264 // wxPrinterDC.
265#define wxUSE_ITSY_BITSY 1
266 // Define 1 to use Microsoft's ItsyBitsy
267 // small title bar library, for wxMiniFrame
268#define wxUSE_BITMAP_MESSAGE 1
269 // Define 1 to use bitmap messages.
270#define wxUSE_PORTABLE_FONTS_IN_MSW 0
271 // Define 1 to use new portable font scheme in Windows
272 // (used by default under X)
1f112209 273#define wxFONT_SIZE_COMPATIBILITY 0
9bd6a503
VZ
274 // Define 1 for font size to be backward compatible
275 // to 1.63 and earlier. 1.64 and later define point
276 // sizes to be compatible with Windows.
277#define wxUSE_GENERIC_DIALOGS_IN_MSW 1
278 // Define 1 to use generic dialogs in Windows, even though
279 // they duplicate native common dialog (e.g. wxColourDialog)
280#define wxUSE_PENWINDOWS 0
281 // Set to 1 to use PenWindows
282
283#define wxUSE_OWNER_DRAWN 1
284 // Owner-drawn menus and listboxes
285
286#define wxUSE_NATIVE_STATUSBAR 1
287 // Set to 0 to use cross-platform wxStatusBar
288#define wxUSE_DBWIN32 1
289 // Use Andrew Tucker's OutputDebugString implementation
290 // (required on Win95 only). See utils.cpp.
291
292/*
293 * Any platform
294 *
295 */
296
297#define wxUSE_TYPEDEFS 0
298 // Use typedefs not classes for wxPoint
299 // and others, to reduce overhead and avoid
300 // MS C7 memory bug. Bounds checker
301 // complains about deallocating
302 // arrays of wxPoints if wxPoint is a class.
303
b86510f8 304#if (!defined(WIN32) && !defined(__WIN32__)) || defined(__GNUWIN32__)
9bd6a503
VZ
305// Can't use OLE drag and drop in Windows 3.1 because we don't know how
306// to implement UUIDs
307// GnuWin32 doesn't have appropriate headers for e.g. IUnknown.
308#undef wxUSE_DRAG_AND_DROP
309#define wxUSE_DRAG_AND_DROP 0
310#endif
311
312// Only WIN32 supports wxStatusBar95
313#if !defined(__WIN32__) && wxUSE_NATIVE_STATUSBAR
314#undef wxUSE_NATIVE_STATUSBAR
315#define wxUSE_NATIVE_STATUSBAR 0
316#endif
317
318// Salford C++ doesn't like some of the memory operator definitions
319#ifdef __SALFORDC__
320#undef wxUSE_MEMORY_TRACING
321#define wxUSE_MEMORY_TRACING 0
322
323#undef wxUSE_GLOBAL_MEMORY_OPERATORS
324#define wxUSE_GLOBAL_MEMORY_OPERATORS 0
325
326#undef wxUSE_DEBUG_NEW_ALWAYS
327#define wxUSE_DEBUG_NEW_ALWAYS 0
328
329#undef wxUSE_THREADS
330#define wxUSE_THREADS 0
331
332#undef wxUSE_DBWIN32
333#define wxUSE_DBWIN32 0
334
335#undef wxUSE_OWNER_DRAWN
336#define wxUSE_OWNER_DRAWN 0
337#endif
338
339#ifdef __TWIN32__
340
341#undef wxUSE_THREADS
342#define wxUSE_THREADS 0
343
344#undef wxUSE_DBWIN32
345#define wxUSE_DBWIN32 0
346
347#undef wxUSE_ODBC
348#define wxUSE_ODBC 0
349
350#endif
351
dbdb39b2
JS
352#if defined(__WXMSW__) && defined(__BORLANDC__)
353#undef wxUSE_ODBC
354#define wxUSE_ODBC 0
355#endif
356
9bd6a503
VZ
357#if defined(__WXMSW__) && !defined(__WIN32__)
358
359#undef wxUSE_THREADS
360#define wxUSE_THREADS 0
361
750b78ba
JS
362#undef wxUSE_TOOLTIPS
363#define wxUSE_TOOLTIPS 0
364
9bd6a503
VZ
365#endif
366
9bd6a503
VZ
367#endif
368 // _WX_SETUP_H_