]> git.saurik.com Git - wxWidgets.git/blob - include/wx/msw/setup0.h
fixed #if !NOPCH to be #if !defined(NOPCH)
[wxWidgets.git] / include / wx / msw / setup0.h
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
22
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
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
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
51
52 #define wxUSE_SPLINES 1
53 // 0 for no splines
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).
69 #define wxUSE_RADIOBUTTON 1
70 // Define 1 to use radio button control
71
72 #define wxUSE_SCROLLBAR 1
73 // Define 1 to compile contributed wxScrollBar class
74 #define wxUSE_CARET 1
75 // Define 1 to use wxCaret class
76 #define wxUSE_XPM_IN_MSW 1
77 // Define 1 to support the XPM package in wxBitmap.
78 #define wxUSE_IMAGE_LOADING_IN_MSW 1
79 // Use dynamic DIB loading/saving code in utils/dib under MSW.
80 #define wxUSE_RESOURCE_LOADING_IN_MSW 1
81 // Use dynamic icon/cursor loading/saving code
82 // under MSW.
83 #define wxUSE_WX_RESOURCES 1
84 // Use .wxr resource mechanism (requires PrologIO library)
85
86 // BC++/Win16 can't cope with the amount of data in resource.cpp
87 #if defined(__WIN16__) && defined(__BORLANDC__)
88 #undef wxUSE_WX_RESOURCES
89 #define wxUSE_WX_RESOURCES 0
90 #endif
91
92 #define wxUSE_DOC_VIEW_ARCHITECTURE 1
93 // Set to 0 to disable document/view architecture
94 #define wxUSE_PRINTING_ARCHITECTURE 1
95 // Set to 0 to disable print/preview architecture code
96 #define wxUSE_POSTSCRIPT_ARCHITECTURE_IN_MSW 1
97 // Set to 0 to disable PostScript print/preview architecture code
98 // under Windows (just use Windows printing).
99 #define wxUSE_DYNAMIC_CLASSES 1
100 // If 1, enables provision of run-time type information.
101 // NOW MANDATORY: don't change.
102 #define wxUSE_MEMORY_TRACING 1
103 // If 1, enables debugging versions of wxObject::new and
104 // wxObject::delete *IF* __WXDEBUG__ is also defined.
105 // WARNING: this code may not work with all architectures, especially
106 // if alignment is an issue.
107 #define wxUSE_DEBUG_CONTEXT 1
108 // If 1, enables wxDebugContext, for
109 // writing error messages to file, etc.
110 // If __WXDEBUG__ is not defined, will still use
111 // normal memory operators.
112 // It's recommended to set this to 1,
113 // since you may well need to output
114 // an error log in a production
115 // version (or non-debugging beta)
116 #define wxUSE_GLOBAL_MEMORY_OPERATORS 1
117 // In debug mode, cause new and delete to be redefined globally.
118 // If this causes problems (e.g. link errors), set this to 0.
119
120 #define wxUSE_DEBUG_NEW_ALWAYS 1
121 // In debug mode, causes new to be defined to
122 // be WXDEBUG_NEW (see object.h).
123 // If this causes problems (e.g. link errors), set this to 0.
124 // You may need to set this to 0 if using templates (at least
125 // for VC++).
126
127 #define REMOVE_UNUSED_ARG 1
128 // Set this to 0 if your compiler can't cope
129 // with omission of prototype parameters.
130
131 #define wxUSE_ODBC 1
132 // Define 1 to use ODBC classes
133
134 #ifndef __MWERKS__
135 #define wxUSE_IOSTREAMH 1
136 #else
137 #define wxUSE_IOSTREAMH 1
138 #endif
139 // VC++ 4.2 and above allows <iostream> and <iostream.h>
140 // but you can't mix them. Set to 1 for <iostream.h>,
141 // 0 for <iostream>
142
143 #define wxUSE_STREAMS 1
144 // If enabled (1), compiles wxWindows streams classes
145
146 #define wxUSE_STD_IOSTREAM 1
147 // Use standard C++ streams if 1. If 0, use wxWin
148 // streams implementation.
149
150 #define wxUSE_WXCONFIG 1
151 // if enabled, compiles built-in OS independent wxConfig
152 // class and it's file (any platform) and registry (Win)
153 // based implementations
154 #define wxUSE_THREADS 1
155 // support for multithreaded applications: if
156 // 1, compile in thread classes (thread.h)
157 // and make the library thread safe
158 #define wxUSE_ZLIB 1
159 // Use zlib for compression in streams and PNG code
160 #define wxUSE_LIBPNG 1
161 // Use PNG bitmap code
162 #define wxUSE_LIBJPEG 0
163 // Use JPEG bitmap code
164 #define wxUSE_SERIAL 0
165 // Use serialization (requires utils/serialize)
166 #define wxUSE_DYNLIB_CLASS 0
167 // Compile in wxLibrary class for run-time
168 // DLL loading and function calling
169 #define wxUSE_TOOLTIPS 1
170 // Define to use wxToolTip class and
171 // wxWindow::SetToolTip() method
172 #define wxUSE_SOCKETS 0
173 // Set to 1 to use socket classes
174
175 /*
176 * Finer detail
177 *
178 */
179
180 #define wxUSE_APPLE_IEEE 1
181 // if enabled, the float codec written by Apple
182 // will be used to write, in a portable way,
183 // float on the disk
184
185 /*
186 * MS Windows/Windows NT
187 *
188 */
189
190 #define wxUSE_OLE 1
191 // drag-and-drop, clipboard, OLE Automation
192
193 #if defined(__WIN95__)
194 #define wxUSE_CTL3D 0
195 #else
196 #define wxUSE_CTL3D 1
197 // Define 1 to use Microsoft CTL3D library.
198 // See note above about using FAFA and CTL3D.
199 #endif
200
201 #define wxUSE_COMMON_DIALOGS 1
202 // On rare occasions (e.g. using DJGPP) may want
203 // to omit common dialogs
204 // (e.g. file selector, printer dialog).
205 // Switching this off also switches off
206 // the printing architecture and interactive
207 // wxPrinterDC.
208 #define wxUSE_ITSY_BITSY 1
209 // Define 1 to use Microsoft's ItsyBitsy
210 // small title bar library, for wxMiniFrame
211 #define wxUSE_BITMAP_MESSAGE 1
212 // Define 1 to use bitmap messages.
213 #define wxUSE_PORTABLE_FONTS_IN_MSW 0
214 // Define 1 to use new portable font scheme in Windows
215 // (used by default under X)
216 #define wxFONT_SIZE_COMPATIBILITY 0
217 // Define 1 for font size to be backward compatible
218 // to 1.63 and earlier. 1.64 and later define point
219 // sizes to be compatible with Windows.
220 #define wxUSE_GENERIC_DIALOGS_IN_MSW 1
221 // Define 1 to use generic dialogs in Windows, even though
222 // they duplicate native common dialog (e.g. wxColourDialog)
223 #define wxUSE_PENWINDOWS 0
224 // Set to 1 to use PenWindows
225
226 #define wxUSE_OWNER_DRAWN 1
227 // Owner-drawn menus and listboxes
228
229 #define wxUSE_NATIVE_STATUSBAR 1
230 // Set to 0 to use cross-platform wxStatusBar
231 #define wxUSE_DBWIN32 1
232 // Use Andrew Tucker's OutputDebugString implementation
233 // (required on Win95 only). See utils.cpp.
234
235 /*
236 * Any platform
237 *
238 */
239
240 #define wxUSE_TYPEDEFS 0
241 // Use typedefs not classes for wxPoint
242 // and others, to reduce overhead and avoid
243 // MS C7 memory bug. Bounds checker
244 // complains about deallocating
245 // arrays of wxPoints if wxPoint is a class.
246
247 #if (!defined(WIN32) && !defined(__WIN32__)) || defined(__GNUWIN32__)
248 // Can't use OLE drag and drop in Windows 3.1 because we don't know how
249 // to implement UUIDs
250 // GnuWin32 doesn't have appropriate headers for e.g. IUnknown.
251 #undef wxUSE_DRAG_AND_DROP
252 #define wxUSE_DRAG_AND_DROP 0
253 #endif
254
255 // Only WIN32 supports wxStatusBar95
256 #if !defined(__WIN32__) && wxUSE_NATIVE_STATUSBAR
257 #undef wxUSE_NATIVE_STATUSBAR
258 #define wxUSE_NATIVE_STATUSBAR 0
259 #endif
260
261 // Salford C++ doesn't like some of the memory operator definitions
262 #ifdef __SALFORDC__
263 #undef wxUSE_MEMORY_TRACING
264 #define wxUSE_MEMORY_TRACING 0
265
266 #undef wxUSE_GLOBAL_MEMORY_OPERATORS
267 #define wxUSE_GLOBAL_MEMORY_OPERATORS 0
268
269 #undef wxUSE_DEBUG_NEW_ALWAYS
270 #define wxUSE_DEBUG_NEW_ALWAYS 0
271
272 #undef wxUSE_THREADS
273 #define wxUSE_THREADS 0
274
275 #undef wxUSE_DBWIN32
276 #define wxUSE_DBWIN32 0
277
278 #undef wxUSE_OWNER_DRAWN
279 #define wxUSE_OWNER_DRAWN 0
280 #endif
281
282 #ifdef __TWIN32__
283
284 #undef wxUSE_THREADS
285 #define wxUSE_THREADS 0
286
287 #undef wxUSE_DBWIN32
288 #define wxUSE_DBWIN32 0
289
290 #undef wxUSE_ODBC
291 #define wxUSE_ODBC 0
292
293 #endif
294
295 #if defined(__WXMSW__) && defined(__BORLANDC__)
296 #undef wxUSE_ODBC
297 #define wxUSE_ODBC 0
298 #endif
299
300 #if defined(__WXMSW__) && !defined(__WIN32__)
301
302 #undef wxUSE_THREADS
303 #define wxUSE_THREADS 0
304
305 #undef wxUSE_TOOLTIPS
306 #define wxUSE_TOOLTIPS 0
307
308 #endif
309
310 #endif
311 // _WX_SETUP_H_