// Purpose: Configuration for the library
// Author: Stefan Csomor
// Modified by: Stefan Csomor
-// Created: ??/??/98
+// Created: 1998-01-01
// RCS-ID: $Id$
-// Copyright: (c) AUTHOR
-// Licence: wxWindows licence
+// Copyright: (c) Stefan Csomor
+// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_SETUP_H_
// so there is little advantage to setting it to 1.
#define WXWIN_COMPATIBILITY 0
+// This setting determines the compatibility with 2.0 API: set it to 1 to
+// enable it
+//
+// Default is 0.
+//
+// Recommended setting: 0 (please update your code instead!)
+#define WXWIN_COMPATIBILITY_2 0
+
+// This setting determines the compatibility with 2.0 API: set it to 1 to
+// enable it
+//
+// Default is 0.
+//
+// Recommended setting: 0 (please update your code instead!)
+#define WXWIN_COMPATIBILITY_2_2 0
+
+// This setting determines the compatibility with 2.2 API: set it to 0 to
+// flag all cases of using deprecated functions.
+//
+// Default is 1 but please try building your code with 0 as the default will
+// change to 0 in the next version and the deprecated functions will disappear
+// in the version after it completely.
+//
+// Recommended setting: 0 (please update your code)
+#define WXWIN_COMPATIBILITY_2_4 1
+
// in wxMSW version 2.1.11 and earlier, wxIcon always derives from wxBitmap,
// but this is very dangerous because you can mistakenly pass an icon instead
// of a bitmap to a function taking "const wxBitmap&" - which will *not* work
#define wxUSE_MEMORY_TRACING 1
// In debug mode, cause new and delete to be redefined globally.
-// If this causes problems (e.g. link errors), set this to 0.
+// If this causes problems (e.g. link errors which is a common problem
+// especially if you use another library which also redefines the global new
+// and delete), set this to 0.
// This switch is currently ignored for mingw / cygwin
//
-// Default is 1
+// Default is 0
//
-// Recommended setting: 1 but see comment in the beginning of this section
+// Recommended setting: 0
#define wxUSE_GLOBAL_MEMORY_OPERATORS 0
// In debug mode, causes new to be defined to be WXDEBUG_NEW (see object.h). If
// this causes problems (e.g. link errors), set this to 0. You may need to set
// this to 0 if using templates (at least for VC++). This switch is currently
-// ignored for mingw / cygwin
+// ignored for mingw / cygwin
//
-// Default is 1
+// Default is 0
//
-// Recommended setting: 1 but see comment in the beginning of this section
-#define wxUSE_DEBUG_NEW_ALWAYS 1
+// Recommended setting: 0
+#define wxUSE_DEBUG_NEW_ALWAYS 0
// wxHandleFatalExceptions() may be used to catch the program faults at run
// time and, instead of terminating the program with a usual GPF message box,
// Recommended setting: 1 (always)
#define wxUSE_LOG_DIALOG 1
+// Support for command line parsing using wxCmdLineParser class.
+//
+// Default is 1
+//
+// Recommended setting: 1 (can be set to 0 if you don't use the cmd line)
+#define wxUSE_CMDLINE_PARSER 1
+
// Support for multithreaded applications: if 1, compile in thread classes
// (thread.h) and make the library a bit more thread safe. Although thread
// support is quite stable by now, you may still consider recompiling the
#define wxUSE_FILE 1
#define wxUSE_FFILE 1
-// use wxTextFile class: requires wxFile, required by wxFileConfig
+// use wxTextBuffer class: required by wxTextFile
+#define wxUSE_TEXTBUFFER 1
+
+// use wxTextFile class: requires wxFile and wxTextBuffer, required by
+// wxFileConfig
#define wxUSE_TEXTFILE 1
// i18n support: _() macro, wxLocale class. Requires wxTextFile.
// Recommended setting: 1
#define wxUSE_DATETIME 1
-// wxUSE_TIMEDATE enables compilation of the old wxDate and wxTime classes (not
-// the same as wxDateTime!). These classes are obsolete and shouldn't be used
-// in new code
-//
-// Default is 0
-//
-// Recommended setting: 0 unless you have legacy code which uses these classes
-#define wxUSE_TIMEDATE 0
-
// Set wxUSE_TIMER to 1 to compile wxTimer class
//
// Default is 1
// If wxUSE_DIALUP_MANAGER is 1, compile in wxDialUpManager class which allows
// to connect/disconnect from the network and be notified whenever the dial-up
-// network connection is established/terminated. Requires wxUSE_DYNLIB_CLASS.
+// network connection is established/terminated. Requires wxUSE_DYNAMIC_LOADER.
//
// Default is 1.
//
// Recommended setting: 1
#define wxUSE_DIALUP_MANAGER 1
-// Compile in wxLibrary class for run-time DLL loading and function calling.
+// Compile in classes for run-time DLL loading and function calling.
// Required by wxUSE_DIALUP_MANAGER.
//
// This setting is for Win32 only
// Recommended setting: 1
#define wxUSE_DYNLIB_CLASS 1
+// experimental extension, use with caution.
+#define wxUSE_DYNAMIC_LOADER 0
+
// Set to 1 to use socket classes
#define wxUSE_SOCKETS 1
// wxMimeTypesManager class
#define wxUSE_MIMETYPE 1
-// wxSystemOptions class
-#define wxUSE_SYSTEM_OPTIONS 1
+// wxProtocol and related classes: if you want to use either of wxFTP, wxHTTP
+// or wxURL you need to set this to 1.
+//
+// Default is 1.
+//
+// Recommended setting: 1
+#define wxUSE_PROTOCOL 1
+
+// The settings for the individual URL schemes
+#define wxUSE_PROTOCOL_FILE 1
+#define wxUSE_PROTOCOL_FTP 1
+#define wxUSE_PROTOCOL_HTTP 1
+
+// Define this to use wxURL class.
+#define wxUSE_URL 1
// Support for regular expression matching via wxRegEx class: enable this to
// use POSIX regular expressions in your code. You need to compile regex
//
// Recommended setting: 1 if your compiler supports it, if it doesn't please
// contribute us a makefile for src/regex for it
-#define wxUSE_REGEX 0
+#define wxUSE_REGEX 1
+
+// wxSystemOptions class
+#define wxUSE_SYSTEM_OPTIONS 1
+
+// wxWave class
+#define wxUSE_WAVE 1
// ----------------------------------------------------------------------------
// Individual GUI controls
// Recommended setting: 1 (don't change except for very special programs)
#define wxUSE_CONTROLS 1
-// wxPopupWindow class is not used currently by wxMSW
+// wxPopupWindow class is a top level transient window. It is currently used
+// to implement wxTipWindow but doesn't work yet under Mac.
//
-// Default is 0
+// Default is 0
//
// Recommended setting: 0
#define wxUSE_POPUPWIN 0
+// wxTipWindow allows to implement the custom tooltips, it is used by the
+// context help classes. Requires wxUSE_POPUPWIN.
+//
+// Default is 0
+//
+// Recommended setting: 0
+#define wxUSE_TIPWINDOW 0
+
// Each of the settings below corresponds to one wxWindows control. They are
// all switched on by default but may be disabled if you are sure that your
// program (including any standard dialogs it can show!) doesn't need them and
#define wxUSE_GAUGE 1 // wxGauge
#define wxUSE_LISTBOX 1 // wxListBox
#define wxUSE_LISTCTRL 1 // wxListCtrl
-#define wxUSE_PROPSHEET 1 // wxProperty
#define wxUSE_RADIOBOX 1 // wxRadioBox
#define wxUSE_RADIOBTN 1 // wxRadioButton
#define wxUSE_SCROLLBAR 1 // wxScrollBar
#define wxUSE_GRID 1
#define wxUSE_NEW_GRID 1
+// wxProperty[Value/Form/List] classes, used by Dialog Editor
+#define wxUSE_PROPSHEET 0
+
// ----------------------------------------------------------------------------
// Miscellaneous GUI stuff
// ----------------------------------------------------------------------------
// Recommended setting: 1 (can be safely set to 0, not used by the library)
#define wxUSE_CARET 1
+// Use wxDisplay class: it allows enumerating all displays on a system and
+// working with them.
+//
+// Default is 0 because it isn't yet implemented on all platforms
+//
+// Recommended setting: 1 if you need it, can be safely set to 0 otherwise
+#define wxUSE_DISPLAY 0
+
// Miscellaneous geometry code: needed for Canvas library
#define wxUSE_GEOMETRY 1
// Recommended setting: 1 (used in the library itself)
#define wxUSE_CHOICEDLG 1
+// Use colour picker dialog
+//
+// Default is 1
+//
+// Recommended setting: 1
+#define wxUSE_COLOURDLG 1
+
// wxDirDlg class for getting a directory name from user
#define wxUSE_DIRDLG 1
// Recommended setting: 1 (used in many places in the library itself)
#define wxUSE_FILEDLG 1
+// Use find/replace dialogs.
+//
+// Default is 1
+//
+// Recommended setting: 1 (but may be safely set to 0)
+#define wxUSE_FINDREPLDLG 1
+
// Use font picker dialog
//
// Default is 1
// number entry dialog
#define wxUSE_NUMBERDLG 1
-// color chooser dialog
-#define wxUSE_COLOURDLG 1
-
// splash screen class
#define wxUSE_SPLASH 1
#define wxUSE_HTML 1
// OpenGL canvas
-#define wxUSE_GLCANVAS 1
-
-// wxTreeLayout class
-#define wxUSE_TREELAYOUT 1
+#define wxUSE_GLCANVAS 0
// ----------------------------------------------------------------------------
// Data transfer
//
// Default is 1.
//
-// Recommended setting: 0 for Mac OS as drag and drop is not yet implemented
-#define wxUSE_DRAG_AND_DROP 0
+// Recommended setting: 1
+#define wxUSE_DRAG_AND_DROP 1
// ----------------------------------------------------------------------------
// miscellaneous settings
#define wxUSE_SPLINES 1
// 0 for no splines
-#define wxUSE_WX_RESOURCES 1
- // Use .wxr resource mechanism (requires PrologIO library)
-
#define wxUSE_MOUSEWHEEL 1
// Include mouse wheel support
// that use the connection) should support forward only scrolling of cursors,
// or both forward and backward support for backward scrolling cursors is
// dependent on the data source as well as the ODBC driver being used.
-#define wxODBC_FWD_ONLY_CURSORS 1
+#define wxODBC_FWD_ONLY_CURSORS 1
// Default is 0. Set to 1 to use the deprecated classes, enum types, function,
// member variables. With a setting of 1, full backward compatability with the
// Set to 1 for PCX format support
#define wxUSE_PCX 1
+// Set to 1 for IFF format support
+#define wxUSE_IFF 0
+
// Set to 1 for XPM format support
#define wxUSE_XPM 1
+// Set to 1 for MS Icons and Cursors format support
+#define wxUSE_ICO_CUR 1
+
// Set to 1 to compile in wxPalette class
#define wxUSE_PALETTE 1
//
// Recommended setting: 1, only set it to 0 if your compiler doesn't have
// or can't compile <richedit.h>
-#if defined(__WIN95__) && !defined(__TWIN32__) && !defined(__GNUWIN32_OLD__)
+#if defined(__WIN95__) && !defined(__WINE__) && !defined(__GNUWIN32_OLD__)
#define wxUSE_RICHEDIT 1
// TODO: This should be ifdef'ed for any compilers that don't support
#endif
// Set this to 1 to enable support for the owner-drawn menu and listboxes. This
-// is required by wxUSE_CHECKLISTBOX.
+// is not required on mac by wxUSE_CHECKLISTBOX.
//
// Default is 1.
//
-// Recommended setting: 1, set to 0 for a small library size reduction
+// Recommended setting: O as not implemented on mac
#define wxUSE_OWNER_DRAWN 0
// ----------------------------------------------------------------------------
#define wxUSE_DEBUG_NEW_ALWAYS 0
#endif // wxUSE_MFC
-// ODBC classes aren't Unicode-compatible yet
-#if wxUSE_UNICODE
-#undef wxUSE_ODBC
-#define wxUSE_ODBC 0
-#endif
-
-#if (!defined(WIN32) && !defined(__WIN32__)) || (defined(__GNUWIN32__) && !wxUSE_NORLANDER_HEADERS)
-// Can't use OLE drag and drop in Windows 3.1 because we don't know how
-// to implement UUIDs
-// GnuWin32 doesn't have appropriate headers for e.g. IUnknown.
-#undef wxUSE_DRAG_AND_DROP
-#define wxUSE_DRAG_AND_DROP 0
-#endif
// Only WIN32 supports wxStatusBar95
#if !defined(__WIN32__) && wxUSE_NATIVE_STATUSBAR
#define wxUSE_NATIVE_STATUSBAR 0
#endif
+/* NOT TRUE ON MAC
#if !wxUSE_OWNER_DRAWN
#undef wxUSE_CHECKLISTBOX
#define wxUSE_CHECKLISTBOX 0
#endif
+*/
// Salford C++ doesn't like some of the memory operator definitions
#ifdef __SALFORDC__
#define wxUSE_OWNER_DRAWN 0
#endif // __SALFORDC__
-#ifdef __TWIN32__
-
-#undef wxUSE_THREADS
-#define wxUSE_THREADS 0
-
-#undef wxUSE_ODBC
-#define wxUSE_ODBC 0
-
-#endif // __TWIN32__
-
// BC++/Win16 can't cope with the amount of data in resource.cpp
#if defined(__WIN16__) && defined(__BORLANDC__)
#undef wxUSE_WX_RESOURCES