]> git.saurik.com Git - wxWidgets.git/blob - include/wx/msw/setup.h
5ed16a4233a922ea825733e5d1ede6762ac330c2
[wxWidgets.git] / include / wx / msw / setup.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 #define _WX_GOODCOMPILER__
23 // gcc can have problems, but Windows compilers
24 // are generally OK.
25 #define WXWIN_COMPATIBILITY 1
26 // Compatibility with 1.66 API.
27 // Level 0: no backward compatibility, all new features
28 // Level 1: wxDC, OnSize (etc.) compatibility, but
29 // some new features such as event tables
30
31 #define wxUSE_AUTOTRANS 1
32 // Define wxTString
33 #define wxUSE_POSTSCRIPT 0
34 // 0 for no PostScript device context
35 #define wxUSE_AFM_FOR_POSTSCRIPT 0
36 // 1 to use font metric files in GetTextExtent
37 #define wxUSE_METAFILE 1
38 // 0 for no Metafile and metafile device context
39 #define wxUSE_FORM 0
40 // 0 for no wxForm
41 #define wxUSE_IPC 1
42 // 0 for no interprocess comms
43 // Note: wxHELP uses IPC under X so these are interdependent!
44 #define wxUSE_HELP 1
45 // 0 for no help facility
46 #define wxUSE_RESOURCES 1
47 // 0 for no wxGetResource/wxWriteResource
48 #define wxUSE_CONSTRAINTS 1
49 // 0 for no window layout constraint system
50
51 #define wxUSE_TIMEDATE 1
52 // 0 for no wxTime/wxDate classes
53
54 #define wxUSE_CLIPBOARD 1
55 // 0 for no clipboard functions
56 #define wxUSE_SPLINES 1
57 // 0 for no splines
58 #define wxUSE_XFIG_SPLINE_CODE 1
59 // 1 for XFIG spline code, 0 for AIAI spline code.
60 // AIAI spline code is slower, but freer of copyright issues.
61
62 #define wxUSE_DRAG_AND_DROP 1
63 // 0 for no drag and drop
64
65 #define wxUSE_TOOLBAR 1
66 // Define 1 to use toolbar classes
67 #define wxUSE_BUTTONBAR 1
68 // Define 1 to use buttonbar classes (enhanced toolbar
69 // for MS Windows)
70 #define wxUSE_GAUGE 1
71 // Define 1 to use Microsoft's gauge (Windows)
72 // or Bull's gauge (Motif) library (both in contrib).
73 #define wxUSE_COMBOBOX 1
74 // Define 1 to use COMBOXBOX control (Windows)
75 // or FWW's ComboBox widget (Motif).
76 #define wxUSE_RADIOBUTTON 1
77 // Define 1 to use radio button control
78
79 #define wxUSE_SCROLLBAR 1
80 // Define 1 to compile contributed wxScrollBar class
81 #define wxUSE_XPM_IN_MSW 0
82 // Define 1 to support the XPM package in wxBitmap.
83 #define wxUSE_IMAGE_LOADING_IN_MSW 1
84 // Use dynamic DIB loading/saving code in utils/dib under MSW.
85 #define wxUSE_RESOURCE_LOADING_IN_MSW 1
86 // Use dynamic icon/cursor loading/saving code
87 // under MSW.
88 #define wxUSE_WX_RESOURCES 1
89 // Use .wxr resource mechanism (requires PrologIO library)
90
91 // BC++/Win16 can't cope with the amount of data in resource.cpp
92 #if defined(__WIN16__) && defined(__BORLANDC__)
93 #undef wxUSE_WX_RESOURCES
94 #define wxUSE_WX_RESOURCES 0
95 #endif
96
97 #define HAVE_SOCKET 1
98 // Use WinSock if 1
99 #define wxUSE_DOC_VIEW_ARCHITECTURE 1
100 // Set to 0 to disable document/view architecture
101 #define wxUSE_PRINTING_ARCHITECTURE 1
102 // Set to 0 to disable print/preview architecture code
103 #define wxUSE_POSTSCRIPT_ARCHITECTURE_IN_MSW 1
104 // Set to 0 to disable PostScript print/preview architecture code
105 // under Windows (just use Windows printing).
106 #define wxUSE_DYNAMIC_CLASSES 1
107 // If 1, enables provision of run-time type information.
108 // NOW MANDATORY: don't change.
109 #define wxUSE_MEMORY_TRACING 1
110 // If 1, enables debugging versions of wxObject::new and
111 // wxObject::delete *IF* __WXDEBUG__ is also defined.
112 // WARNING: this code may not work with all architectures, especially
113 // if alignment is an issue.
114 #define wxUSE_DEBUG_CONTEXT 1
115 // If 1, enables wxDebugContext, for
116 // writing error messages to file, etc.
117 // If __WXDEBUG__ is not defined, will still use
118 // normal memory operators.
119 // It's recommended to set this to 1,
120 // since you may well need to output
121 // an error log in a production
122 // version (or non-debugging beta)
123 #define wxUSE_GLOBAL_MEMORY_OPERATORS 1
124 // In debug mode, cause new and delete to be redefined globally.
125 // If this causes problems (e.g. link errors), set this to 0.
126
127 #define wxUSE_DEBUG_NEW_ALWAYS 1
128 // In debug mode, causes new to be defined to
129 // be WXDEBUG_NEW (see object.h).
130 // If this causes problems (e.g. link errors), set this to 0.
131 // You may need to set this to 0 if using templates (at least
132 // for VC++).
133
134 #define REMOVE_UNUSED_ARG 1
135 // Set this to 0 if your compiler can't cope
136 // with omission of prototype parameters.
137
138 #define wxUSE_C_MAIN 0
139 // Set to 1 to use main.c instead of main.cpp (UNIX only)
140
141 #define wxUSE_ODBC 1
142 // Define 1 to use ODBC classes
143
144 #ifndef __MWERKS__
145 #define wxUSE_IOSTREAMH 1
146 #else
147 #define wxUSE_IOSTREAMH 0
148 #endif
149 // VC++ 4.2 and above allows <iostream> and <iostream.h>
150 // but you can't mix them. Set to 1 for <iostream.h>,
151 // 0 for <iostream>
152
153 #define wxUSE_WXCONFIG 1
154 // if enabled, compiles built-in OS independent wxConfig
155 // class and it's file (any platform) and registry (Win)
156 // based implementations
157 #define wxUSE_THREADS 1
158 // support for multithreaded applications: if
159 // 1, compile in thread classes (thread.h)
160 // and make the library thread safe
161 #define wxUSE_ZLIB 1
162 // Use zlib for compression in streams and PNG code
163 #define wxUSE_LIBPNG 1
164 // Use PNG bitmap code
165 /*
166 * Finer detail
167 *
168 */
169
170 #define wxUSE_APPLE_IEEE 1
171 // if enabled, the float codec written by Apple
172 // will be used to write, in a portable way,
173 // float on the disk
174
175 /*
176 * MS Windows/Windows NT
177 *
178 */
179
180 #if defined(__WIN95__)
181 #define CTL3D 0
182 #else
183 #define CTL3D 1
184 // Define 1 to use Microsoft CTL3D library.
185 // See note above about using FAFA and CTL3D.
186 #endif
187
188 #define wxUSE_COMMON_DIALOGS 1
189 // On rare occasions (e.g. using DJGPP) may want
190 // to omit common dialogs
191 // (e.g. file selector, printer dialog).
192 // Switching this off also switches off
193 // the printing architecture and interactive
194 // wxPrinterDC.
195 #define wxUSE_ITSY_BITSY 1
196 // Define 1 to use Microsoft's ItsyBitsy
197 // small title bar library, for wxMiniFrame
198 #define wxUSE_BITMAP_MESSAGE 1
199 // Define 1 to use bitmap messages.
200 #define wxUSE_PORTABLE_FONTS_IN_MSW 0
201 // Define 1 to use new portable font scheme in Windows
202 // (used by default under X)
203 #define FONT_SIZE_COMPATIBILITY 0
204 // Define 1 for font size to be backward compatible
205 // to 1.63 and earlier. 1.64 and later define point
206 // sizes to be compatible with Windows.
207 #define wxUSE_GENERIC_DIALOGS_IN_MSW 1
208 // Define 1 to use generic dialogs in Windows, even though
209 // they duplicate native common dialog (e.g. wxColourDialog)
210 #define wxUSE_PENWINDOWS 0
211 // Set to 1 to use PenWindows
212
213 #define wxUSE_OWNER_DRAWN 1
214 // Owner-drawn menus and listboxes
215
216 #define wxUSE_NATIVE_STATUSBAR 1
217 // Set to 0 to use cross-platform wxStatusBar
218 #define wxUSE_DBWIN32 1
219 // Use Andrew Tucker's OutputDebugString implementation
220 // (required on Win95 only). See utils.cpp.
221
222 /*
223 * Any platform
224 *
225 */
226
227 #define wxUSE_TYPEDEFS 0
228 // Use typedefs not classes for wxPoint
229 // and others, to reduce overhead and avoid
230 // MS C7 memory bug. Bounds checker
231 // complains about deallocating
232 // arrays of wxPoints if wxPoint is a class.
233
234 #if (!defined(WIN32) && !defined(__WIN32__)) || defined(__GNUWIN32__) || defined(__BORLANDC__)
235 // Can't use OLE drag and drop in Windows 3.1 because we don't know how
236 // to implement UUIDs
237 // GnuWin32 doesn't have appropriate headers for e.g. IUnknown.
238 #undef wxUSE_DRAG_AND_DROP
239 #define wxUSE_DRAG_AND_DROP 0
240 #endif
241
242 // Only WIN32 supports wxStatusBar95
243 #if !defined(__WIN32__) && wxUSE_NATIVE_STATUSBAR
244 #undef wxUSE_NATIVE_STATUSBAR
245 #define wxUSE_NATIVE_STATUSBAR 0
246 #endif
247
248 // Minimal setup e.g. for compiling small utilities
249 #define MINIMAL_WXWINDOWS_SETUP 0
250
251 #if MINIMAL_WXWINDOWS_SETUP
252 #undef wxUSE_POSTSCRIPT
253 # define wxUSE_POSTSCRIPT 0
254 #undef wxUSE_PRINTING_ARCHITECTURE
255 # define wxUSE_PRINTING_ARCHITECTURE 0
256 #undef wxUSE_POSTSCRIPT_ARCHITECTURE_IN_MSW
257 # define wxUSE_POSTSCRIPT_ARCHITECTURE_IN_MSW 0
258 #undef wxUSE_METAFILE
259 # define wxUSE_METAFILE 0
260 #undef wxUSE_FORM
261 # define wxUSE_FORM 0
262 #undef wxUSE_SPLINES
263 # define wxUSE_SPLINES 0
264 #undef wxUSE_SCROLLBAR
265 # define wxUSE_SCROLLBAR 0
266 #undef wxUSE_COMBOBOX
267 # define wxUSE_COMBOBOX 0
268 #undef wxUSE_RADIOBUTTON
269 # define wxUSE_RADIOBUTTON 0
270 #undef wxUSE_XPM_IN_MSW
271 # define wxUSE_XPM_IN_MSW 0
272 #undef wxUSE_WX_RESOURCES
273 # define wxUSE_WX_RESOURCES 0
274 #undef wxUSE_DOC_VIEW_ARCHITECTURE
275 # define wxUSE_DOC_VIEW_ARCHITECTURE 0
276 #undef wxUSE_GNU_WXSTRING
277 # define wxUSE_GNU_WXSTRING 0
278 #undef wxUSE_ODBC
279 # define wxUSE_ODBC 0
280 #undef wxUSE_TIMEDATE
281 # define wxUSE_TIMEDATE 0
282 #undef CTL3D
283 # define CTL3D 0
284 #undef wxUSE_ITSY_BITSY
285 # define wxUSE_ITSY_BITSY 0
286 #undef wxUSE_IMAGE_LOADING_IN_MSW
287 # define wxUSE_IMAGE_LOADING_IN_MSW 0
288 #undef wxUSE_GAUGE
289 # define wxUSE_GAUGE 0
290 #undef wxUSE_RESOURCE_LOADING_IN_MSW
291 # define wxUSE_RESOURCE_LOADING_IN_MSW 0
292 #undef wxUSE_DRAG_AND_DROP
293 # define wxUSE_DRAG_AND_DROP 0
294 #endif
295
296 #endif
297 // _WX_SETUP_H_