setup.h 54 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644
  1. /////////////////////////////////////////////////////////////////////////////
  2. // Name: wx/univ/setup.h
  3. // Purpose: Configuration for the universal build of the library
  4. // Author: Julian Smart
  5. // Created: 01/02/97
  6. // Copyright: (c) Julian Smart
  7. // Licence: wxWindows licence
  8. /////////////////////////////////////////////////////////////////////////////
  9. #ifndef _WX_SETUP_H_
  10. #define _WX_SETUP_H_
  11. /* --- start common options --- */
  12. // ----------------------------------------------------------------------------
  13. // global settings
  14. // ----------------------------------------------------------------------------
  15. // define this to 0 when building wxBase library - this can also be done from
  16. // makefile/project file overriding the value here
  17. #ifndef wxUSE_GUI
  18. #define wxUSE_GUI 1
  19. #endif // wxUSE_GUI
  20. // ----------------------------------------------------------------------------
  21. // compatibility settings
  22. // ----------------------------------------------------------------------------
  23. // This setting determines the compatibility with 2.6 API: set it to 0 to
  24. // flag all cases of using deprecated functions.
  25. //
  26. // Default is 1 but please try building your code with 0 as the default will
  27. // change to 0 in the next version and the deprecated functions will disappear
  28. // in the version after it completely.
  29. //
  30. // Recommended setting: 0 (please update your code)
  31. #define WXWIN_COMPATIBILITY_2_6 0
  32. // This setting determines the compatibility with 2.8 API: set it to 0 to
  33. // flag all cases of using deprecated functions.
  34. //
  35. // Default is 1 but please try building your code with 0 as the default will
  36. // change to 0 in the next version and the deprecated functions will disappear
  37. // in the version after it completely.
  38. //
  39. // Recommended setting: 0 (please update your code)
  40. #define WXWIN_COMPATIBILITY_2_8 1
  41. // MSW-only: Set to 0 for accurate dialog units, else 1 for old behaviour when
  42. // default system font is used for wxWindow::GetCharWidth/Height() instead of
  43. // the current font.
  44. //
  45. // Default is 0
  46. //
  47. // Recommended setting: 0
  48. #define wxDIALOG_UNIT_COMPATIBILITY 0
  49. // ----------------------------------------------------------------------------
  50. // debugging settings
  51. // ----------------------------------------------------------------------------
  52. // wxDEBUG_LEVEL will be defined as 1 in wx/debug.h so normally there is no
  53. // need to define it here. You may do it for two reasons: either completely
  54. // disable/compile out the asserts in release version (then do it inside #ifdef
  55. // NDEBUG) or, on the contrary, enable more asserts, including the usually
  56. // disabled ones, in the debug build (then do it inside #ifndef NDEBUG)
  57. //
  58. // #ifdef NDEBUG
  59. // #define wxDEBUG_LEVEL 0
  60. // #else
  61. // #define wxDEBUG_LEVEL 2
  62. // #endif
  63. // wxHandleFatalExceptions() may be used to catch the program faults at run
  64. // time and, instead of terminating the program with a usual GPF message box,
  65. // call the user-defined wxApp::OnFatalException() function. If you set
  66. // wxUSE_ON_FATAL_EXCEPTION to 0, wxHandleFatalExceptions() will not work.
  67. //
  68. // This setting is for Win32 only and can only be enabled if your compiler
  69. // supports Win32 structured exception handling (currently only VC++ does)
  70. //
  71. // Default is 1
  72. //
  73. // Recommended setting: 1 if your compiler supports it.
  74. #define wxUSE_ON_FATAL_EXCEPTION 1
  75. // Set this to 1 to be able to generate a human-readable (unlike
  76. // machine-readable minidump created by wxCrashReport::Generate()) stack back
  77. // trace when your program crashes using wxStackWalker
  78. //
  79. // Default is 1 if supported by the compiler.
  80. //
  81. // Recommended setting: 1, set to 0 if your programs never crash
  82. #define wxUSE_STACKWALKER 1
  83. // Set this to 1 to compile in wxDebugReport class which allows you to create
  84. // and optionally upload to your web site a debug report consisting of back
  85. // trace of the crash (if wxUSE_STACKWALKER == 1) and other information.
  86. //
  87. // Default is 1 if supported by the compiler.
  88. //
  89. // Recommended setting: 1, it is compiled into a separate library so there
  90. // is no overhead if you don't use it
  91. #define wxUSE_DEBUGREPORT 1
  92. // Generic comment about debugging settings: they are very useful if you don't
  93. // use any other memory leak detection tools such as Purify/BoundsChecker, but
  94. // are probably redundant otherwise. Also, Visual C++ CRT has the same features
  95. // as wxWidgets memory debugging subsystem built in since version 5.0 and you
  96. // may prefer to use it instead of built in memory debugging code because it is
  97. // faster and more fool proof.
  98. //
  99. // Using VC++ CRT memory debugging is enabled by default in debug build (_DEBUG
  100. // is defined) if wxUSE_GLOBAL_MEMORY_OPERATORS is *not* enabled (i.e. is 0)
  101. // and if __NO_VC_CRTDBG__ is not defined.
  102. // The rest of the options in this section are obsolete and not supported,
  103. // enable them at your own risk.
  104. // If 1, enables wxDebugContext, for writing error messages to file, etc. If
  105. // __WXDEBUG__ is not defined, will still use the normal memory operators.
  106. //
  107. // Default is 0
  108. //
  109. // Recommended setting: 0
  110. #define wxUSE_DEBUG_CONTEXT 0
  111. // If 1, enables debugging versions of wxObject::new and wxObject::delete *IF*
  112. // __WXDEBUG__ is also defined.
  113. //
  114. // WARNING: this code may not work with all architectures, especially if
  115. // alignment is an issue. This switch is currently ignored for mingw / cygwin
  116. //
  117. // Default is 0
  118. //
  119. // Recommended setting: 1 if you are not using a memory debugging tool, else 0
  120. #define wxUSE_MEMORY_TRACING 0
  121. // In debug mode, cause new and delete to be redefined globally.
  122. // If this causes problems (e.g. link errors which is a common problem
  123. // especially if you use another library which also redefines the global new
  124. // and delete), set this to 0.
  125. // This switch is currently ignored for mingw / cygwin
  126. //
  127. // Default is 0
  128. //
  129. // Recommended setting: 0
  130. #define wxUSE_GLOBAL_MEMORY_OPERATORS 0
  131. // In debug mode, causes new to be defined to be WXDEBUG_NEW (see object.h). If
  132. // this causes problems (e.g. link errors), set this to 0. You may need to set
  133. // this to 0 if using templates (at least for VC++). This switch is currently
  134. // ignored for MinGW/Cygwin.
  135. //
  136. // Default is 0
  137. //
  138. // Recommended setting: 0
  139. #define wxUSE_DEBUG_NEW_ALWAYS 0
  140. // ----------------------------------------------------------------------------
  141. // Unicode support
  142. // ----------------------------------------------------------------------------
  143. // These settings are obsolete: the library is always built in Unicode mode
  144. // now, only set wxUSE_UNICODE to 0 to compile legacy code in ANSI mode if
  145. // absolutely necessary -- updating it is strongly recommended as the ANSI mode
  146. // will disappear completely in future wxWidgets releases.
  147. #ifndef wxUSE_UNICODE
  148. #define wxUSE_UNICODE 1
  149. #endif
  150. // wxUSE_WCHAR_T is required by wxWidgets now, don't change.
  151. #define wxUSE_WCHAR_T 1
  152. // ----------------------------------------------------------------------------
  153. // global features
  154. // ----------------------------------------------------------------------------
  155. // Compile library in exception-safe mode? If set to 1, the library will try to
  156. // behave correctly in presence of exceptions (even though it still will not
  157. // use the exceptions itself) and notify the user code about any unhandled
  158. // exceptions. If set to 0, propagation of the exceptions through the library
  159. // code will lead to undefined behaviour -- but the code itself will be
  160. // slightly smaller and faster.
  161. //
  162. // Note that like wxUSE_THREADS this option is automatically set to 0 if
  163. // wxNO_EXCEPTIONS is defined.
  164. //
  165. // Default is 1
  166. //
  167. // Recommended setting: depends on whether you intend to use C++ exceptions
  168. // in your own code (1 if you do, 0 if you don't)
  169. #define wxUSE_EXCEPTIONS 1
  170. // Set wxUSE_EXTENDED_RTTI to 1 to use extended RTTI
  171. //
  172. // Default is 0
  173. //
  174. // Recommended setting: 0 (this is still work in progress...)
  175. #define wxUSE_EXTENDED_RTTI 0
  176. // Support for message/error logging. This includes wxLogXXX() functions and
  177. // wxLog and derived classes. Don't set this to 0 unless you really know what
  178. // you are doing.
  179. //
  180. // Default is 1
  181. //
  182. // Recommended setting: 1 (always)
  183. #define wxUSE_LOG 1
  184. // Recommended setting: 1
  185. #define wxUSE_LOGWINDOW 1
  186. // Recommended setting: 1
  187. #define wxUSE_LOGGUI 1
  188. // Recommended setting: 1
  189. #define wxUSE_LOG_DIALOG 1
  190. // Support for command line parsing using wxCmdLineParser class.
  191. //
  192. // Default is 1
  193. //
  194. // Recommended setting: 1 (can be set to 0 if you don't use the cmd line)
  195. #define wxUSE_CMDLINE_PARSER 1
  196. // Support for multithreaded applications: if 1, compile in thread classes
  197. // (thread.h) and make the library a bit more thread safe. Although thread
  198. // support is quite stable by now, you may still consider recompiling the
  199. // library without it if you have no use for it - this will result in a
  200. // somewhat smaller and faster operation.
  201. //
  202. // Notice that if wxNO_THREADS is defined, wxUSE_THREADS is automatically reset
  203. // to 0 in wx/chkconf.h, so, for example, if you set USE_THREADS to 0 in
  204. // build/msw/config.* file this value will have no effect.
  205. //
  206. // Default is 1
  207. //
  208. // Recommended setting: 0 unless you do plan to develop MT applications
  209. #define wxUSE_THREADS 1
  210. // If enabled, compiles wxWidgets streams classes
  211. //
  212. // wx stream classes are used for image IO, process IO redirection, network
  213. // protocols implementation and much more and so disabling this results in a
  214. // lot of other functionality being lost.
  215. //
  216. // Default is 1
  217. //
  218. // Recommended setting: 1 as setting it to 0 disables many other things
  219. #define wxUSE_STREAMS 1
  220. // Support for positional parameters (e.g. %1$d, %2$s ...) in wxVsnprintf.
  221. // Note that if the system's implementation does not support positional
  222. // parameters, setting this to 1 forces the use of the wxWidgets implementation
  223. // of wxVsnprintf. The standard vsnprintf() supports positional parameters on
  224. // many Unix systems but usually doesn't under Windows.
  225. //
  226. // Positional parameters are very useful when translating a program since using
  227. // them in formatting strings allow translators to correctly reorder the
  228. // translated sentences.
  229. //
  230. // Default is 1
  231. //
  232. // Recommended setting: 1 if you want to support multiple languages
  233. #define wxUSE_PRINTF_POS_PARAMS 1
  234. // ----------------------------------------------------------------------------
  235. // Interoperability with the standard library.
  236. // ----------------------------------------------------------------------------
  237. // Set wxUSE_STL to 1 to enable maximal interoperability with the standard
  238. // library, even at the cost of backwards compatibility.
  239. //
  240. // Default is 0
  241. //
  242. // Recommended setting: 0 as the options below already provide a relatively
  243. // good level of interoperability and changing this option arguably isn't worth
  244. // diverging from the official builds of the library.
  245. #define wxUSE_STL 0
  246. // This is not a real option but is used as the default value for
  247. // wxUSE_STD_IOSTREAM, wxUSE_STD_STRING and wxUSE_STD_CONTAINERS.
  248. //
  249. // Currently the Digital Mars and Watcom compilers come without standard C++
  250. // library headers by default, wxUSE_STD_STRING can be set to 1 if you do have
  251. // them (e.g. from STLPort).
  252. //
  253. // VC++ 5.0 does include standard C++ library headers, however they produce
  254. // many warnings that can't be turned off when compiled at warning level 4.
  255. #if defined(__DMC__) || defined(__WATCOMC__) \
  256. || (defined(_MSC_VER) && _MSC_VER < 1200)
  257. #define wxUSE_STD_DEFAULT 0
  258. #else
  259. #define wxUSE_STD_DEFAULT 1
  260. #endif
  261. // Use standard C++ containers to implement wxVector<>, wxStack<>, wxDList<>
  262. // and wxHashXXX<> classes. If disabled, wxWidgets own (mostly compatible but
  263. // usually more limited) implementations are used which allows to avoid the
  264. // dependency on the C++ run-time library.
  265. //
  266. // Notice that the compilers mentioned in wxUSE_STD_DEFAULT comment above don't
  267. // support using standard containers and that VC6 needs non-default options for
  268. // such build to avoid getting "fatal error C1076: compiler limit : internal
  269. // heap limit reached; use /Zm to specify a higher limit" in its own standard
  270. // headers, so you need to ensure you do increase the heap size before enabling
  271. // this option for this compiler.
  272. //
  273. // Default is 0 for compatibility reasons.
  274. //
  275. // Recommended setting: 1 unless compatibility with the official wxWidgets
  276. // build and/or the existing code is a concern.
  277. #define wxUSE_STD_CONTAINERS 0
  278. // Use standard C++ streams if 1 instead of wx streams in some places. If
  279. // disabled, wx streams are used everywhere and wxWidgets doesn't depend on the
  280. // standard streams library.
  281. //
  282. // Notice that enabling this does not replace wx streams with std streams
  283. // everywhere, in a lot of places wx streams are used no matter what.
  284. //
  285. // Default is 1 if compiler supports it.
  286. //
  287. // Recommended setting: 1 if you use the standard streams anyhow and so
  288. // dependency on the standard streams library is not a
  289. // problem
  290. #define wxUSE_STD_IOSTREAM wxUSE_STD_DEFAULT
  291. // Enable minimal interoperability with the standard C++ string class if 1.
  292. // "Minimal" means that wxString can be constructed from std::string or
  293. // std::wstring but can't be implicitly converted to them. You need to enable
  294. // the option below for the latter.
  295. //
  296. // Default is 1 for most compilers.
  297. //
  298. // Recommended setting: 1 unless you want to ensure your program doesn't use
  299. // the standard C++ library at all.
  300. #define wxUSE_STD_STRING wxUSE_STD_DEFAULT
  301. // Make wxString as much interchangeable with std::[w]string as possible, in
  302. // particular allow implicit conversion of wxString to either of these classes.
  303. // This comes at a price (or a benefit, depending on your point of view) of not
  304. // allowing implicit conversion to "const char *" and "const wchar_t *".
  305. //
  306. // Because a lot of existing code relies on these conversions, this option is
  307. // disabled by default but can be enabled for your build if you don't care
  308. // about compatibility.
  309. //
  310. // Default is 0 if wxUSE_STL has its default value or 1 if it is enabled.
  311. //
  312. // Recommended setting: 0 to remain compatible with the official builds of
  313. // wxWidgets.
  314. #define wxUSE_STD_STRING_CONV_IN_WXSTRING wxUSE_STL
  315. // VC++ 4.2 and above allows <iostream> and <iostream.h> but you can't mix
  316. // them. Set this option to 1 to use <iostream.h>, 0 to use <iostream>.
  317. //
  318. // Note that newer compilers (including VC++ 7.1 and later) don't support
  319. // wxUSE_IOSTREAMH == 1 and so <iostream> will be used anyhow.
  320. //
  321. // Default is 0.
  322. //
  323. // Recommended setting: 0, only set to 1 if you use a really old compiler
  324. #define wxUSE_IOSTREAMH 0
  325. // ----------------------------------------------------------------------------
  326. // non GUI features selection
  327. // ----------------------------------------------------------------------------
  328. // Set wxUSE_LONGLONG to 1 to compile the wxLongLong class. This is a 64 bit
  329. // integer which is implemented in terms of native 64 bit integers if any or
  330. // uses emulation otherwise.
  331. //
  332. // This class is required by wxDateTime and so you should enable it if you want
  333. // to use wxDateTime. For most modern platforms, it will use the native 64 bit
  334. // integers in which case (almost) all of its functions are inline and it
  335. // almost does not take any space, so there should be no reason to switch it
  336. // off.
  337. //
  338. // Recommended setting: 1
  339. #define wxUSE_LONGLONG 1
  340. // Set wxUSE_BASE64 to 1, to compile in Base64 support. This is required for
  341. // storing binary data in wxConfig on most platforms.
  342. //
  343. // Default is 1.
  344. //
  345. // Recommended setting: 1 (but can be safely disabled if you don't use it)
  346. #define wxUSE_BASE64 1
  347. // Set this to 1 to be able to use wxEventLoop even in console applications
  348. // (i.e. using base library only, without GUI). This is mostly useful for
  349. // processing socket events but is also necessary to use timers in console
  350. // applications
  351. //
  352. // Default is 1.
  353. //
  354. // Recommended setting: 1 (but can be safely disabled if you don't use it)
  355. #define wxUSE_CONSOLE_EVENTLOOP 1
  356. // Set wxUSE_(F)FILE to 1 to compile wx(F)File classes. wxFile uses low level
  357. // POSIX functions for file access, wxFFile uses ANSI C stdio.h functions.
  358. //
  359. // Default is 1
  360. //
  361. // Recommended setting: 1 (wxFile is highly recommended as it is required by
  362. // i18n code, wxFileConfig and others)
  363. #define wxUSE_FILE 1
  364. #define wxUSE_FFILE 1
  365. // Use wxFSVolume class providing access to the configured/active mount points
  366. //
  367. // Default is 1
  368. //
  369. // Recommended setting: 1 (but may be safely disabled if you don't use it)
  370. #define wxUSE_FSVOLUME 1
  371. // Use wxStandardPaths class which allows to retrieve some standard locations
  372. // in the file system
  373. //
  374. // Default is 1
  375. //
  376. // Recommended setting: 1 (may be disabled to save space, but not much)
  377. #define wxUSE_STDPATHS 1
  378. // use wxTextBuffer class: required by wxTextFile
  379. #define wxUSE_TEXTBUFFER 1
  380. // use wxTextFile class: requires wxFile and wxTextBuffer, required by
  381. // wxFileConfig
  382. #define wxUSE_TEXTFILE 1
  383. // i18n support: _() macro, wxLocale class. Requires wxTextFile.
  384. #define wxUSE_INTL 1
  385. // Provide wxFoo_l() functions similar to standard foo() functions but taking
  386. // an extra locale parameter.
  387. //
  388. // Notice that this is fully implemented only for the systems providing POSIX
  389. // xlocale support or Microsoft Visual C++ >= 8 (which provides proprietary
  390. // almost-equivalent of xlocale functions), otherwise wxFoo_l() functions will
  391. // only work for the current user locale and "C" locale. You can use
  392. // wxHAS_XLOCALE_SUPPORT to test whether the full support is available.
  393. //
  394. // Default is 1
  395. //
  396. // Recommended setting: 1 but may be disabled if you are writing programs
  397. // running only in C locale anyhow
  398. #define wxUSE_XLOCALE 1
  399. // Set wxUSE_DATETIME to 1 to compile the wxDateTime and related classes which
  400. // allow to manipulate dates, times and time intervals. wxDateTime replaces the
  401. // old wxTime and wxDate classes which are still provided for backwards
  402. // compatibility (and implemented in terms of wxDateTime).
  403. //
  404. // Note that this class is relatively new and is still officially in alpha
  405. // stage because some features are not yet (fully) implemented. It is already
  406. // quite useful though and should only be disabled if you are aiming at
  407. // absolutely minimal version of the library.
  408. //
  409. // Requires: wxUSE_LONGLONG
  410. //
  411. // Default is 1
  412. //
  413. // Recommended setting: 1
  414. #define wxUSE_DATETIME 1
  415. // Set wxUSE_TIMER to 1 to compile wxTimer class
  416. //
  417. // Default is 1
  418. //
  419. // Recommended setting: 1
  420. #define wxUSE_TIMER 1
  421. // Use wxStopWatch clas.
  422. //
  423. // Default is 1
  424. //
  425. // Recommended setting: 1 (needed by wxSocket)
  426. #define wxUSE_STOPWATCH 1
  427. // Set wxUSE_FSWATCHER to 1 if you want to enable wxFileSystemWatcher
  428. //
  429. // Default is 1
  430. //
  431. // Recommended setting: 1
  432. #define wxUSE_FSWATCHER 1
  433. // Setting wxUSE_CONFIG to 1 enables the use of wxConfig and related classes
  434. // which allow the application to store its settings in the persistent
  435. // storage. Setting this to 1 will also enable on-demand creation of the
  436. // global config object in wxApp.
  437. //
  438. // See also wxUSE_CONFIG_NATIVE below.
  439. //
  440. // Recommended setting: 1
  441. #define wxUSE_CONFIG 1
  442. // If wxUSE_CONFIG is 1, you may choose to use either the native config
  443. // classes under Windows (using .INI files under Win16 and the registry under
  444. // Win32) or the portable text file format used by the config classes under
  445. // Unix.
  446. //
  447. // Default is 1 to use native classes. Note that you may still use
  448. // wxFileConfig even if you set this to 1 - just the config object created by
  449. // default for the applications needs will be a wxRegConfig or wxIniConfig and
  450. // not wxFileConfig.
  451. //
  452. // Recommended setting: 1
  453. #define wxUSE_CONFIG_NATIVE 1
  454. // If wxUSE_DIALUP_MANAGER is 1, compile in wxDialUpManager class which allows
  455. // to connect/disconnect from the network and be notified whenever the dial-up
  456. // network connection is established/terminated. Requires wxUSE_DYNAMIC_LOADER.
  457. //
  458. // Default is 1.
  459. //
  460. // Recommended setting: 1
  461. #define wxUSE_DIALUP_MANAGER 1
  462. // Compile in classes for run-time DLL loading and function calling.
  463. // Required by wxUSE_DIALUP_MANAGER.
  464. //
  465. // This setting is for Win32 only
  466. //
  467. // Default is 1.
  468. //
  469. // Recommended setting: 1
  470. #define wxUSE_DYNLIB_CLASS 1
  471. // experimental, don't use for now
  472. #define wxUSE_DYNAMIC_LOADER 1
  473. // Set to 1 to use socket classes
  474. #define wxUSE_SOCKETS 1
  475. // Set to 1 to use ipv6 socket classes (requires wxUSE_SOCKETS)
  476. //
  477. // Notice that currently setting this option under Windows will result in
  478. // programs which can only run on recent OS versions (with ws2_32.dll
  479. // installed) which is why it is disabled by default.
  480. //
  481. // Default is 1.
  482. //
  483. // Recommended setting: 1 if you need IPv6 support
  484. #define wxUSE_IPV6 0
  485. // Set to 1 to enable virtual file systems (required by wxHTML)
  486. #define wxUSE_FILESYSTEM 1
  487. // Set to 1 to enable virtual ZIP filesystem (requires wxUSE_FILESYSTEM)
  488. #define wxUSE_FS_ZIP 1
  489. // Set to 1 to enable virtual archive filesystem (requires wxUSE_FILESYSTEM)
  490. #define wxUSE_FS_ARCHIVE 1
  491. // Set to 1 to enable virtual Internet filesystem (requires wxUSE_FILESYSTEM)
  492. #define wxUSE_FS_INET 1
  493. // wxArchive classes for accessing archives such as zip and tar
  494. #define wxUSE_ARCHIVE_STREAMS 1
  495. // Set to 1 to compile wxZipInput/OutputStream classes.
  496. #define wxUSE_ZIPSTREAM 1
  497. // Set to 1 to compile wxTarInput/OutputStream classes.
  498. #define wxUSE_TARSTREAM 1
  499. // Set to 1 to compile wxZlibInput/OutputStream classes. Also required by
  500. // wxUSE_LIBPNG
  501. #define wxUSE_ZLIB 1
  502. // If enabled, the code written by Apple will be used to write, in a portable
  503. // way, float on the disk. See extended.c for the license which is different
  504. // from wxWidgets one.
  505. //
  506. // Default is 1.
  507. //
  508. // Recommended setting: 1 unless you don't like the license terms (unlikely)
  509. #define wxUSE_APPLE_IEEE 1
  510. // Joystick support class
  511. #define wxUSE_JOYSTICK 1
  512. // wxFontEnumerator class
  513. #define wxUSE_FONTENUM 1
  514. // wxFontMapper class
  515. #define wxUSE_FONTMAP 1
  516. // wxMimeTypesManager class
  517. #define wxUSE_MIMETYPE 1
  518. // wxProtocol and related classes: if you want to use either of wxFTP, wxHTTP
  519. // or wxURL you need to set this to 1.
  520. //
  521. // Default is 1.
  522. //
  523. // Recommended setting: 1
  524. #define wxUSE_PROTOCOL 1
  525. // The settings for the individual URL schemes
  526. #define wxUSE_PROTOCOL_FILE 1
  527. #define wxUSE_PROTOCOL_FTP 1
  528. #define wxUSE_PROTOCOL_HTTP 1
  529. // Define this to use wxURL class.
  530. #define wxUSE_URL 1
  531. // Define this to use native platform url and protocol support.
  532. // Currently valid only for MS-Windows.
  533. // Note: if you set this to 1, you can open ftp/http/gopher sites
  534. // and obtain a valid input stream for these sites
  535. // even when you set wxUSE_PROTOCOL_FTP/HTTP to 0.
  536. // Doing so reduces the code size.
  537. //
  538. // This code is experimental and subject to change.
  539. #define wxUSE_URL_NATIVE 0
  540. // Support for wxVariant class used in several places throughout the library,
  541. // notably in wxDataViewCtrl API.
  542. //
  543. // Default is 1.
  544. //
  545. // Recommended setting: 1 unless you want to reduce the library size as much as
  546. // possible in which case setting this to 0 can gain up to 100KB.
  547. #define wxUSE_VARIANT 1
  548. // Support for wxAny class, the successor for wxVariant.
  549. //
  550. // Default is 1.
  551. //
  552. // Recommended setting: 1 unless you want to reduce the library size by a small amount,
  553. // or your compiler cannot for some reason cope with complexity of templates used.
  554. #define wxUSE_ANY 1
  555. // Support for regular expression matching via wxRegEx class: enable this to
  556. // use POSIX regular expressions in your code. You need to compile regex
  557. // library from src/regex to use it under Windows.
  558. //
  559. // Default is 0
  560. //
  561. // Recommended setting: 1 if your compiler supports it, if it doesn't please
  562. // contribute us a makefile for src/regex for it
  563. #define wxUSE_REGEX 1
  564. // wxSystemOptions class
  565. #define wxUSE_SYSTEM_OPTIONS 1
  566. // wxSound class
  567. #define wxUSE_SOUND 1
  568. // Use wxMediaCtrl
  569. //
  570. // Default is 1.
  571. //
  572. // Recommended setting: 1
  573. #define wxUSE_MEDIACTRL 1
  574. // Use wxWidget's XRC XML-based resource system. Recommended.
  575. //
  576. // Default is 1
  577. //
  578. // Recommended setting: 1 (requires wxUSE_XML)
  579. #define wxUSE_XRC 1
  580. // XML parsing classes. Note that their API will change in the future, so
  581. // using wxXmlDocument and wxXmlNode in your app is not recommended.
  582. //
  583. // Default is the same as wxUSE_XRC, i.e. 1 by default.
  584. //
  585. // Recommended setting: 1 (required by XRC)
  586. #define wxUSE_XML wxUSE_XRC
  587. // Use wxWidget's AUI docking system
  588. //
  589. // Default is 1
  590. //
  591. // Recommended setting: 1
  592. #define wxUSE_AUI 1
  593. // Use wxWidget's Ribbon classes for interfaces
  594. //
  595. // Default is 1
  596. //
  597. // Recommended setting: 1
  598. #define wxUSE_RIBBON 1
  599. // Use wxPropertyGrid.
  600. //
  601. // Default is 1
  602. //
  603. // Recommended setting: 1
  604. #define wxUSE_PROPGRID 1
  605. // Use wxStyledTextCtrl, a wxWidgets implementation of Scintilla.
  606. //
  607. // Default is 1
  608. //
  609. // Recommended setting: 1
  610. #define wxUSE_STC 1
  611. // Use wxWidget's web viewing classes
  612. //
  613. // Default is 1
  614. //
  615. // Recommended setting: 1
  616. #define wxUSE_WEBVIEW 1
  617. // Use the IE wxWebView backend
  618. //
  619. // Default is 1 on MSW
  620. //
  621. // Recommended setting: 1
  622. #ifdef __WXMSW__
  623. #define wxUSE_WEBVIEW_IE 1
  624. #else
  625. #define wxUSE_WEBVIEW_IE 0
  626. #endif
  627. // Use the WebKit wxWebView backend
  628. //
  629. // Default is 1 on GTK and OSX
  630. //
  631. // Recommended setting: 1
  632. #if defined(__WXGTK__) || defined(__WXOSX__)
  633. #define wxUSE_WEBVIEW_WEBKIT 1
  634. #else
  635. #define wxUSE_WEBVIEW_WEBKIT 0
  636. #endif
  637. // Enable the new wxGraphicsPath and wxGraphicsContext classes for an advanced
  638. // 2D drawing API. (Still somewhat experimental)
  639. //
  640. // Please note that on Windows gdiplus.dll is loaded dynamically which means
  641. // that nothing special needs to be done as long as you don't use
  642. // wxGraphicsContext at all or only use it on XP and later systems but you
  643. // still do need to distribute it yourself for an application using
  644. // wxGraphicsContext to be runnable on pre-XP systems.
  645. //
  646. // Default is 1 except if you're using a non-Microsoft compiler under Windows
  647. // as only MSVC7+ is known to ship with gdiplus.h. For other compilers (e.g.
  648. // mingw32) you may need to install the headers (and just the headers)
  649. // yourself. If you do, change the setting below manually.
  650. //
  651. // Recommended setting: 1 if supported by the compilation environment
  652. // notice that we can't use wxCHECK_VISUALC_VERSION() here as this file is
  653. // included from wx/platform.h before wxCHECK_VISUALC_VERSION() is defined
  654. #ifdef _MSC_VER
  655. # if _MSC_VER >= 1310
  656. // MSVC7.1+ comes with new enough Platform SDK, enable
  657. // wxGraphicsContext support for it
  658. # define wxUSE_GRAPHICS_CONTEXT 1
  659. # else
  660. // MSVC 6 didn't include GDI+ headers so disable by default, enable it
  661. // here if you use MSVC 6 with a newer SDK
  662. # define wxUSE_GRAPHICS_CONTEXT 0
  663. # endif
  664. #else
  665. // Disable support for other Windows compilers, enable it if your compiler
  666. // comes with new enough SDK or you installed the headers manually.
  667. //
  668. // Notice that this will be set by configure under non-Windows platforms
  669. // anyhow so the value there is not important.
  670. # define wxUSE_GRAPHICS_CONTEXT 0
  671. #endif
  672. // Enable wxGraphicsContext implementation using Cairo library.
  673. //
  674. // This is not needed under Windows and detected automatically by configure
  675. // under other systems, however you may set this to 1 manually if you installed
  676. // Cairo under Windows yourself and prefer to use it instead the native GDI+
  677. // implementation.
  678. //
  679. // Default is 0
  680. //
  681. // Recommended setting: 0
  682. #define wxUSE_CAIRO 0
  683. // ----------------------------------------------------------------------------
  684. // Individual GUI controls
  685. // ----------------------------------------------------------------------------
  686. // You must set wxUSE_CONTROLS to 1 if you are using any controls at all
  687. // (without it, wxControl class is not compiled)
  688. //
  689. // Default is 1
  690. //
  691. // Recommended setting: 1 (don't change except for very special programs)
  692. #define wxUSE_CONTROLS 1
  693. // Support markup in control labels, i.e. provide wxControl::SetLabelMarkup().
  694. // Currently markup is supported only by a few controls and only some ports but
  695. // their number will increase with time.
  696. //
  697. // Default is 1
  698. //
  699. // Recommended setting: 1 (may be set to 0 if you want to save on code size)
  700. #define wxUSE_MARKUP 1
  701. // wxPopupWindow class is a top level transient window. It is currently used
  702. // to implement wxTipWindow
  703. //
  704. // Default is 1
  705. //
  706. // Recommended setting: 1 (may be set to 0 if you don't wxUSE_TIPWINDOW)
  707. #define wxUSE_POPUPWIN 1
  708. // wxTipWindow allows to implement the custom tooltips, it is used by the
  709. // context help classes. Requires wxUSE_POPUPWIN.
  710. //
  711. // Default is 1
  712. //
  713. // Recommended setting: 1 (may be set to 0)
  714. #define wxUSE_TIPWINDOW 1
  715. // Each of the settings below corresponds to one wxWidgets control. They are
  716. // all switched on by default but may be disabled if you are sure that your
  717. // program (including any standard dialogs it can show!) doesn't need them and
  718. // if you desperately want to save some space. If you use any of these you must
  719. // set wxUSE_CONTROLS as well.
  720. //
  721. // Default is 1
  722. //
  723. // Recommended setting: 1
  724. #define wxUSE_ANIMATIONCTRL 1 // wxAnimationCtrl
  725. #define wxUSE_BANNERWINDOW 1 // wxBannerWindow
  726. #define wxUSE_BUTTON 1 // wxButton
  727. #define wxUSE_BMPBUTTON 1 // wxBitmapButton
  728. #define wxUSE_CALENDARCTRL 1 // wxCalendarCtrl
  729. #define wxUSE_CHECKBOX 1 // wxCheckBox
  730. #define wxUSE_CHECKLISTBOX 1 // wxCheckListBox (requires wxUSE_OWNER_DRAWN)
  731. #define wxUSE_CHOICE 1 // wxChoice
  732. #define wxUSE_COLLPANE 1 // wxCollapsiblePane
  733. #define wxUSE_COLOURPICKERCTRL 1 // wxColourPickerCtrl
  734. #define wxUSE_COMBOBOX 1 // wxComboBox
  735. #define wxUSE_COMMANDLINKBUTTON 1 // wxCommandLinkButton
  736. #define wxUSE_DATAVIEWCTRL 1 // wxDataViewCtrl
  737. #define wxUSE_DATEPICKCTRL 1 // wxDatePickerCtrl
  738. #define wxUSE_DIRPICKERCTRL 1 // wxDirPickerCtrl
  739. #define wxUSE_EDITABLELISTBOX 1 // wxEditableListBox
  740. #define wxUSE_FILECTRL 1 // wxFileCtrl
  741. #define wxUSE_FILEPICKERCTRL 1 // wxFilePickerCtrl
  742. #define wxUSE_FONTPICKERCTRL 1 // wxFontPickerCtrl
  743. #define wxUSE_GAUGE 1 // wxGauge
  744. #define wxUSE_HEADERCTRL 1 // wxHeaderCtrl
  745. #define wxUSE_HYPERLINKCTRL 1 // wxHyperlinkCtrl
  746. #define wxUSE_LISTBOX 1 // wxListBox
  747. #define wxUSE_LISTCTRL 1 // wxListCtrl
  748. #define wxUSE_RADIOBOX 1 // wxRadioBox
  749. #define wxUSE_RADIOBTN 1 // wxRadioButton
  750. #define wxUSE_RICHMSGDLG 1 // wxRichMessageDialog
  751. #define wxUSE_SCROLLBAR 1 // wxScrollBar
  752. #define wxUSE_SEARCHCTRL 1 // wxSearchCtrl
  753. #define wxUSE_SLIDER 1 // wxSlider
  754. #define wxUSE_SPINBTN 1 // wxSpinButton
  755. #define wxUSE_SPINCTRL 1 // wxSpinCtrl
  756. #define wxUSE_STATBOX 1 // wxStaticBox
  757. #define wxUSE_STATLINE 1 // wxStaticLine
  758. #define wxUSE_STATTEXT 1 // wxStaticText
  759. #define wxUSE_STATBMP 1 // wxStaticBitmap
  760. #define wxUSE_TEXTCTRL 1 // wxTextCtrl
  761. #define wxUSE_TIMEPICKCTRL 1 // wxTimePickerCtrl
  762. #define wxUSE_TOGGLEBTN 1 // requires wxButton
  763. #define wxUSE_TREECTRL 1 // wxTreeCtrl
  764. #define wxUSE_TREELISTCTRL 1 // wxTreeListCtrl
  765. // Use a status bar class? Depending on the value of wxUSE_NATIVE_STATUSBAR
  766. // below either wxStatusBar95 or a generic wxStatusBar will be used.
  767. //
  768. // Default is 1
  769. //
  770. // Recommended setting: 1
  771. #define wxUSE_STATUSBAR 1
  772. // Two status bar implementations are available under Win32: the generic one
  773. // or the wrapper around native control. For native look and feel the native
  774. // version should be used.
  775. //
  776. // Default is 1 for the platforms where native status bar is supported.
  777. //
  778. // Recommended setting: 1 (there is no advantage in using the generic one)
  779. #define wxUSE_NATIVE_STATUSBAR 1
  780. // wxToolBar related settings: if wxUSE_TOOLBAR is 0, don't compile any toolbar
  781. // classes at all. Otherwise, use the native toolbar class unless
  782. // wxUSE_TOOLBAR_NATIVE is 0.
  783. //
  784. // Default is 1 for all settings.
  785. //
  786. // Recommended setting: 1 for wxUSE_TOOLBAR and wxUSE_TOOLBAR_NATIVE.
  787. #define wxUSE_TOOLBAR 1
  788. #define wxUSE_TOOLBAR_NATIVE 1
  789. // wxNotebook is a control with several "tabs" located on one of its sides. It
  790. // may be used to logically organise the data presented to the user instead of
  791. // putting everything in one huge dialog. It replaces wxTabControl and related
  792. // classes of wxWin 1.6x.
  793. //
  794. // Default is 1.
  795. //
  796. // Recommended setting: 1
  797. #define wxUSE_NOTEBOOK 1
  798. // wxListbook control is similar to wxNotebook but uses wxListCtrl instead of
  799. // the tabs
  800. //
  801. // Default is 1.
  802. //
  803. // Recommended setting: 1
  804. #define wxUSE_LISTBOOK 1
  805. // wxChoicebook control is similar to wxNotebook but uses wxChoice instead of
  806. // the tabs
  807. //
  808. // Default is 1.
  809. //
  810. // Recommended setting: 1
  811. #define wxUSE_CHOICEBOOK 1
  812. // wxTreebook control is similar to wxNotebook but uses wxTreeCtrl instead of
  813. // the tabs
  814. //
  815. // Default is 1.
  816. //
  817. // Recommended setting: 1
  818. #define wxUSE_TREEBOOK 1
  819. // wxToolbook control is similar to wxNotebook but uses wxToolBar instead of
  820. // tabs
  821. //
  822. // Default is 1.
  823. //
  824. // Recommended setting: 1
  825. #define wxUSE_TOOLBOOK 1
  826. // wxTaskBarIcon is a small notification icon shown in the system toolbar or
  827. // dock.
  828. //
  829. // Default is 1.
  830. //
  831. // Recommended setting: 1 (but can be set to 0 if you don't need it)
  832. #define wxUSE_TASKBARICON 1
  833. // wxGrid class
  834. //
  835. // Default is 1, set to 0 to cut down compilation time and binaries size if you
  836. // don't use it.
  837. //
  838. // Recommended setting: 1
  839. //
  840. #define wxUSE_GRID 1
  841. // wxMiniFrame class: a frame with narrow title bar
  842. //
  843. // Default is 1.
  844. //
  845. // Recommended setting: 1 (it doesn't cost almost anything)
  846. #define wxUSE_MINIFRAME 1
  847. // wxComboCtrl and related classes: combobox with custom popup window and
  848. // not necessarily a listbox.
  849. //
  850. // Default is 1.
  851. //
  852. // Recommended setting: 1 but can be safely set to 0 except for wxUniv where it
  853. // it used by wxComboBox
  854. #define wxUSE_COMBOCTRL 1
  855. // wxOwnerDrawnComboBox is a custom combobox allowing to paint the combobox
  856. // items.
  857. //
  858. // Default is 1.
  859. //
  860. // Recommended setting: 1 but can be safely set to 0, except where it is
  861. // needed as a base class for generic wxBitmapComboBox.
  862. #define wxUSE_ODCOMBOBOX 1
  863. // wxBitmapComboBox is a combobox that can have images in front of text items.
  864. //
  865. // Default is 1.
  866. //
  867. // Recommended setting: 1 but can be safely set to 0
  868. #define wxUSE_BITMAPCOMBOBOX 1
  869. // wxRearrangeCtrl is a wxCheckListBox with two buttons allowing to move items
  870. // up and down in it. It is also used as part of wxRearrangeDialog.
  871. //
  872. // Default is 1.
  873. //
  874. // Recommended setting: 1 but can be safely set to 0 (currently used only by
  875. // wxHeaderCtrl)
  876. #define wxUSE_REARRANGECTRL 1
  877. // ----------------------------------------------------------------------------
  878. // Miscellaneous GUI stuff
  879. // ----------------------------------------------------------------------------
  880. // wxAcceleratorTable/Entry classes and support for them in wxMenu(Bar)
  881. #define wxUSE_ACCEL 1
  882. // Use the standard art provider. The icons returned by this provider are
  883. // embedded into the library as XPMs so disabling it reduces the library size
  884. // somewhat but this should only be done if you use your own custom art
  885. // provider returning the icons or never use any icons not provided by the
  886. // native art provider (which might not be implemented at all for some
  887. // platforms) or by the Tango icons provider (if it's not itself disabled
  888. // below).
  889. //
  890. // Default is 1.
  891. //
  892. // Recommended setting: 1 unless you use your own custom art provider.
  893. #define wxUSE_ARTPROVIDER_STD 1
  894. // Use art provider providing Tango icons: this art provider has higher quality
  895. // icons than the default ones using smaller size XPM icons without
  896. // transparency but the embedded PNG icons add to the library size.
  897. //
  898. // Default is 1 under non-GTK ports. Under wxGTK the native art provider using
  899. // the GTK+ stock icons replaces it so it is normally not necessary.
  900. //
  901. // Recommended setting: 1 but can be turned off to reduce the library size.
  902. #define wxUSE_ARTPROVIDER_TANGO 1
  903. // Hotkey support (currently Windows only)
  904. #define wxUSE_HOTKEY 1
  905. // Use wxCaret: a class implementing a "cursor" in a text control (called caret
  906. // under Windows).
  907. //
  908. // Default is 1.
  909. //
  910. // Recommended setting: 1 (can be safely set to 0, not used by the library)
  911. #define wxUSE_CARET 1
  912. // Use wxDisplay class: it allows enumerating all displays on a system and
  913. // their geometries as well as finding the display on which the given point or
  914. // window lies.
  915. //
  916. // Default is 1.
  917. //
  918. // Recommended setting: 1 if you need it, can be safely set to 0 otherwise
  919. #define wxUSE_DISPLAY 1
  920. // Miscellaneous geometry code: needed for Canvas library
  921. #define wxUSE_GEOMETRY 1
  922. // Use wxImageList. This class is needed by wxNotebook, wxTreeCtrl and
  923. // wxListCtrl.
  924. //
  925. // Default is 1.
  926. //
  927. // Recommended setting: 1 (set it to 0 if you don't use any of the controls
  928. // enumerated above, then this class is mostly useless too)
  929. #define wxUSE_IMAGLIST 1
  930. // Use wxInfoBar class.
  931. //
  932. // Default is 1.
  933. //
  934. // Recommended setting: 1 (but can be disabled without problems as nothing
  935. // depends on it)
  936. #define wxUSE_INFOBAR 1
  937. // Use wxMenu, wxMenuBar, wxMenuItem.
  938. //
  939. // Default is 1.
  940. //
  941. // Recommended setting: 1 (can't be disabled under MSW)
  942. #define wxUSE_MENUS 1
  943. // Use wxNotificationMessage.
  944. //
  945. // wxNotificationMessage allows to show non-intrusive messages to the user
  946. // using balloons, banners, popups or whatever is the appropriate method for
  947. // the current platform.
  948. //
  949. // Default is 1.
  950. //
  951. // Recommended setting: 1
  952. #define wxUSE_NOTIFICATION_MESSAGE 1
  953. // wxRichToolTip is a customizable tooltip class which has more functionality
  954. // than the stock (but native, unlike this class) wxToolTip.
  955. //
  956. // Default is 1.
  957. //
  958. // Recommended setting: 1 (but can be safely set to 0 if you don't need it)
  959. #define wxUSE_RICHTOOLTIP 1
  960. // Use wxSashWindow class.
  961. //
  962. // Default is 1.
  963. //
  964. // Recommended setting: 1
  965. #define wxUSE_SASH 1
  966. // Use wxSplitterWindow class.
  967. //
  968. // Default is 1.
  969. //
  970. // Recommended setting: 1
  971. #define wxUSE_SPLITTER 1
  972. // Use wxToolTip and wxWindow::Set/GetToolTip() methods.
  973. //
  974. // Default is 1.
  975. //
  976. // Recommended setting: 1
  977. #define wxUSE_TOOLTIPS 1
  978. // wxValidator class and related methods
  979. #define wxUSE_VALIDATORS 1
  980. // Use reference counted ID management: this means that wxWidgets will track
  981. // the automatically allocated ids (those used when you use wxID_ANY when
  982. // creating a window, menu or toolbar item &c) instead of just supposing that
  983. // the program never runs out of them. This is mostly useful only under wxMSW
  984. // where the total ids range is limited to SHRT_MIN..SHRT_MAX and where
  985. // long-running programs can run into problems with ids reuse without this. On
  986. // the other platforms, where the ids have the full int range, this shouldn't
  987. // be necessary.
  988. #ifdef __WXMSW__
  989. #define wxUSE_AUTOID_MANAGEMENT 1
  990. #else
  991. #define wxUSE_AUTOID_MANAGEMENT 0
  992. #endif
  993. // ----------------------------------------------------------------------------
  994. // common dialogs
  995. // ----------------------------------------------------------------------------
  996. // On rare occasions (e.g. using DJGPP) may want to omit common dialogs (e.g.
  997. // file selector, printer dialog). Switching this off also switches off the
  998. // printing architecture and interactive wxPrinterDC.
  999. //
  1000. // Default is 1
  1001. //
  1002. // Recommended setting: 1 (unless it really doesn't work)
  1003. #define wxUSE_COMMON_DIALOGS 1
  1004. // wxBusyInfo displays window with message when app is busy. Works in same way
  1005. // as wxBusyCursor
  1006. #define wxUSE_BUSYINFO 1
  1007. // Use single/multiple choice dialogs.
  1008. //
  1009. // Default is 1
  1010. //
  1011. // Recommended setting: 1 (used in the library itself)
  1012. #define wxUSE_CHOICEDLG 1
  1013. // Use colour picker dialog
  1014. //
  1015. // Default is 1
  1016. //
  1017. // Recommended setting: 1
  1018. #define wxUSE_COLOURDLG 1
  1019. // wxDirDlg class for getting a directory name from user
  1020. #define wxUSE_DIRDLG 1
  1021. // TODO: setting to choose the generic or native one
  1022. // Use file open/save dialogs.
  1023. //
  1024. // Default is 1
  1025. //
  1026. // Recommended setting: 1 (used in many places in the library itself)
  1027. #define wxUSE_FILEDLG 1
  1028. // Use find/replace dialogs.
  1029. //
  1030. // Default is 1
  1031. //
  1032. // Recommended setting: 1 (but may be safely set to 0)
  1033. #define wxUSE_FINDREPLDLG 1
  1034. // Use font picker dialog
  1035. //
  1036. // Default is 1
  1037. //
  1038. // Recommended setting: 1 (used in the library itself)
  1039. #define wxUSE_FONTDLG 1
  1040. // Use wxMessageDialog and wxMessageBox.
  1041. //
  1042. // Default is 1
  1043. //
  1044. // Recommended setting: 1 (used in the library itself)
  1045. #define wxUSE_MSGDLG 1
  1046. // progress dialog class for lengthy operations
  1047. #define wxUSE_PROGRESSDLG 1
  1048. // support for startup tips (wxShowTip &c)
  1049. #define wxUSE_STARTUP_TIPS 1
  1050. // text entry dialog and wxGetTextFromUser function
  1051. #define wxUSE_TEXTDLG 1
  1052. // number entry dialog
  1053. #define wxUSE_NUMBERDLG 1
  1054. // splash screen class
  1055. #define wxUSE_SPLASH 1
  1056. // wizards
  1057. #define wxUSE_WIZARDDLG 1
  1058. // Compile in wxAboutBox() function showing the standard "About" dialog.
  1059. //
  1060. // Default is 1
  1061. //
  1062. // Recommended setting: 1 but can be set to 0 to save some space if you don't
  1063. // use this function
  1064. #define wxUSE_ABOUTDLG 1
  1065. // wxFileHistory class
  1066. //
  1067. // Default is 1
  1068. //
  1069. // Recommended setting: 1
  1070. #define wxUSE_FILE_HISTORY 1
  1071. // ----------------------------------------------------------------------------
  1072. // Metafiles support
  1073. // ----------------------------------------------------------------------------
  1074. // Windows supports the graphics format known as metafile which is, though not
  1075. // portable, is widely used under Windows and so is supported by wxWin (under
  1076. // Windows only, of course). Win16 (Win3.1) used the so-called "Window
  1077. // MetaFiles" or WMFs which were replaced with "Enhanced MetaFiles" or EMFs in
  1078. // Win32 (Win9x, NT, 2000). Both of these are supported in wxWin and, by
  1079. // default, WMFs will be used under Win16 and EMFs under Win32. This may be
  1080. // changed by setting wxUSE_WIN_METAFILES_ALWAYS to 1 and/or setting
  1081. // wxUSE_ENH_METAFILE to 0. You may also set wxUSE_METAFILE to 0 to not compile
  1082. // in any metafile related classes at all.
  1083. //
  1084. // Default is 1 for wxUSE_ENH_METAFILE and 0 for wxUSE_WIN_METAFILES_ALWAYS.
  1085. //
  1086. // Recommended setting: default or 0 for everything for portable programs.
  1087. #define wxUSE_METAFILE 1
  1088. #define wxUSE_ENH_METAFILE 1
  1089. #define wxUSE_WIN_METAFILES_ALWAYS 0
  1090. // ----------------------------------------------------------------------------
  1091. // Big GUI components
  1092. // ----------------------------------------------------------------------------
  1093. // Set to 0 to disable MDI support.
  1094. //
  1095. // Requires wxUSE_NOTEBOOK under platforms other than MSW.
  1096. //
  1097. // Default is 1.
  1098. //
  1099. // Recommended setting: 1, can be safely set to 0.
  1100. #define wxUSE_MDI 1
  1101. // Set to 0 to disable document/view architecture
  1102. #define wxUSE_DOC_VIEW_ARCHITECTURE 1
  1103. // Set to 0 to disable MDI document/view architecture
  1104. //
  1105. // Requires wxUSE_MDI && wxUSE_DOC_VIEW_ARCHITECTURE
  1106. #define wxUSE_MDI_ARCHITECTURE 1
  1107. // Set to 0 to disable print/preview architecture code
  1108. #define wxUSE_PRINTING_ARCHITECTURE 1
  1109. // wxHTML sublibrary allows to display HTML in wxWindow programs and much,
  1110. // much more.
  1111. //
  1112. // Default is 1.
  1113. //
  1114. // Recommended setting: 1 (wxHTML is great!), set to 0 if you want compile a
  1115. // smaller library.
  1116. #define wxUSE_HTML 1
  1117. // Setting wxUSE_GLCANVAS to 1 enables OpenGL support. You need to have OpenGL
  1118. // headers and libraries to be able to compile the library with wxUSE_GLCANVAS
  1119. // set to 1 and, under Windows, also to add opengl32.lib and glu32.lib to the
  1120. // list of libraries used to link your application (although this is done
  1121. // implicitly for Microsoft Visual C++ users).
  1122. //
  1123. // Default is 1 unless the compiler is known to ship without the necessary
  1124. // headers (Digital Mars) or the platform doesn't support OpenGL (Windows CE).
  1125. //
  1126. // Recommended setting: 1 if you intend to use OpenGL, can be safely set to 0
  1127. // otherwise.
  1128. #define wxUSE_GLCANVAS 1
  1129. // wxRichTextCtrl allows editing of styled text.
  1130. //
  1131. // Default is 1.
  1132. //
  1133. // Recommended setting: 1, set to 0 if you want compile a
  1134. // smaller library.
  1135. #define wxUSE_RICHTEXT 1
  1136. // ----------------------------------------------------------------------------
  1137. // Data transfer
  1138. // ----------------------------------------------------------------------------
  1139. // Use wxClipboard class for clipboard copy/paste.
  1140. //
  1141. // Default is 1.
  1142. //
  1143. // Recommended setting: 1
  1144. #define wxUSE_CLIPBOARD 1
  1145. // Use wxDataObject and related classes. Needed for clipboard and OLE drag and
  1146. // drop
  1147. //
  1148. // Default is 1.
  1149. //
  1150. // Recommended setting: 1
  1151. #define wxUSE_DATAOBJ 1
  1152. // Use wxDropTarget and wxDropSource classes for drag and drop (this is
  1153. // different from "built in" drag and drop in wxTreeCtrl which is always
  1154. // available). Requires wxUSE_DATAOBJ.
  1155. //
  1156. // Default is 1.
  1157. //
  1158. // Recommended setting: 1
  1159. #define wxUSE_DRAG_AND_DROP 1
  1160. // Use wxAccessible for enhanced and customisable accessibility.
  1161. // Depends on wxUSE_OLE.
  1162. //
  1163. // Default is 0.
  1164. //
  1165. // Recommended setting (at present): 0
  1166. #define wxUSE_ACCESSIBILITY 0
  1167. // ----------------------------------------------------------------------------
  1168. // miscellaneous settings
  1169. // ----------------------------------------------------------------------------
  1170. // wxSingleInstanceChecker class allows to verify at startup if another program
  1171. // instance is running.
  1172. //
  1173. // Default is 1
  1174. //
  1175. // Recommended setting: 1 (the class is tiny, disabling it won't save much
  1176. // space)
  1177. #define wxUSE_SNGLINST_CHECKER 1
  1178. #define wxUSE_DRAGIMAGE 1
  1179. #define wxUSE_IPC 1
  1180. // 0 for no interprocess comms
  1181. #define wxUSE_HELP 0
  1182. // 0 for no help facility
  1183. // Should we use MS HTML help for wxHelpController? If disabled, neither
  1184. // wxCHMHelpController nor wxBestHelpController are available.
  1185. //
  1186. // Default is 1 under MSW, 0 is always used for the other platforms.
  1187. //
  1188. // Recommended setting: 1, only set to 0 if you have trouble compiling
  1189. // wxCHMHelpController (could be a problem with really ancient compilers)
  1190. #define wxUSE_MS_HTML_HELP 1
  1191. // Use wxHTML-based help controller?
  1192. #define wxUSE_WXHTML_HELP 1
  1193. #define wxUSE_CONSTRAINTS 1
  1194. // 0 for no window layout constraint system
  1195. #define wxUSE_SPLINES 1
  1196. // 0 for no splines
  1197. #define wxUSE_MOUSEWHEEL 1
  1198. // Include mouse wheel support
  1199. // Compile wxUIActionSimulator class?
  1200. #define wxUSE_UIACTIONSIMULATOR 1
  1201. // ----------------------------------------------------------------------------
  1202. // wxDC classes for various output formats
  1203. // ----------------------------------------------------------------------------
  1204. // Set to 1 for PostScript device context.
  1205. #define wxUSE_POSTSCRIPT 0
  1206. // Set to 1 to use font metric files in GetTextExtent
  1207. #define wxUSE_AFM_FOR_POSTSCRIPT 1
  1208. // Set to 1 to compile in support for wxSVGFileDC, a wxDC subclass which allows
  1209. // to create files in SVG (Scalable Vector Graphics) format.
  1210. #define wxUSE_SVG 1
  1211. // Should wxDC provide SetTransformMatrix() and related methods?
  1212. //
  1213. // Default is 1 but can be set to 0 if this functionality is not used. Notice
  1214. // that currently only wxMSW supports this so setting this to 0 doesn't change
  1215. // much for non-MSW platforms (although it will still save a few bytes
  1216. // probably).
  1217. //
  1218. // Recommended setting: 1.
  1219. #define wxUSE_DC_TRANSFORM_MATRIX 1
  1220. // ----------------------------------------------------------------------------
  1221. // image format support
  1222. // ----------------------------------------------------------------------------
  1223. // wxImage supports many different image formats which can be configured at
  1224. // compile-time. BMP is always supported, others are optional and can be safely
  1225. // disabled if you don't plan to use images in such format sometimes saving
  1226. // substantial amount of code in the final library.
  1227. //
  1228. // Some formats require an extra library which is included in wxWin sources
  1229. // which is mentioned if it is the case.
  1230. // Set to 1 for wxImage support (recommended).
  1231. #define wxUSE_IMAGE 1
  1232. // Set to 1 for PNG format support (requires libpng). Also requires wxUSE_ZLIB.
  1233. #define wxUSE_LIBPNG 1
  1234. // Set to 1 for JPEG format support (requires libjpeg)
  1235. #define wxUSE_LIBJPEG 1
  1236. // Set to 1 for TIFF format support (requires libtiff)
  1237. #define wxUSE_LIBTIFF 1
  1238. // Set to 1 for TGA format support (loading only)
  1239. #define wxUSE_TGA 1
  1240. // Set to 1 for GIF format support
  1241. #define wxUSE_GIF 1
  1242. // Set to 1 for PNM format support
  1243. #define wxUSE_PNM 1
  1244. // Set to 1 for PCX format support
  1245. #define wxUSE_PCX 1
  1246. // Set to 1 for IFF format support (Amiga format)
  1247. #define wxUSE_IFF 0
  1248. // Set to 1 for XPM format support
  1249. #define wxUSE_XPM 1
  1250. // Set to 1 for MS Icons and Cursors format support
  1251. #define wxUSE_ICO_CUR 1
  1252. // Set to 1 to compile in wxPalette class
  1253. #define wxUSE_PALETTE 1
  1254. // ----------------------------------------------------------------------------
  1255. // wxUniversal-only options
  1256. // ----------------------------------------------------------------------------
  1257. // Set to 1 to enable compilation of all themes, this is the default
  1258. #define wxUSE_ALL_THEMES 1
  1259. // Set to 1 to enable the compilation of individual theme if wxUSE_ALL_THEMES
  1260. // is unset, if it is set these options are not used; notice that metal theme
  1261. // uses Win32 one
  1262. #define wxUSE_THEME_GTK 0
  1263. #define wxUSE_THEME_METAL 0
  1264. #define wxUSE_THEME_MONO 0
  1265. #define wxUSE_THEME_WIN32 0
  1266. /* --- end common options --- */
  1267. /* --- start MSW options --- */
  1268. // ----------------------------------------------------------------------------
  1269. // Windows-only settings
  1270. // ----------------------------------------------------------------------------
  1271. // Set wxUSE_UNICODE_MSLU to 1 if you're compiling wxWidgets in Unicode mode
  1272. // and want to run your programs under Windows 9x and not only NT/2000/XP.
  1273. // This setting enables use of unicows.dll from MSLU (MS Layer for Unicode, see
  1274. // http://www.microsoft.com/globaldev/handson/dev/mslu_announce.mspx). Note
  1275. // that you will have to modify the makefiles to include unicows.lib import
  1276. // library as the first library (see installation instructions in install.txt
  1277. // to learn how to do it when building the library or samples).
  1278. //
  1279. // If your compiler doesn't have unicows.lib, you can get a version of it at
  1280. // http://libunicows.sourceforge.net
  1281. //
  1282. // Default is 0
  1283. //
  1284. // Recommended setting: 0 (1 if you want to deploy Unicode apps on 9x systems)
  1285. #ifndef wxUSE_UNICODE_MSLU
  1286. #define wxUSE_UNICODE_MSLU 0
  1287. #endif
  1288. // Set this to 1 if you want to use wxWidgets and MFC in the same program. This
  1289. // will override some other settings (see below)
  1290. //
  1291. // Default is 0.
  1292. //
  1293. // Recommended setting: 0 unless you really have to use MFC
  1294. #define wxUSE_MFC 0
  1295. // Set this to 1 for generic OLE support: this is required for drag-and-drop,
  1296. // clipboard, OLE Automation. Only set it to 0 if your compiler is very old and
  1297. // can't compile/doesn't have the OLE headers.
  1298. //
  1299. // Default is 1.
  1300. //
  1301. // Recommended setting: 1
  1302. #define wxUSE_OLE 1
  1303. // Set this to 1 to enable wxAutomationObject class.
  1304. //
  1305. // Default is 1.
  1306. //
  1307. // Recommended setting: 1 if you need to control other applications via OLE
  1308. // Automation, can be safely set to 0 otherwise
  1309. #define wxUSE_OLE_AUTOMATION 1
  1310. // Set this to 1 to enable wxActiveXContainer class allowing to embed OLE
  1311. // controls in wx.
  1312. //
  1313. // Default is 1.
  1314. //
  1315. // Recommended setting: 1, required by wxMediaCtrl
  1316. #define wxUSE_ACTIVEX 1
  1317. // wxDC caching implementation
  1318. #define wxUSE_DC_CACHEING 1
  1319. // Set this to 1 to enable wxDIB class used internally for manipulating
  1320. // wxBitmap data.
  1321. //
  1322. // Default is 1, set it to 0 only if you don't use wxImage neither
  1323. //
  1324. // Recommended setting: 1 (without it conversion to/from wxImage won't work)
  1325. #define wxUSE_WXDIB 1
  1326. // Set to 0 to disable PostScript print/preview architecture code under Windows
  1327. // (just use Windows printing).
  1328. #define wxUSE_POSTSCRIPT_ARCHITECTURE_IN_MSW 1
  1329. // Set this to 1 to compile in wxRegKey class.
  1330. //
  1331. // Default is 1
  1332. //
  1333. // Recommended setting: 1, this is used internally by wx in a few places
  1334. #define wxUSE_REGKEY 1
  1335. // Set this to 1 to use RICHEDIT controls for wxTextCtrl with style wxTE_RICH
  1336. // which allows to put more than ~32Kb of text in it even under Win9x (NT
  1337. // doesn't have such limitation).
  1338. //
  1339. // Default is 1 for compilers which support it
  1340. //
  1341. // Recommended setting: 1, only set it to 0 if your compiler doesn't have
  1342. // or can't compile <richedit.h>
  1343. #define wxUSE_RICHEDIT 1
  1344. // Set this to 1 to use extra features of richedit v2 and later controls
  1345. //
  1346. // Default is 1 for compilers which support it
  1347. //
  1348. // Recommended setting: 1
  1349. #define wxUSE_RICHEDIT2 1
  1350. // Set this to 1 to enable support for the owner-drawn menu and listboxes. This
  1351. // is required by wxUSE_CHECKLISTBOX.
  1352. //
  1353. // Default is 1.
  1354. //
  1355. // Recommended setting: 1, set to 0 for a small library size reduction
  1356. #define wxUSE_OWNER_DRAWN 1
  1357. // Set this to 1 to enable MSW-specific wxTaskBarIcon::ShowBalloon() method. It
  1358. // is required by native wxNotificationMessage implementation.
  1359. //
  1360. // Default is 1 but disabled in wx/msw/chkconf.h if SDK is too old to contain
  1361. // the necessary declarations.
  1362. //
  1363. // Recommended setting: 1, set to 0 for a tiny library size reduction
  1364. #define wxUSE_TASKBARICON_BALLOONS 1
  1365. // Set to 1 to compile MS Windows XP theme engine support
  1366. #define wxUSE_UXTHEME 1
  1367. // Set to 1 to use InkEdit control (Tablet PC), if available
  1368. #define wxUSE_INKEDIT 0
  1369. // Set to 1 to enable .INI files based wxConfig implementation (wxIniConfig)
  1370. //
  1371. // Default is 0.
  1372. //
  1373. // Recommended setting: 0, nobody uses .INI files any more
  1374. #define wxUSE_INICONF 0
  1375. // ----------------------------------------------------------------------------
  1376. // Generic versions of native controls
  1377. // ----------------------------------------------------------------------------
  1378. // Set this to 1 to be able to use wxDatePickerCtrlGeneric in addition to the
  1379. // native wxDatePickerCtrl
  1380. //
  1381. // Default is 0.
  1382. //
  1383. // Recommended setting: 0, this is mainly used for testing
  1384. #define wxUSE_DATEPICKCTRL_GENERIC 0
  1385. // ----------------------------------------------------------------------------
  1386. // Crash debugging helpers
  1387. // ----------------------------------------------------------------------------
  1388. // Set this to 1 to be able to use wxCrashReport::Generate() to create mini
  1389. // dumps of your program when it crashes (or at any other moment)
  1390. //
  1391. // Default is 1 if supported by the compiler (VC++ and recent BC++ only).
  1392. //
  1393. // Recommended setting: 1, set to 0 if your programs never crash
  1394. #define wxUSE_CRASHREPORT 1
  1395. /* --- end MSW options --- */
  1396. /* --- start wxUniv options --- */
  1397. // ----------------------------------------------------------------------------
  1398. // wxUniversal-only options
  1399. // ----------------------------------------------------------------------------
  1400. // Set to 1 to enable compilation of all themes, this is the default
  1401. #define wxUSE_ALL_THEMES 1
  1402. // Set to 1 to enable the compilation of individual theme if wxUSE_ALL_THEMES
  1403. // is unset, if it is set these options are not used; notice that metal theme
  1404. // uses Win32 one
  1405. #define wxUSE_THEME_GTK 0
  1406. #define wxUSE_THEME_METAL 0
  1407. #define wxUSE_THEME_MONO 0
  1408. #define wxUSE_THEME_WIN32 0
  1409. /* --- end wxUniv options --- */
  1410. #endif // _WX_SETUP_H_