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