]>
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$ | |
8 | // Copyright: (c) Julian Smart and Markus Holzem | |
9 | // Licence: wxWindows license | |
10 | ///////////////////////////////////////////////////////////////////////////// | |
11 | ||
12 | #ifndef __SETUPH__ | |
13 | #define __SETUPH__ | |
14 | ||
15 | /* | |
16 | * General features | |
17 | * | |
18 | */ | |
19 | ||
6b0eb19f JS |
20 | #define USE_CONFIG 1 |
21 | // Use wxConfig, with CreateConfig in wxApp | |
145aa406 JS |
22 | #define __GOODCOMPILER__ |
23 | // gcc can have problems, but Windows compilers | |
24 | // are generally OK. | |
2bda0e17 KB |
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 USE_AUTOTRANS 1 | |
32 | // Define wxTString | |
33 | #define USE_POSTSCRIPT 1 | |
34 | // 0 for no PostScript device context | |
35 | #define USE_AFM_FOR_POSTSCRIPT 0 | |
36 | // 1 to use font metric files in GetTextExtent | |
37 | #define USE_METAFILE 1 | |
38 | // 0 for no Metafile and metafile device context | |
39 | #define USE_FORM 0 | |
40 | // 0 for no wxForm | |
41 | #define USE_IPC 1 | |
42 | // 0 for no interprocess comms | |
43 | // Note: wxHELP uses IPC under X so these are interdependent! | |
44 | #define USE_HELP 1 | |
45 | // 0 for no help facility | |
46 | #define USE_RESOURCES 1 | |
47 | // 0 for no wxGetResource/wxWriteResource | |
48 | #define USE_CONSTRAINTS 1 | |
49 | // 0 for no window layout constraint system | |
50 | ||
51 | #define USE_TIMEDATE 1 | |
52 | // 0 for no wxTime/wxDate classes | |
53 | ||
54 | #define USE_CLIPBOARD 1 | |
55 | // 0 for no clipboard functions | |
56 | #define USE_SPLINES 1 | |
57 | // 0 for no splines | |
58 | #define USE_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 USE_DRAG_AND_DROP 1 | |
63 | // 0 for no drag and drop | |
64 | ||
65 | #define USE_TOOLBAR 1 | |
66 | // Define 1 to use toolbar classes | |
67 | #define USE_BUTTONBAR 1 | |
68 | // Define 1 to use buttonbar classes (enhanced toolbar | |
69 | // for MS Windows) | |
70 | #define USE_GAUGE 1 | |
71 | // Define 1 to use Microsoft's gauge (Windows) | |
72 | // or Bull's gauge (Motif) library (both in contrib). | |
73 | #define USE_COMBOBOX 1 | |
74 | // Define 1 to use COMBOXBOX control (Windows) | |
75 | // or FWW's ComboBox widget (Motif). | |
76 | #define USE_RADIOBUTTON 1 | |
77 | // Define 1 to use radio button control | |
78 | ||
79 | #define USE_SCROLLBAR 1 | |
80 | // Define 1 to compile contributed wxScrollBar class | |
81 | #define USE_XPM_IN_X 1 | |
82 | #define USE_XPM_IN_MSW 0 | |
83 | // Define 1 to support the XPM package in wxBitmap, | |
84 | // separated by platform. If 1, you must link in | |
85 | // the XPM library to your applications. | |
86 | #define USE_IMAGE_LOADING_IN_X 1 | |
87 | // Use dynamic icon/bitmap loading/saving code in utils/image under X. | |
88 | // If this is 1, you will need to link your applications | |
89 | // with image_X.lib. where X is motif, ol, or hp. | |
90 | ||
91 | #define USE_IMAGE_LOADING_IN_MSW 1 | |
92 | // Use dynamic DIB loading/saving code in utils/dib under MSW. | |
93 | #define USE_RESOURCE_LOADING_IN_MSW 0 | |
94 | // Use dynamic icon/cursor loading/saving code | |
95 | // under MSW. | |
96 | #define USE_WX_RESOURCES 1 | |
97 | // Use .wxr resource mechanism (requires PrologIO library) | |
98 | ||
99 | #define USE_GNU_WXSTRING 0 | |
100 | // Define 1 to use modified GNU wxString class | |
101 | // from (stefan.hammes@urz.uni-heidelberg.de) in contrib\string | |
102 | // TODO: why does this give an unresolved 'wxRegex::Search' | |
103 | // symbol if 1? | |
104 | ||
105 | #define HAVE_SOCKET 1 | |
106 | // Use WinSock if 1 | |
107 | #define USE_DOC_VIEW_ARCHITECTURE 1 | |
108 | // Set to 0 to disable document/view architecture | |
109 | #define USE_PRINTING_ARCHITECTURE 1 | |
110 | // Set to 0 to disable print/preview architecture code | |
111 | #define USE_POSTSCRIPT_ARCHITECTURE_IN_MSW 1 | |
112 | // Set to 0 to disable PostScript print/preview architecture code | |
113 | // under Windows (just use Windows printing). | |
114 | #define USE_DYNAMIC_CLASSES 1 | |
115 | // If 1, enables provision of run-time type information. | |
116 | // NOW MANDATORY: don't change. | |
117 | #define USE_MEMORY_TRACING 1 | |
118 | // If 1, enables debugging versions of wxObject::new and | |
119 | // wxObject::delete *IF* DEBUG is also defined. | |
120 | // WARNING: this code may not work with all architectures, especially | |
121 | // if alignment is an issue. | |
122 | #define USE_DEBUG_CONTEXT 1 | |
123 | // If 1, enables wxDebugContext, for | |
124 | // writing error messages to file, etc. | |
125 | // If DEBUG is not defined, will still use | |
126 | // normal memory operators. | |
127 | // It's recommended to set this to 1, | |
128 | // since you may well need to output | |
129 | // an error log in a production | |
130 | // version (or non-debugging beta) | |
131 | #define USE_GLOBAL_MEMORY_OPERATORS 1 | |
132 | // In debug mode, cause new and delete to be redefined globally. | |
133 | // If this causes problems (e.g. link errors), set this to 0. | |
134 | ||
135 | #define REMOVE_UNUSED_ARG 1 | |
136 | // Set this to 0 if your compiler can't cope | |
137 | // with omission of prototype parameters. | |
138 | ||
139 | #define USE_C_MAIN 0 | |
140 | // Set to 1 to use main.c instead of main.cpp (UNIX only) | |
141 | ||
142 | #define USE_ODBC 1 | |
143 | // Define 1 to use ODBC classes | |
144 | ||
145 | #define USE_ODBC_IN_MSW_ONLY 1 | |
146 | ||
147 | #if USE_ODBC && USE_ODBC_IN_MSW_ONLY | |
148 | #undef USE_ODBC | |
149 | #define USE_ODBC 0 | |
150 | #endif | |
151 | ||
152 | #define USE_IOSTREAMH 1 | |
153 | // VC++ 4.2 and above allows <iostream> and <iostream.h> | |
154 | // but you can't mix them. Set to 1 for <iostream.h>, | |
155 | // 0 for <iostream> | |
156 | ||
3bd29723 VZ |
157 | #define USE_WXCONFIG 1 |
158 | // if enabled, compiles built-in OS independent wxConfig | |
159 | // class and it's file (any platform) and registry (Win) | |
160 | // based implementations | |
2bda0e17 KB |
161 | /* |
162 | * Finer detail | |
163 | * | |
164 | */ | |
165 | ||
166 | /* | |
167 | * Motif and XView | |
168 | * | |
169 | */ | |
170 | ||
171 | #define WX_STANDARD_GRAPHICS 0 | |
172 | // If 1, normalizes X drawing code to behave exactly as | |
173 | // as MSW. If 0, is compatible with existing applications. | |
174 | // Some Xlib drawing primitives have non-intuitive behaviour! | |
175 | ||
176 | #define USE_GADGETS 0 | |
177 | // More efficient to use gadgets for some | |
178 | // widgets in Motif. 0 for no gadgets. | |
179 | // Please note: there is no reason to not | |
180 | // use it except if you intend to modify | |
181 | // color of individuals items OR | |
182 | // you need to move panel items interactively | |
183 | #define USE_BUTTON_GADGET 0 | |
184 | // On JACS's system, gadget buttons | |
185 | // interfere with default button setting. | |
186 | #define PIXEL0_DISABLE 0 | |
187 | // Define as 1 to disallow allocation | |
188 | // of pixel #0 (wxXOR problem). | |
189 | // JACS - I found this caused problems. | |
190 | ||
191 | #define MOTIF_MENUBAR_DELETE_FIX 0 | |
192 | // On some systems (Ultrix, OSF), deleting a frame | |
193 | // from within a menu callback causes a crash. | |
194 | // Set to 1 to avoid deleting the menubar handle directly, | |
195 | // which seems to cure it. | |
196 | #define DEFAULT_FILE_SELECTOR_SIZE 0 | |
197 | // Let Motif defines the size of File | |
198 | // Selector Box (if 1), or fix it to | |
199 | // wxFSB_WIDTH x wxFSB_HEIGHT (if 0) | |
200 | #define wxFSB_WIDTH 600 | |
201 | #define wxFSB_HEIGHT 500 | |
202 | ||
203 | #define MOTIF_MANAGE 1 | |
204 | // Control default style of Dialogs | |
205 | // 1: use wxMOTIF_RESIZE as default | |
206 | // 0: do not use wxMOTIF_RESIZE as default | |
207 | ||
208 | ||
209 | /* | |
210 | * MS Windows/Windows NT | |
211 | * | |
212 | */ | |
213 | ||
214 | #if defined(__WIN95__) | |
215 | #define CTL3D 0 | |
216 | #else | |
217 | #define CTL3D 1 | |
218 | // Define 1 to use Microsoft CTL3D library. | |
219 | // See note above about using FAFA and CTL3D. | |
220 | #endif | |
221 | ||
222 | #define USE_COMMON_DIALOGS 1 | |
223 | // On rare occasions (e.g. using DJGPP) may want | |
224 | // to omit common dialogs | |
225 | // (e.g. file selector, printer dialog). | |
226 | // Switching this off also switches off | |
227 | // the printing architecture and interactive | |
228 | // wxPrinterDC. | |
229 | #define USE_GREY_BACKGROUND 1 | |
230 | // If 1, uses grey (gray!) panels | |
231 | // in FAFA and non-FAFA, non-CTL3D modes. | |
232 | // I (JACS) think the controls look better | |
233 | // this way. CTL3D always uses grey panels. | |
234 | #define USE_ITSY_BITSY 1 | |
235 | // Define 1 to use Microsoft's ItsyBitsy | |
236 | // small title bar library | |
237 | #define USE_BITMAP_MESSAGE 1 | |
238 | // Define 1 to use bitmap messages. | |
239 | #define USE_PORTABLE_FONTS_IN_MSW 0 | |
240 | // Define 1 to use new portable font scheme in Windows | |
241 | // (used by default under X) | |
242 | #define FONT_SIZE_COMPATIBILITY 0 | |
243 | // Define 1 for font size to be backward compatible | |
244 | // to 1.63 and earlier. 1.64 and later define point | |
245 | // sizes to be compatible with Windows. | |
246 | #define USE_GENERIC_DIALOGS_IN_MSW 1 | |
247 | // Define 1 to use generic dialogs in Windows, even though | |
248 | // they duplicate native common dialog (e.g. wxColourDialog) | |
249 | #define USE_PENWINDOWS 0 | |
250 | // Set to 1 to use PenWindows | |
251 | ||
252 | #define USE_OWNER_DRAWN 1 | |
253 | // Owner-drawn menus and listboxes | |
254 | ||
255 | #define USE_NATIVE_STATUSBAR 1 | |
256 | // Set to 0 to use cross-platform wxStatusBar | |
257 | ||
258 | /* | |
259 | * Any platform | |
260 | * | |
261 | */ | |
262 | ||
263 | #define USE_TYPEDEFS 0 | |
264 | // Use typedefs not classes for wxPoint | |
265 | // and others, to reduce overhead and avoid | |
266 | // MS C7 memory bug. Bounds checker | |
267 | // complains about deallocating | |
268 | // arrays of wxPoints if wxPoint is a class. | |
269 | ||
270 | #if (!defined(WIN32) && !defined(__WIN32__)) || defined(__GNUWIN32__) || defined(__BORLANDC__) | |
271 | // Can't use OLE drag and drop in Windows 3.1 because we don't know how | |
272 | // to implement UUIDs | |
273 | // GnuWin32 doesn't have appropriate headers for e.g. IUnknown. | |
274 | #undef USE_DRAG_AND_DROP | |
275 | #define USE_DRAG_AND_DROP 0 | |
276 | #endif | |
277 | ||
278 | // Only WIN32 supports wxStatusBar95 | |
279 | #if !defined(__WIN32__) && USE_NATIVE_STATUSBAR | |
280 | #undef USE_NATIVE_STATUSBAR | |
281 | #define USE_NATIVE_STATUSBAR 0 | |
282 | #endif | |
283 | ||
284 | // Minimal setup e.g. for compiling small utilities | |
285 | #define MINIMAL_WXWINDOWS_SETUP 0 | |
286 | ||
287 | #if MINIMAL_WXWINDOWS_SETUP | |
288 | #undef USE_POSTSCRIPT | |
289 | # define USE_POSTSCRIPT 0 | |
290 | #undef USE_PRINTING_ARCHITECTURE | |
291 | # define USE_PRINTING_ARCHITECTURE 0 | |
292 | #undef USE_POSTSCRIPT_ARCHITECTURE_IN_MSW | |
293 | # define USE_POSTSCRIPT_ARCHITECTURE_IN_MSW 0 | |
294 | #undef USE_METAFILE | |
295 | # define USE_METAFILE 0 | |
296 | #undef USE_FORM | |
297 | # define USE_FORM 0 | |
298 | #undef USE_SPLINES | |
299 | # define USE_SPLINES 0 | |
300 | #undef USE_SCROLLBAR | |
301 | # define USE_SCROLLBAR 0 | |
302 | #undef USE_COMBOBOX | |
303 | # define USE_COMBOBOX 0 | |
304 | #undef USE_RADIOBUTTON | |
305 | # define USE_RADIOBUTTON 0 | |
306 | #undef USE_XPM_IN_MSW | |
307 | # define USE_XPM_IN_MSW 0 | |
308 | #undef USE_WX_RESOURCES | |
309 | # define USE_WX_RESOURCES 0 | |
310 | #undef USE_DOC_VIEW_ARCHITECTURE | |
311 | # define USE_DOC_VIEW_ARCHITECTURE 0 | |
312 | #undef USE_GNU_WXSTRING | |
313 | # define USE_GNU_WXSTRING 0 | |
314 | #undef USE_ODBC | |
315 | # define USE_ODBC 0 | |
316 | #undef USE_TIMEDATE | |
317 | # define USE_TIMEDATE 0 | |
318 | #undef CTL3D | |
319 | # define CTL3D 0 | |
320 | #undef USE_ITSY_BITSY | |
321 | # define USE_ITSY_BITSY 0 | |
322 | #undef USE_IMAGE_LOADING_IN_MSW | |
323 | # define USE_IMAGE_LOADING_IN_MSW 0 | |
324 | #undef USE_GAUGE | |
325 | # define USE_GAUGE 0 | |
326 | #undef USE_RESOURCE_LOADING_IN_MSW | |
327 | # define USE_RESOURCE_LOADING_IN_MSW 0 | |
328 | #undef USE_DRAG_AND_DROP | |
329 | # define USE_DRAG_AND_DROP 0 | |
330 | #endif | |
331 | ||
332 | #endif | |
333 | // __SETUPH__ |