]>
Commit | Line | Data |
---|---|---|
1 | /* | |
2 | * Name: wx/chkconf.h | |
3 | * Purpose: check the config settings for consistency | |
4 | * Author: Vadim Zeitlin | |
5 | * Modified by: | |
6 | * Created: 09.08.00 | |
7 | * RCS-ID: $Id$ | |
8 | * Copyright: (c) 2000 Vadim Zeitlin <vadim@wxwindows.org> | |
9 | * Licence: wxWindows license | |
10 | */ | |
11 | ||
12 | /* THIS IS A C FILE, DON'T USE C++ FEATURES (IN PARTICULAR COMMENTS) IN IT */ | |
13 | ||
14 | /* | |
15 | this global setting determintes what should we do if the setting FOO | |
16 | requires BAR and BAR is not set: we can either silently define BAR | |
17 | (default, recommended) or give an error and abort (mainly useful for | |
18 | developpers only) | |
19 | */ | |
20 | #define wxABORT_ON_CONFIG_ERROR | |
21 | ||
22 | /* | |
23 | all these tests are for GUI onlu | |
24 | */ | |
25 | #if wxUSE_GUI | |
26 | ||
27 | /* | |
28 | all of the settings tested below must be defined or we'd get an error from | |
29 | preprocessor about invalid integer expression | |
30 | */ | |
31 | ||
32 | #ifndef wxUSE_ACCEL | |
33 | # ifdef wxABORT_ON_CONFIG_ERROR | |
34 | # error "wxUSE_ACCEL must be defined." | |
35 | # else | |
36 | # define wxUSE_ACCEL 0 | |
37 | # endif | |
38 | #endif /* !defined(wxUSE_ACCEL) */ | |
39 | ||
40 | #ifndef wxUSE_BMPBUTTON | |
41 | # ifdef wxABORT_ON_CONFIG_ERROR | |
42 | # error "wxUSE_BMPBUTTON must be defined." | |
43 | # else | |
44 | # define wxUSE_BMPBUTTON 0 | |
45 | # endif | |
46 | #endif /* !defined(wxUSE_BMPBUTTON) */ | |
47 | ||
48 | #ifndef wxUSE_BUTTON | |
49 | # ifdef wxABORT_ON_CONFIG_ERROR | |
50 | # error "wxUSE_BUTTON must be defined." | |
51 | # else | |
52 | # define wxUSE_BUTTON 0 | |
53 | # endif | |
54 | #endif /* !defined(wxUSE_BUTTON) */ | |
55 | ||
56 | #ifndef wxUSE_CALENDARCTRL | |
57 | # ifdef wxABORT_ON_CONFIG_ERROR | |
58 | # error "wxUSE_CALENDARCTRL must be defined." | |
59 | # else | |
60 | # define wxUSE_CALENDARCTRL 0 | |
61 | # endif | |
62 | #endif /* !defined(wxUSE_CALENDARCTRL) */ | |
63 | ||
64 | #ifndef wxUSE_CARET | |
65 | # ifdef wxABORT_ON_CONFIG_ERROR | |
66 | # error "wxUSE_CARET must be defined." | |
67 | # else | |
68 | # define wxUSE_CARET 0 | |
69 | # endif | |
70 | #endif /* !defined(wxUSE_CARET) */ | |
71 | ||
72 | #ifndef wxUSE_CHECKBOX | |
73 | # ifdef wxABORT_ON_CONFIG_ERROR | |
74 | # error "wxUSE_CHECKBOX must be defined." | |
75 | # else | |
76 | # define wxUSE_CHECKBOX 0 | |
77 | # endif | |
78 | #endif /* !defined(wxUSE_CHECKBOX) */ | |
79 | ||
80 | #ifndef wxUSE_CHECKLISTBOX | |
81 | # ifdef wxABORT_ON_CONFIG_ERROR | |
82 | # error "wxUSE_CHECKLISTBOX must be defined." | |
83 | # else | |
84 | # define wxUSE_CHECKLISTBOX 0 | |
85 | # endif | |
86 | #endif /* !defined(wxUSE_CHECKLISTBOX) */ | |
87 | ||
88 | #ifndef wxUSE_CHOICE | |
89 | # ifdef wxABORT_ON_CONFIG_ERROR | |
90 | # error "wxUSE_CHOICE must be defined." | |
91 | # else | |
92 | # define wxUSE_CHOICE 0 | |
93 | # endif | |
94 | #endif /* !defined(wxUSE_CHOICE) */ | |
95 | ||
96 | #ifndef wxUSE_CHOICEDLG | |
97 | # ifdef wxABORT_ON_CONFIG_ERROR | |
98 | # error "wxUSE_CHOICEDLG must be defined." | |
99 | # else | |
100 | # define wxUSE_CHOICEDLG 0 | |
101 | # endif | |
102 | #endif /* !defined(wxUSE_CHOICEDLG) */ | |
103 | ||
104 | #ifndef wxUSE_CLIPBOARD | |
105 | # ifdef wxABORT_ON_CONFIG_ERROR | |
106 | # error "wxUSE_CLIPBOARD must be defined." | |
107 | # else | |
108 | # define wxUSE_CLIPBOARD 0 | |
109 | # endif | |
110 | #endif /* !defined(wxUSE_CLIPBOARD) */ | |
111 | ||
112 | #ifndef wxUSE_COLOURDLG | |
113 | # ifdef wxABORT_ON_CONFIG_ERROR | |
114 | # error "wxUSE_COLOURDLG must be defined." | |
115 | # else | |
116 | # define wxUSE_COLOURDLG 0 | |
117 | # endif | |
118 | #endif /* !defined(wxUSE_COLOURDLG) */ | |
119 | ||
120 | #ifndef wxUSE_COMBOBOX | |
121 | # ifdef wxABORT_ON_CONFIG_ERROR | |
122 | # error "wxUSE_COMBOBOX must be defined." | |
123 | # else | |
124 | # define wxUSE_COMBOBOX 0 | |
125 | # endif | |
126 | #endif /* !defined(wxUSE_COMBOBOX) */ | |
127 | ||
128 | #ifndef wxUSE_DATAOBJ | |
129 | # ifdef wxABORT_ON_CONFIG_ERROR | |
130 | # error "wxUSE_DATAOBJ must be defined." | |
131 | # else | |
132 | # define wxUSE_DATAOBJ 0 | |
133 | # endif | |
134 | #endif /* !defined(wxUSE_DATAOBJ) */ | |
135 | ||
136 | #ifndef wxUSE_DOC_VIEW_ARCHITECTURE | |
137 | # ifdef wxABORT_ON_CONFIG_ERROR | |
138 | # error "wxUSE_DOC_VIEW_ARCHITECTURE must be defined." | |
139 | # else | |
140 | # define wxUSE_DOC_VIEW_ARCHITECTURE 0 | |
141 | # endif | |
142 | #endif /* !defined(wxUSE_DOC_VIEW_ARCHITECTURE) */ | |
143 | ||
144 | #ifndef wxUSE_FILEDLG | |
145 | # ifdef wxABORT_ON_CONFIG_ERROR | |
146 | # error "wxUSE_FILEDLG must be defined." | |
147 | # else | |
148 | # define wxUSE_FILEDLG 0 | |
149 | # endif | |
150 | #endif /* !defined(wxUSE_FILEDLG) */ | |
151 | ||
152 | #ifndef wxUSE_FONTDLG | |
153 | # ifdef wxABORT_ON_CONFIG_ERROR | |
154 | # error "wxUSE_FONTDLG must be defined." | |
155 | # else | |
156 | # define wxUSE_FONTDLG 0 | |
157 | # endif | |
158 | #endif /* !defined(wxUSE_FONTDLG) */ | |
159 | ||
160 | #ifndef wxUSE_FONTMAP | |
161 | # ifdef wxABORT_ON_CONFIG_ERROR | |
162 | # error "wxUSE_FONTMAP must be defined." | |
163 | # else | |
164 | # define wxUSE_FONTMAP 0 | |
165 | # endif | |
166 | #endif /* !defined(wxUSE_FONTMAP) */ | |
167 | ||
168 | #ifndef wxUSE_GAUGE | |
169 | # ifdef wxABORT_ON_CONFIG_ERROR | |
170 | # error "wxUSE_GAUGE must be defined." | |
171 | # else | |
172 | # define wxUSE_GAUGE 0 | |
173 | # endif | |
174 | #endif /* !defined(wxUSE_GAUGE) */ | |
175 | ||
176 | #ifndef wxUSE_GRID | |
177 | # ifdef wxABORT_ON_CONFIG_ERROR | |
178 | # error "wxUSE_GRID must be defined." | |
179 | # else | |
180 | # define wxUSE_GRID 0 | |
181 | # endif | |
182 | #endif /* !defined(wxUSE_GRID) */ | |
183 | ||
184 | #ifndef wxUSE_HELP | |
185 | # ifdef wxABORT_ON_CONFIG_ERROR | |
186 | # error "wxUSE_HELP must be defined." | |
187 | # else | |
188 | # define wxUSE_HELP 0 | |
189 | # endif | |
190 | #endif /* !defined(wxUSE_HELP) */ | |
191 | ||
192 | #ifndef wxUSE_IMAGLIST | |
193 | # ifdef wxABORT_ON_CONFIG_ERROR | |
194 | # error "wxUSE_IMAGLIST must be defined." | |
195 | # else | |
196 | # define wxUSE_IMAGLIST 0 | |
197 | # endif | |
198 | #endif /* !defined(wxUSE_IMAGLIST) */ | |
199 | ||
200 | #ifndef wxUSE_LISTBOX | |
201 | # ifdef wxABORT_ON_CONFIG_ERROR | |
202 | # error "wxUSE_LISTBOX must be defined." | |
203 | # else | |
204 | # define wxUSE_LISTBOX 0 | |
205 | # endif | |
206 | #endif /* !defined(wxUSE_LISTBOX) */ | |
207 | ||
208 | #ifndef wxUSE_LISTCTRL | |
209 | # ifdef wxABORT_ON_CONFIG_ERROR | |
210 | # error "wxUSE_LISTCTRL must be defined." | |
211 | # else | |
212 | # define wxUSE_LISTCTRL 0 | |
213 | # endif | |
214 | #endif /* !defined(wxUSE_LISTCTRL) */ | |
215 | ||
216 | #ifndef wxUSE_LOG | |
217 | # ifdef wxABORT_ON_CONFIG_ERROR | |
218 | # error "wxUSE_LOG must be defined." | |
219 | # else | |
220 | # define wxUSE_LOG 0 | |
221 | # endif | |
222 | #endif /* !defined(wxUSE_LOG) */ | |
223 | ||
224 | #ifndef wxUSE_LOGGUI | |
225 | # ifdef wxABORT_ON_CONFIG_ERROR | |
226 | # error "wxUSE_LOGGUI must be defined." | |
227 | # else | |
228 | # define wxUSE_LOGGUI 0 | |
229 | # endif | |
230 | #endif /* !defined(wxUSE_LOGGUI) */ | |
231 | ||
232 | #ifndef wxUSE_LOGWINDOW | |
233 | # ifdef wxABORT_ON_CONFIG_ERROR | |
234 | # error "wxUSE_LOGWINDOW must be defined." | |
235 | # else | |
236 | # define wxUSE_LOGWINDOW 0 | |
237 | # endif | |
238 | #endif /* !defined(wxUSE_LOGWINDOW) */ | |
239 | ||
240 | /* For now... */ | |
241 | #ifndef __WXGTK__ | |
242 | #ifndef wxUSE_LOG_DIALOG | |
243 | # ifdef wxABORT_ON_CONFIG_ERROR | |
244 | # error "wxUSE_LOG_DIALOG must be defined." | |
245 | # else | |
246 | # define wxUSE_LOG_DIALOG 0 | |
247 | # endif | |
248 | #endif /* !defined(wxUSE_LOG_DIALOG) */ | |
249 | #endif | |
250 | ||
251 | #ifndef wxUSE_MDI_ARCHITECTURE | |
252 | # ifdef wxABORT_ON_CONFIG_ERROR | |
253 | # error "wxUSE_MDI_ARCHITECTURE must be defined." | |
254 | # else | |
255 | # define wxUSE_MDI_ARCHITECTURE 0 | |
256 | # endif | |
257 | #endif /* !defined(wxUSE_MDI_ARCHITECTURE) */ | |
258 | ||
259 | #ifndef wxUSE_MENUS | |
260 | # ifdef wxABORT_ON_CONFIG_ERROR | |
261 | # error "wxUSE_MENUS must be defined." | |
262 | # else | |
263 | # define wxUSE_MENUS 0 | |
264 | # endif | |
265 | #endif /* !defined(wxUSE_MENUS) */ | |
266 | ||
267 | #ifndef wxUSE_MIMETYPE | |
268 | # ifdef wxABORT_ON_CONFIG_ERROR | |
269 | # error "wxUSE_MIMETYPE must be defined." | |
270 | # else | |
271 | # define wxUSE_MIMETYPE 0 | |
272 | # endif | |
273 | #endif /* !defined(wxUSE_MIMETYPE) */ | |
274 | ||
275 | #ifndef wxUSE_MSGDLG | |
276 | # ifdef wxABORT_ON_CONFIG_ERROR | |
277 | # error "wxUSE_MSGDLG must be defined." | |
278 | # else | |
279 | # define wxUSE_MSGDLG 0 | |
280 | # endif | |
281 | #endif /* !defined(wxUSE_MSGDLG) */ | |
282 | ||
283 | #ifndef wxUSE_NEW_GRID | |
284 | # ifdef wxABORT_ON_CONFIG_ERROR | |
285 | # error "wxUSE_NEW_GRID must be defined." | |
286 | # else | |
287 | # define wxUSE_NEW_GRID 0 | |
288 | # endif | |
289 | #endif /* !defined(wxUSE_NEW_GRID) */ | |
290 | ||
291 | #ifndef wxUSE_NOTEBOOK | |
292 | # ifdef wxABORT_ON_CONFIG_ERROR | |
293 | # error "wxUSE_NOTEBOOK must be defined." | |
294 | # else | |
295 | # define wxUSE_NOTEBOOK 0 | |
296 | # endif | |
297 | #endif /* !defined(wxUSE_NOTEBOOK) */ | |
298 | ||
299 | #ifndef wxUSE_POPUPWIN | |
300 | # ifdef wxABORT_ON_CONFIG_ERROR | |
301 | # error "wxUSE_POPUPWIN must be defined." | |
302 | # else | |
303 | # define wxUSE_POPUPWIN 0 | |
304 | # endif | |
305 | #endif /* !defined(wxUSE_POPUPWIN) */ | |
306 | ||
307 | #ifndef wxUSE_PRINTING_ARCHITECTURE | |
308 | # ifdef wxABORT_ON_CONFIG_ERROR | |
309 | # error "wxUSE_PRINTING_ARCHITECTURE must be defined." | |
310 | # else | |
311 | # define wxUSE_PRINTING_ARCHITECTURE 0 | |
312 | # endif | |
313 | #endif /* !defined(wxUSE_PRINTING_ARCHITECTURE) */ | |
314 | ||
315 | #ifndef wxUSE_RADIOBOX | |
316 | # ifdef wxABORT_ON_CONFIG_ERROR | |
317 | # error "wxUSE_RADIOBOX must be defined." | |
318 | # else | |
319 | # define wxUSE_RADIOBOX 0 | |
320 | # endif | |
321 | #endif /* !defined(wxUSE_RADIOBOX) */ | |
322 | ||
323 | #ifndef wxUSE_RADIOBTN | |
324 | # ifdef wxABORT_ON_CONFIG_ERROR | |
325 | # error "wxUSE_RADIOBTN must be defined." | |
326 | # else | |
327 | # define wxUSE_RADIOBTN 0 | |
328 | # endif | |
329 | #endif /* !defined(wxUSE_RADIOBTN) */ | |
330 | ||
331 | #ifndef wxUSE_SASH | |
332 | # ifdef wxABORT_ON_CONFIG_ERROR | |
333 | # error "wxUSE_SASH must be defined." | |
334 | # else | |
335 | # define wxUSE_SASH 0 | |
336 | # endif | |
337 | #endif /* !defined(wxUSE_SASH) */ | |
338 | ||
339 | #ifndef wxUSE_SCROLLBAR | |
340 | # ifdef wxABORT_ON_CONFIG_ERROR | |
341 | # error "wxUSE_SCROLLBAR must be defined." | |
342 | # else | |
343 | # define wxUSE_SCROLLBAR 0 | |
344 | # endif | |
345 | #endif /* !defined(wxUSE_SCROLLBAR) */ | |
346 | ||
347 | #ifndef wxUSE_SLIDER | |
348 | # ifdef wxABORT_ON_CONFIG_ERROR | |
349 | # error "wxUSE_SLIDER must be defined." | |
350 | # else | |
351 | # define wxUSE_SLIDER 0 | |
352 | # endif | |
353 | #endif /* !defined(wxUSE_SLIDER) */ | |
354 | ||
355 | #ifndef wxUSE_SPINBTN | |
356 | # ifdef wxABORT_ON_CONFIG_ERROR | |
357 | # error "wxUSE_SPINBTN must be defined." | |
358 | # else | |
359 | # define wxUSE_SPINBTN 0 | |
360 | # endif | |
361 | #endif /* !defined(wxUSE_SPINBTN) */ | |
362 | ||
363 | #ifndef wxUSE_SPINCTRL | |
364 | # ifdef wxABORT_ON_CONFIG_ERROR | |
365 | # error "wxUSE_SPINCTRL must be defined." | |
366 | # else | |
367 | # define wxUSE_SPINCTRL 0 | |
368 | # endif | |
369 | #endif /* !defined(wxUSE_SPINCTRL) */ | |
370 | ||
371 | #ifndef wxUSE_SPLITTER | |
372 | # ifdef wxABORT_ON_CONFIG_ERROR | |
373 | # error "wxUSE_SPLITTER must be defined." | |
374 | # else | |
375 | # define wxUSE_SPLITTER 0 | |
376 | # endif | |
377 | #endif /* !defined(wxUSE_SPLITTER) */ | |
378 | ||
379 | #ifndef wxUSE_STATBMP | |
380 | # ifdef wxABORT_ON_CONFIG_ERROR | |
381 | # error "wxUSE_STATBMP must be defined." | |
382 | # else | |
383 | # define wxUSE_STATBMP 0 | |
384 | # endif | |
385 | #endif /* !defined(wxUSE_STATBMP) */ | |
386 | ||
387 | #ifndef wxUSE_STATBOX | |
388 | # ifdef wxABORT_ON_CONFIG_ERROR | |
389 | # error "wxUSE_STATBOX must be defined." | |
390 | # else | |
391 | # define wxUSE_STATBOX 0 | |
392 | # endif | |
393 | #endif /* !defined(wxUSE_STATBOX) */ | |
394 | ||
395 | #ifndef wxUSE_STATLINE | |
396 | # ifdef wxABORT_ON_CONFIG_ERROR | |
397 | # error "wxUSE_STATLINE must be defined." | |
398 | # else | |
399 | # define wxUSE_STATLINE 0 | |
400 | # endif | |
401 | #endif /* !defined(wxUSE_STATLINE) */ | |
402 | ||
403 | #ifndef wxUSE_STATTEXT | |
404 | # ifdef wxABORT_ON_CONFIG_ERROR | |
405 | # error "wxUSE_STATTEXT must be defined." | |
406 | # else | |
407 | # define wxUSE_STATTEXT 0 | |
408 | # endif | |
409 | #endif /* !defined(wxUSE_STATTEXT) */ | |
410 | ||
411 | #ifndef wxUSE_STATUSBAR | |
412 | # ifdef wxABORT_ON_CONFIG_ERROR | |
413 | # error "wxUSE_STATUSBAR must be defined." | |
414 | # else | |
415 | # define wxUSE_STATUSBAR 0 | |
416 | # endif | |
417 | #endif /* !defined(wxUSE_STATUSBAR) */ | |
418 | ||
419 | #ifndef wxUSE_STOPWATCH | |
420 | # ifdef wxABORT_ON_CONFIG_ERROR | |
421 | # error "wxUSE_STOPWATCH must be defined." | |
422 | # else | |
423 | # define wxUSE_STOPWATCH 0 | |
424 | # endif | |
425 | #endif /* !defined(wxUSE_STOPWATCH) */ | |
426 | ||
427 | #ifndef wxUSE_TAB_DIALOG | |
428 | # ifdef wxABORT_ON_CONFIG_ERROR | |
429 | # error "wxUSE_TAB_DIALOG must be defined." | |
430 | # else | |
431 | # define wxUSE_TAB_DIALOG 0 | |
432 | # endif | |
433 | #endif /* !defined(wxUSE_TAB_DIALOG) */ | |
434 | ||
435 | #ifndef wxUSE_TEXTCTRL | |
436 | # ifdef wxABORT_ON_CONFIG_ERROR | |
437 | # error "wxUSE_TEXTCTRL must be defined." | |
438 | # else | |
439 | # define wxUSE_TEXTCTRL 0 | |
440 | # endif | |
441 | #endif /* !defined(wxUSE_TEXTCTRL) */ | |
442 | ||
443 | #ifndef wxUSE_TOOLBAR | |
444 | # ifdef wxABORT_ON_CONFIG_ERROR | |
445 | # error "wxUSE_TOOLBAR must be defined." | |
446 | # else | |
447 | # define wxUSE_TOOLBAR 0 | |
448 | # endif | |
449 | #endif /* !defined(wxUSE_TOOLBAR) */ | |
450 | ||
451 | #ifndef wxUSE_TOOLTIPS | |
452 | # ifdef wxABORT_ON_CONFIG_ERROR | |
453 | # error "wxUSE_TOOLTIPS must be defined." | |
454 | # else | |
455 | # define wxUSE_TOOLTIPS 0 | |
456 | # endif | |
457 | #endif /* !defined(wxUSE_TOOLTIPS) */ | |
458 | ||
459 | #ifndef wxUSE_TREECTRL | |
460 | # ifdef wxABORT_ON_CONFIG_ERROR | |
461 | # error "wxUSE_TREECTRL must be defined." | |
462 | # else | |
463 | # define wxUSE_TREECTRL 0 | |
464 | # endif | |
465 | #endif /* !defined(wxUSE_TREECTRL) */ | |
466 | ||
467 | #ifndef wxUSE_WXHTML_HELP | |
468 | # ifdef wxABORT_ON_CONFIG_ERROR | |
469 | # error "wxUSE_WXHTML_HELP must be defined." | |
470 | # else | |
471 | # define wxUSE_WXHTML_HELP 0 | |
472 | # endif | |
473 | #endif /* !defined(wxUSE_WXHTML_HELP) */ | |
474 | ||
475 | /* | |
476 | check consistency of the settings | |
477 | */ | |
478 | #if wxUSE_BUTTON || \ | |
479 | wxUSE_CALENDARCTRL || \ | |
480 | wxUSE_CARET || \ | |
481 | wxUSE_COMBOBOX || \ | |
482 | wxUSE_BMPBUTTON || \ | |
483 | wxUSE_CHECKBOX || \ | |
484 | wxUSE_CHECKLISTBOX || \ | |
485 | wxUSE_CHOICE || \ | |
486 | wxUSE_GAUGE || \ | |
487 | wxUSE_GRID || \ | |
488 | wxUSE_NEW_GRID || \ | |
489 | wxUSE_LISTBOX || \ | |
490 | wxUSE_LISTCTRL || \ | |
491 | wxUSE_NOTEBOOK || \ | |
492 | wxUSE_RADIOBOX || \ | |
493 | wxUSE_RADIOBTN || \ | |
494 | wxUSE_SCROLLBAR || \ | |
495 | wxUSE_SLIDER || \ | |
496 | wxUSE_SPINBTN || \ | |
497 | wxUSE_SPINCTRL || \ | |
498 | wxUSE_STATBMP || \ | |
499 | wxUSE_STATBOX || \ | |
500 | wxUSE_STATLINE || \ | |
501 | wxUSE_STATTEXT || \ | |
502 | wxUSE_STATUSBAR || \ | |
503 | wxUSE_TEXTCTRL || \ | |
504 | wxUSE_TOOLBAR || \ | |
505 | wxUSE_TREECTRL | |
506 | # if !wxUSE_CONTROLS | |
507 | # ifdef wxABORT_ON_CONFIG_ERROR | |
508 | # error "wxUSE_CONTROLS unset but some controls used" | |
509 | # else | |
510 | # undef wxUSE_CONTROLS | |
511 | # define wxUSE_CONTROLS 1 | |
512 | # endif | |
513 | # endif | |
514 | #endif /* controls */ | |
515 | ||
516 | /* wxUniv-specific dependencies */ | |
517 | #if defined(__WXUNIVERSAL__) | |
518 | # if (wxUSE_COMBOBOX || wxUSE_MENUS) && !wxUSE_POPUPWIN | |
519 | # ifdef wxABORT_ON_CONFIG_ERROR | |
520 | # error "wxUSE_POPUPWIN must be defined to use comboboxes/menus" | |
521 | # else | |
522 | # undef wxUSE_POPUPWIN | |
523 | # define wxUSE_POPUPWIN 1 | |
524 | # endif | |
525 | # endif | |
526 | ||
527 | # if wxUSE_COMBOBOX | |
528 | # if !wxUSE_LISTBOX | |
529 | # ifdef wxABORT_ON_CONFIG_ERROR | |
530 | # error "wxComboBox requires wxListBox in wxUniversal" | |
531 | # else | |
532 | # undef wxUSE_LISTBOX | |
533 | # define wxUSE_LISTBOX 1 | |
534 | # endif | |
535 | # endif | |
536 | # endif /* wxUSE_COMBOBOX */ | |
537 | ||
538 | # if wxUSE_RADIOBTN | |
539 | # if !wxUSE_CHECKBOX | |
540 | # ifdef wxABORT_ON_CONFIG_ERROR | |
541 | # error "wxUSE_RADIOBTN requires wxUSE_CHECKBOX in wxUniversal" | |
542 | # else | |
543 | # undef wxUSE_CHECKBOX | |
544 | # define wxUSE_CHECKBOX 1 | |
545 | # endif | |
546 | # endif | |
547 | # endif /* wxUSE_RADIOBTN */ | |
548 | ||
549 | # if wxUSE_TEXTCTRL | |
550 | # if !wxUSE_CARET | |
551 | # ifdef wxABORT_ON_CONFIG_ERROR | |
552 | # error "wxTextCtrl requires wxCaret in wxUniversal" | |
553 | # else | |
554 | # undef wxUSE_CARET | |
555 | # define wxUSE_CARET 1 | |
556 | # endif | |
557 | # endif /* wxUSE_CARET */ | |
558 | ||
559 | # if !wxUSE_SCROLLBAR | |
560 | # ifdef wxABORT_ON_CONFIG_ERROR | |
561 | # error "wxTextCtrl requires wxScrollBar in wxUniversal" | |
562 | # else | |
563 | # undef wxUSE_SCROLLBAR | |
564 | # define wxUSE_SCROLLBAR 1 | |
565 | # endif | |
566 | # endif /* wxUSE_SCROLLBAR */ | |
567 | # endif /* wxUSE_TEXTCTRL */ | |
568 | #endif /* __WXUNIVERSAL__ */ | |
569 | ||
570 | /* wxGTK-specific dependencies */ | |
571 | #if defined(__WXGTK__) && !defined(__WXUNIVERSAL__) | |
572 | # if wxUSE_MDI_ARCHITECTURE && !wxUSE_MENUS | |
573 | # ifdef wxABORT_ON_CONFIG_ERROR | |
574 | # error "MDI requires wxUSE_MENUS in wxGTK" | |
575 | # else | |
576 | # undef wxUSE_MENUS | |
577 | # define wxUSE_MENUS 1 | |
578 | # endif | |
579 | # endif | |
580 | #endif /* wxGTK && !wxUniv */ | |
581 | ||
582 | /* generic controls dependencies */ | |
583 | #if !defined(__WXMSW__) || defined(__WXUNIVERSAL__) | |
584 | # if wxUSE_FONTDLG || wxUSE_FILEDLG || wxUSE_CHOICEDLG | |
585 | /* all common controls are needed by these dialogs */ | |
586 | # if !defined(wxUSE_CHOICE) || \ | |
587 | !defined(wxUSE_TEXTCTRL) || \ | |
588 | !defined(wxUSE_BUTTON) || \ | |
589 | !defined(wxUSE_CHECKBOX) || \ | |
590 | !defined(wxUSE_STATTEXT) | |
591 | # ifdef wxABORT_ON_CONFIG_ERROR | |
592 | # error "These common controls are needed by common dialogs" | |
593 | # else | |
594 | # undef wxUSE_CHOICE | |
595 | # define wxUSE_CHOICE 1 | |
596 | # undef wxUSE_TEXTCTRL | |
597 | # define wxUSE_TEXTCTRL 1 | |
598 | # undef wxUSE_BUTTON | |
599 | # define wxUSE_BUTTON 1 | |
600 | # undef wxUSE_CHECKBOX | |
601 | # define wxUSE_CHECKBOX 1 | |
602 | # undef wxUSE_STATTEXT | |
603 | # define wxUSE_STATTEXT 1 | |
604 | # endif | |
605 | # endif | |
606 | # endif | |
607 | #endif /* !wxMSW || wxUniv */ | |
608 | ||
609 | /* common dependencies */ | |
610 | #if wxUSE_CALENDARCTRL | |
611 | # if !(wxUSE_SPINBTN && wxUSE_COMBOBOX) | |
612 | # ifdef wxABORT_ON_CONFIG_ERROR | |
613 | # error "wxCalendarCtrl requires wxSpinButton and wxComboBox" | |
614 | # else | |
615 | # undef wxUSE_SPINBTN | |
616 | # undef wxUSE_COMBOBOX | |
617 | # define wxUSE_SPINBTN 1 | |
618 | # define wxUSE_COMBOBOX 1 | |
619 | # endif | |
620 | # endif | |
621 | #endif /* wxUSE_CALENDARCTRL */ | |
622 | ||
623 | #if wxUSE_CHECKLISTBOX | |
624 | # if !wxUSE_LISTBOX | |
625 | # ifdef wxABORT_ON_CONFIG_ERROR | |
626 | # error "wxCheckListBox requires wxListBox" | |
627 | # else | |
628 | # undef wxUSE_LISTBOX | |
629 | # define wxUSE_LISTBOX 1 | |
630 | # endif | |
631 | # endif | |
632 | #endif /* wxUSE_RADIOBTN */ | |
633 | ||
634 | #if wxUSE_WXHTML_HELP | |
635 | # if !wxUSE_HELP || !wxUSE_HTML || !wxUSE_COMBOBOX | |
636 | # ifdef wxABORT_ON_CONFIG_ERROR | |
637 | # error "Built in help controller can't be compiled" | |
638 | # else | |
639 | # undef wxUSE_HELP | |
640 | # define wxUSE_HELP 1 | |
641 | # undef wxUSE_HTML | |
642 | # define wxUSE_HTML 1 | |
643 | # undef wxUSE_COMBOBOX | |
644 | # define wxUSE_COMBOBOX 1 | |
645 | # endif | |
646 | # endif | |
647 | #endif /* wxUSE_WXHTML_HELP */ | |
648 | ||
649 | #if wxUSE_PRINTING_ARCHITECTURE | |
650 | # if !wxUSE_COMBOBOX | |
651 | # ifdef wxABORT_ON_CONFIG_ERROR | |
652 | # error "Print dialog requires wxUSE_COMBOBOX" | |
653 | # else | |
654 | # undef wxUSE_COMBOBOX | |
655 | # define wxUSE_COMBOBOX 1 | |
656 | # endif | |
657 | # endif | |
658 | #endif /* wxUSE_PRINTING_ARCHITECTURE */ | |
659 | ||
660 | #if wxUSE_DOC_VIEW_ARCHITECTURE | |
661 | # if !wxUSE_MENUS | |
662 | # ifdef wxABORT_ON_CONFIG_ERROR | |
663 | # error "DocView requires wxUSE_MENUS" | |
664 | # else | |
665 | # undef wxUSE_MENUS | |
666 | # define wxUSE_MENUS 1 | |
667 | # endif | |
668 | # endif | |
669 | #endif /* wxUSE_DOC_VIEW_ARCHITECTURE */ | |
670 | ||
671 | #if !wxUSE_FILEDLG | |
672 | # if wxUSE_DOC_VIEW_ARCHITECTURE || wxUSE_HTML | |
673 | # ifdef wxABORT_ON_CONFIG_ERROR | |
674 | # error "wxFileDialog must be compiled as well" | |
675 | # else | |
676 | # undef wxUSE_FILEDLG | |
677 | # define wxUSE_FILEDLG 1 | |
678 | # endif | |
679 | # endif | |
680 | #endif /* wxUSE_FILEDLG */ | |
681 | ||
682 | #if !wxUSE_IMAGLIST | |
683 | # if wxUSE_TREECTRL || wxUSE_NOTEBOOK || wxUSE_LISTCTRL | |
684 | # ifdef wxABORT_ON_CONFIG_ERROR | |
685 | # error "wxImageList must be compiled as well" | |
686 | # else | |
687 | # undef wxUSE_IMAGLIST | |
688 | # define wxUSE_IMAGLIST 1 | |
689 | # endif | |
690 | # endif | |
691 | #endif /* !wxUSE_IMAGLIST */ | |
692 | ||
693 | #if !wxUSE_MSGDLG | |
694 | # ifdef wxABORT_ON_CONFIG_ERROR | |
695 | /* FIXME: should compile without it, of course, but doesn't */ | |
696 | # error "wxMessageBox is always needed" | |
697 | # else | |
698 | # undef wxUSE_MSGDLG | |
699 | # define wxUSE_MSGDLG 1 | |
700 | # endif | |
701 | #endif | |
702 | ||
703 | #if wxUSE_RADIOBOX | |
704 | # if !wxUSE_RADIOBTN || !wxUSE_STATBOX | |
705 | # ifdef wxABORT_ON_CONFIG_ERROR | |
706 | # error "wxUSE_RADIOBOX requires wxUSE_RADIOBTN and wxUSE_STATBOX" | |
707 | # else | |
708 | # undef wxUSE_RADIOBTN | |
709 | # undef wxUSE_STATBOX | |
710 | # define wxUSE_RADIOBTN 1 | |
711 | # define wxUSE_STATBOX 1 | |
712 | # endif | |
713 | # endif | |
714 | #endif /* wxUSE_RADIOBOX */ | |
715 | ||
716 | #if wxUSE_STOPWATCH | |
717 | # if !wxUSE_LONGLONG | |
718 | # ifdef wxABORT_ON_CONFIG_ERROR | |
719 | # error "wxUSE_STOPWATCH requires wxUSE_LONGLONG" | |
720 | # else | |
721 | # undef wxUSE_LONGLONG | |
722 | # define wxUSE_LONGLONG 1 | |
723 | # endif | |
724 | # endif | |
725 | #endif /* wxUSE_STOPWATCH */ | |
726 | ||
727 | #if wxUSE_LOGWINDOW | |
728 | # if !wxUSE_TEXTCTRL | |
729 | # ifdef wxABORT_ON_CONFIG_ERROR | |
730 | # error "wxUSE_LOGWINDOW requires wxUSE_TEXTCTRL" | |
731 | # else | |
732 | # undef wxUSE_TEXTCTRL | |
733 | # define wxUSE_TEXTCTRL 1 | |
734 | # endif | |
735 | # endif | |
736 | #endif /* wxUSE_LOGWINDOW */ | |
737 | ||
738 | #if wxUSE_LOG_DIALOG | |
739 | # if !wxUSE_LISTCTRL | |
740 | # ifdef wxABORT_ON_CONFIG_ERROR | |
741 | # error "wxUSE_LOG_DIALOG requires wxUSE_LISTCTRL" | |
742 | # else | |
743 | # undef wxUSE_LISTCTRL | |
744 | # define wxUSE_LISTCTRL 1 | |
745 | # endif | |
746 | # endif | |
747 | #endif /* wxUSE_LOG_DIALOG */ | |
748 | ||
749 | /* I wonder if we shouldn't just remove all occurrences of | |
750 | wxUSE_DYNAMIC_CLASSES from the sources? */ | |
751 | #if !defined(wxUSE_DYNAMIC_CLASSES) || !wxUSE_DYNAMIC_CLASSES | |
752 | # ifdef wxABORT_ON_CONFIG_ERROR | |
753 | # error "wxUSE_DYNAMIC_CLASSES must be defined as 1" | |
754 | # else | |
755 | # undef wxUSE_DYNAMIC_CLASSES | |
756 | # define wxUSE_DYNAMIC_CLASSES | |
757 | # endif | |
758 | #endif /* wxUSE_DYNAMIC_CLASSES */ | |
759 | ||
760 | #if wxUSE_MIMETYPE && !wxUSE_TEXTFILE | |
761 | # ifdef wxABORT_ON_CONFIG_ERROR | |
762 | # error "wxUSE_MIMETYPE requires wxUSE_TEXTFILE" | |
763 | # else | |
764 | # undef wxUSE_TEXTFILE | |
765 | # define wxUSE_TEXTFILE 1 | |
766 | # endif | |
767 | #endif /* wxUSE_MIMETYPE */ | |
768 | ||
769 | #if wxUSE_TEXTFILE && !wxUSE_FILE | |
770 | # ifdef wxABORT_ON_CONFIG_ERROR | |
771 | # error "wxUSE_TEXTFILE requires wxUSE_FILE" | |
772 | # else | |
773 | # undef wxUSE_FILE | |
774 | # define wxUSE_FILE 1 | |
775 | # endif | |
776 | #endif /* wxUSE_TEXTFILE */ | |
777 | ||
778 | #if wxUSE_CLIPBOARD && !wxUSE_DATAOBJ | |
779 | # ifdef wxABORT_ON_CONFIG_ERROR | |
780 | # error "wxClipboard requires wxDataObject" | |
781 | # else | |
782 | # undef wxUSE_DATAOBJ | |
783 | # define wxUSE_DATAOBJ 1 | |
784 | # endif | |
785 | #endif /* wxUSE_CLIPBOARD */ | |
786 | ||
787 | #endif /* wxUSE_GUI */ | |
788 |