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