Add wxUSE_STD_CONTAINERS and turn it on by default.
Previously, wxUSE_STL enabled both implicit conversion of wxString to std::[w]string and use of standard containers for the implementation of their wx equivalents. Split up the two roles now by allowing to enable the use of the standard containers independently of (backwards incompatible) implicit conversion in wxString and actually enable wxUSE_STD_CONTAINERS by default. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67343 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
109
configure
vendored
109
configure
vendored
@@ -1494,7 +1494,7 @@ do
|
|||||||
{ (exit 1); exit 1; }; }
|
{ (exit 1); exit 1; }; }
|
||||||
done
|
done
|
||||||
|
|
||||||
# There might be people who depend on the old broken behaviour: `$host'
|
# There might be people who depend on the old broken behavior: `$host'
|
||||||
# used to hold the argument of --host etc.
|
# used to hold the argument of --host etc.
|
||||||
# FIXME: To remove some day.
|
# FIXME: To remove some day.
|
||||||
build=$build_alias
|
build=$build_alias
|
||||||
@@ -1689,9 +1689,11 @@ Optional Features:
|
|||||||
--enable-debug_cntxt obsolete, don't use: use wxDebugContext
|
--enable-debug_cntxt obsolete, don't use: use wxDebugContext
|
||||||
--enable-mem_tracing obsolete, don't use: create code with memory tracing
|
--enable-mem_tracing obsolete, don't use: create code with memory tracing
|
||||||
--disable-shared create static library instead of shared
|
--disable-shared create static library instead of shared
|
||||||
--enable-stl use STL for containers
|
--enable-stl use standard C++ classes for everything
|
||||||
|
--enable-std_containers use standard C++ container classes
|
||||||
--enable-std_iostreams use standard C++ stream classes
|
--enable-std_iostreams use standard C++ stream classes
|
||||||
--enable-std_string use standard C++ string classes
|
--enable-std_string use standard C++ string classes
|
||||||
|
--enable-std_string_conv_in_wxstring provide implicit conversion to std::string in wxString
|
||||||
--disable-unicode compile without Unicode support
|
--disable-unicode compile without Unicode support
|
||||||
--enable-mslu use MS Layer for Unicode on Windows 9x (Win32 only)
|
--enable-mslu use MS Layer for Unicode on Windows 9x (Win32 only)
|
||||||
--enable-utf8 use UTF-8 representation for strings (Unix only)
|
--enable-utf8 use UTF-8 representation for strings (Unix only)
|
||||||
@@ -2971,6 +2973,7 @@ esac
|
|||||||
|
|
||||||
DEFAULT_wxUSE_ALL_FEATURES=yes
|
DEFAULT_wxUSE_ALL_FEATURES=yes
|
||||||
|
|
||||||
|
DEFAULT_wxUSE_STD_CONTAINERS=$DEFAULT_STD_FLAG
|
||||||
DEFAULT_wxUSE_STD_IOSTREAM=$DEFAULT_STD_FLAG
|
DEFAULT_wxUSE_STD_IOSTREAM=$DEFAULT_STD_FLAG
|
||||||
DEFAULT_wxUSE_STD_STRING=$DEFAULT_STD_FLAG
|
DEFAULT_wxUSE_STD_STRING=$DEFAULT_STD_FLAG
|
||||||
|
|
||||||
@@ -4775,6 +4778,50 @@ fi
|
|||||||
echo "${ECHO_T}$result" >&6; }
|
echo "${ECHO_T}$result" >&6; }
|
||||||
|
|
||||||
|
|
||||||
|
enablestring=
|
||||||
|
defaultval=
|
||||||
|
if test -z "$defaultval"; then
|
||||||
|
if test x"$enablestring" = xdisable; then
|
||||||
|
defaultval=yes
|
||||||
|
else
|
||||||
|
defaultval=no
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
{ echo "$as_me:$LINENO: checking for --${enablestring:-enable}-std_containers" >&5
|
||||||
|
echo $ECHO_N "checking for --${enablestring:-enable}-std_containers... $ECHO_C" >&6; }
|
||||||
|
# Check whether --enable-std_containers was given.
|
||||||
|
if test "${enable_std_containers+set}" = set; then
|
||||||
|
enableval=$enable_std_containers;
|
||||||
|
if test "$enableval" = yes; then
|
||||||
|
wx_cv_use_std_containers='wxUSE_STD_CONTAINERS=yes'
|
||||||
|
else
|
||||||
|
wx_cv_use_std_containers='wxUSE_STD_CONTAINERS=no'
|
||||||
|
fi
|
||||||
|
|
||||||
|
else
|
||||||
|
|
||||||
|
wx_cv_use_std_containers='wxUSE_STD_CONTAINERS=${'DEFAULT_wxUSE_STD_CONTAINERS":-$defaultval}"
|
||||||
|
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
eval "$wx_cv_use_std_containers"
|
||||||
|
|
||||||
|
if test x"$enablestring" = xdisable; then
|
||||||
|
if test $wxUSE_STD_CONTAINERS = no; then
|
||||||
|
result=yes
|
||||||
|
else
|
||||||
|
result=no
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
result=$wxUSE_STD_CONTAINERS
|
||||||
|
fi
|
||||||
|
|
||||||
|
{ echo "$as_me:$LINENO: result: $result" >&5
|
||||||
|
echo "${ECHO_T}$result" >&6; }
|
||||||
|
|
||||||
|
|
||||||
enablestring=
|
enablestring=
|
||||||
defaultval=
|
defaultval=
|
||||||
if test -z "$defaultval"; then
|
if test -z "$defaultval"; then
|
||||||
@@ -4863,6 +4910,50 @@ fi
|
|||||||
echo "${ECHO_T}$result" >&6; }
|
echo "${ECHO_T}$result" >&6; }
|
||||||
|
|
||||||
|
|
||||||
|
enablestring=
|
||||||
|
defaultval=
|
||||||
|
if test -z "$defaultval"; then
|
||||||
|
if test x"$enablestring" = xdisable; then
|
||||||
|
defaultval=yes
|
||||||
|
else
|
||||||
|
defaultval=no
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
{ echo "$as_me:$LINENO: checking for --${enablestring:-enable}-std_string_conv_in_wxstring" >&5
|
||||||
|
echo $ECHO_N "checking for --${enablestring:-enable}-std_string_conv_in_wxstring... $ECHO_C" >&6; }
|
||||||
|
# Check whether --enable-std_string_conv_in_wxstring was given.
|
||||||
|
if test "${enable_std_string_conv_in_wxstring+set}" = set; then
|
||||||
|
enableval=$enable_std_string_conv_in_wxstring;
|
||||||
|
if test "$enableval" = yes; then
|
||||||
|
wx_cv_use_std_string_conv_in_wxstring='wxUSE_STD_STRING_CONV_IN_WXSTRING=yes'
|
||||||
|
else
|
||||||
|
wx_cv_use_std_string_conv_in_wxstring='wxUSE_STD_STRING_CONV_IN_WXSTRING=no'
|
||||||
|
fi
|
||||||
|
|
||||||
|
else
|
||||||
|
|
||||||
|
wx_cv_use_std_string_conv_in_wxstring='wxUSE_STD_STRING_CONV_IN_WXSTRING=${'DEFAULT_wxUSE_STD_STRING_CONV_IN_WXSTRING":-$defaultval}"
|
||||||
|
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
eval "$wx_cv_use_std_string_conv_in_wxstring"
|
||||||
|
|
||||||
|
if test x"$enablestring" = xdisable; then
|
||||||
|
if test $wxUSE_STD_STRING_CONV_IN_WXSTRING = no; then
|
||||||
|
result=yes
|
||||||
|
else
|
||||||
|
result=no
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
result=$wxUSE_STD_STRING_CONV_IN_WXSTRING
|
||||||
|
fi
|
||||||
|
|
||||||
|
{ echo "$as_me:$LINENO: result: $result" >&5
|
||||||
|
echo "${ECHO_T}$result" >&6; }
|
||||||
|
|
||||||
|
|
||||||
enablestring=disable
|
enablestring=disable
|
||||||
defaultval=
|
defaultval=
|
||||||
if test -z "$defaultval"; then
|
if test -z "$defaultval"; then
|
||||||
@@ -44881,6 +44972,13 @@ _ACEOF
|
|||||||
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if test "$wxUSE_STD_CONTAINERS" = "yes"; then
|
||||||
|
cat >>confdefs.h <<\_ACEOF
|
||||||
|
#define wxUSE_STD_CONTAINERS 1
|
||||||
|
_ACEOF
|
||||||
|
|
||||||
|
fi
|
||||||
|
|
||||||
if test "$wxUSE_STD_IOSTREAM" = "yes"; then
|
if test "$wxUSE_STD_IOSTREAM" = "yes"; then
|
||||||
cat >>confdefs.h <<\_ACEOF
|
cat >>confdefs.h <<\_ACEOF
|
||||||
#define wxUSE_STD_IOSTREAM 1
|
#define wxUSE_STD_IOSTREAM 1
|
||||||
@@ -44895,6 +44993,13 @@ _ACEOF
|
|||||||
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if test "$wxUSE_STD_STRING_CONV_IN_WXSTRING" = "yes"; then
|
||||||
|
cat >>confdefs.h <<\_ACEOF
|
||||||
|
#define wxUSE_STD_STRING_CONV_IN_WXSTRING 1
|
||||||
|
_ACEOF
|
||||||
|
|
||||||
|
fi
|
||||||
|
|
||||||
if test "$wxUSE_STDPATHS" = "yes"; then
|
if test "$wxUSE_STDPATHS" = "yes"; then
|
||||||
cat >>confdefs.h <<\_ACEOF
|
cat >>confdefs.h <<\_ACEOF
|
||||||
#define wxUSE_STDPATHS 1
|
#define wxUSE_STDPATHS 1
|
||||||
|
13
configure.in
13
configure.in
@@ -372,6 +372,7 @@ dnl wxUSE_ALL_FEATURES which is the only which has to be set to "yes" by
|
|||||||
dnl default)
|
dnl default)
|
||||||
DEFAULT_wxUSE_ALL_FEATURES=yes
|
DEFAULT_wxUSE_ALL_FEATURES=yes
|
||||||
|
|
||||||
|
DEFAULT_wxUSE_STD_CONTAINERS=$DEFAULT_STD_FLAG
|
||||||
DEFAULT_wxUSE_STD_IOSTREAM=$DEFAULT_STD_FLAG
|
DEFAULT_wxUSE_STD_IOSTREAM=$DEFAULT_STD_FLAG
|
||||||
DEFAULT_wxUSE_STD_STRING=$DEFAULT_STD_FLAG
|
DEFAULT_wxUSE_STD_STRING=$DEFAULT_STD_FLAG
|
||||||
|
|
||||||
@@ -699,9 +700,11 @@ dnl global compile options
|
|||||||
dnl ---------------------------------------------------------------------------
|
dnl ---------------------------------------------------------------------------
|
||||||
|
|
||||||
WX_ARG_DISABLE(shared, [ --disable-shared create static library instead of shared], wxUSE_SHARED)
|
WX_ARG_DISABLE(shared, [ --disable-shared create static library instead of shared], wxUSE_SHARED)
|
||||||
WX_ARG_ENABLE(stl, [ --enable-stl use STL for containers], wxUSE_STL)
|
WX_ARG_ENABLE(stl, [ --enable-stl use standard C++ classes for everything], wxUSE_STL)
|
||||||
|
WX_ARG_ENABLE(std_containers,[ --enable-std_containers use standard C++ container classes], wxUSE_STD_CONTAINERS)
|
||||||
WX_ARG_ENABLE(std_iostreams, [ --enable-std_iostreams use standard C++ stream classes], wxUSE_STD_IOSTREAM)
|
WX_ARG_ENABLE(std_iostreams, [ --enable-std_iostreams use standard C++ stream classes], wxUSE_STD_IOSTREAM)
|
||||||
WX_ARG_ENABLE(std_string, [ --enable-std_string use standard C++ string classes], wxUSE_STD_STRING)
|
WX_ARG_ENABLE(std_string, [ --enable-std_string use standard C++ string classes], wxUSE_STD_STRING)
|
||||||
|
WX_ARG_ENABLE(std_string_conv_in_wxstring, [ --enable-std_string_conv_in_wxstring provide implicit conversion to std::string in wxString], wxUSE_STD_STRING_CONV_IN_WXSTRING)
|
||||||
WX_ARG_DISABLE(unicode, [ --disable-unicode compile without Unicode support], wxUSE_UNICODE)
|
WX_ARG_DISABLE(unicode, [ --disable-unicode compile without Unicode support], wxUSE_UNICODE)
|
||||||
WX_ARG_ENABLE(mslu, [ --enable-mslu use MS Layer for Unicode on Windows 9x (Win32 only)], wxUSE_UNICODE_MSLU)
|
WX_ARG_ENABLE(mslu, [ --enable-mslu use MS Layer for Unicode on Windows 9x (Win32 only)], wxUSE_UNICODE_MSLU)
|
||||||
WX_ARG_ENABLE_PARAM(utf8, [ --enable-utf8 use UTF-8 representation for strings (Unix only)], wxUSE_UNICODE_UTF8)
|
WX_ARG_ENABLE_PARAM(utf8, [ --enable-utf8 use UTF-8 representation for strings (Unix only)], wxUSE_UNICODE_UTF8)
|
||||||
@@ -5968,6 +5971,10 @@ if test "$wxUSE_BUSYINFO" = "yes"; then
|
|||||||
AC_DEFINE(wxUSE_BUSYINFO)
|
AC_DEFINE(wxUSE_BUSYINFO)
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if test "$wxUSE_STD_CONTAINERS" = "yes"; then
|
||||||
|
AC_DEFINE(wxUSE_STD_CONTAINERS)
|
||||||
|
fi
|
||||||
|
|
||||||
if test "$wxUSE_STD_IOSTREAM" = "yes"; then
|
if test "$wxUSE_STD_IOSTREAM" = "yes"; then
|
||||||
AC_DEFINE(wxUSE_STD_IOSTREAM)
|
AC_DEFINE(wxUSE_STD_IOSTREAM)
|
||||||
fi
|
fi
|
||||||
@@ -5976,6 +5983,10 @@ if test "$wxUSE_STD_STRING" = "yes"; then
|
|||||||
AC_DEFINE(wxUSE_STD_STRING)
|
AC_DEFINE(wxUSE_STD_STRING)
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if test "$wxUSE_STD_STRING_CONV_IN_WXSTRING" = "yes"; then
|
||||||
|
AC_DEFINE(wxUSE_STD_STRING_CONV_IN_WXSTRING)
|
||||||
|
fi
|
||||||
|
|
||||||
if test "$wxUSE_STDPATHS" = "yes"; then
|
if test "$wxUSE_STDPATHS" = "yes"; then
|
||||||
AC_DEFINE(wxUSE_STDPATHS)
|
AC_DEFINE(wxUSE_STDPATHS)
|
||||||
fi
|
fi
|
||||||
|
@@ -439,6 +439,8 @@ Major new features in this release
|
|||||||
|
|
||||||
All:
|
All:
|
||||||
|
|
||||||
|
- Use standard implementations of container classes by default, you need to
|
||||||
|
explicitly set wxUSE_STD_CONTAINERS to 0 to use wxWidgets implementations.
|
||||||
- Added cwd and env arguments to wxExecute() (Emilien Kia).
|
- Added cwd and env arguments to wxExecute() (Emilien Kia).
|
||||||
- Added "rest" argument to wxString::Before{First,Last}().
|
- Added "rest" argument to wxString::Before{First,Last}().
|
||||||
- Added wxThread::OnKill() and OnDelete() callbacks.
|
- Added wxThread::OnKill() and OnDelete() callbacks.
|
||||||
|
@@ -28,7 +28,7 @@ inline int wxCMPFUNC_CONV wxStringSortDescending(wxString* s1, wxString* s2)
|
|||||||
return wxStringSortAscending(s2, s1);
|
return wxStringSortAscending(s2, s1);
|
||||||
}
|
}
|
||||||
|
|
||||||
#if wxUSE_STL
|
#if wxUSE_STD_CONTAINERS
|
||||||
|
|
||||||
#include "wx/dynarray.h"
|
#include "wx/dynarray.h"
|
||||||
|
|
||||||
@@ -100,7 +100,7 @@ private:
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
#else // if !wxUSE_STL
|
#else // if !wxUSE_STD_CONTAINERS
|
||||||
|
|
||||||
// this shouldn't be defined for compilers not supporting template methods or
|
// this shouldn't be defined for compilers not supporting template methods or
|
||||||
// without std::distance()
|
// without std::distance()
|
||||||
@@ -384,7 +384,7 @@ public:
|
|||||||
{ Copy(array); }
|
{ Copy(array); }
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // !wxUSE_STL
|
#endif // !wxUSE_STD_CONTAINERS
|
||||||
|
|
||||||
// this class provides a temporary wxString* from a
|
// this class provides a temporary wxString* from a
|
||||||
// wxArrayString
|
// wxArrayString
|
||||||
|
@@ -85,7 +85,7 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
// deriving wxWin containers from STL ones changes them completely:
|
// deriving wxWin containers from STL ones changes them completely:
|
||||||
#if wxUSE_STL
|
#if wxUSE_STD_CONTAINERS
|
||||||
#define __WX_BO_STL ",STL containers"
|
#define __WX_BO_STL ",STL containers"
|
||||||
#else
|
#else
|
||||||
#define __WX_BO_STL ",wx containers"
|
#define __WX_BO_STL ",wx containers"
|
||||||
|
@@ -299,6 +299,22 @@
|
|||||||
# endif
|
# endif
|
||||||
#endif /* !defined(wxUSE_SOCKETS) */
|
#endif /* !defined(wxUSE_SOCKETS) */
|
||||||
|
|
||||||
|
#ifndef wxUSE_STD_CONTAINERS
|
||||||
|
# ifdef wxABORT_ON_CONFIG_ERROR
|
||||||
|
# error "wxUSE_STD_CONTAINERS must be defined, please read comment near the top of this file."
|
||||||
|
# else
|
||||||
|
# define wxUSE_STD_CONTAINERS 0
|
||||||
|
# endif
|
||||||
|
#endif /* !defined(wxUSE_STD_CONTAINERS) */
|
||||||
|
|
||||||
|
#ifndef wxUSE_STD_STRING_CONV_IN_WXSTRING
|
||||||
|
# ifdef wxABORT_ON_CONFIG_ERROR
|
||||||
|
# error "wxUSE_STD_STRING_CONV_IN_WXSTRING must be defined, please read comment near the top of this file."
|
||||||
|
# else
|
||||||
|
# define wxUSE_STD_STRING_CONV_IN_WXSTRING 0
|
||||||
|
# endif
|
||||||
|
#endif /* !defined(wxUSE_STD_STRING_CONV_IN_WXSTRING) */
|
||||||
|
|
||||||
#ifndef wxUSE_STREAMS
|
#ifndef wxUSE_STREAMS
|
||||||
# ifdef wxABORT_ON_CONFIG_ERROR
|
# ifdef wxABORT_ON_CONFIG_ERROR
|
||||||
# error "wxUSE_STREAMS must be defined, please read comment near the top of this file."
|
# error "wxUSE_STREAMS must be defined, please read comment near the top of this file."
|
||||||
|
@@ -89,6 +89,16 @@
|
|||||||
class 'bar'" */
|
class 'bar'" */
|
||||||
# pragma warning(disable:4251)
|
# pragma warning(disable:4251)
|
||||||
|
|
||||||
|
/*
|
||||||
|
This is a similar warning which occurs when deriving from standard
|
||||||
|
containers. MSDN even mentions that it can be ignored in this case
|
||||||
|
(albeit only in debug build while the warning is the same in release
|
||||||
|
too and seems equally harmless).
|
||||||
|
*/
|
||||||
|
#if wxUSE_STD_CONTAINERS
|
||||||
|
# pragma warning(disable:4275)
|
||||||
|
#endif /// wxUSE_STD_CONTAINERS
|
||||||
|
|
||||||
# ifdef __VISUALC5__
|
# ifdef __VISUALC5__
|
||||||
/* For VC++ 5.0 for release mode, the warning 'C4702: unreachable code */
|
/* For VC++ 5.0 for release mode, the warning 'C4702: unreachable code */
|
||||||
/* is buggy, and occurs for code that does actually get executed */
|
/* is buggy, and occurs for code that does actually get executed */
|
||||||
@@ -2760,7 +2770,7 @@ typedef int (* LINKAGEMODE wxListIterateFunction)(void *current);
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(__CYGWIN__) && defined(__WXMSW__)
|
#if defined(__CYGWIN__) && defined(__WXMSW__)
|
||||||
# if wxUSE_STL || defined(wxUSE_STD_STRING)
|
# if wxUSE_STD_CONTAINERS || defined(wxUSE_STD_STRING)
|
||||||
/*
|
/*
|
||||||
NASTY HACK because the gethostname in sys/unistd.h which the gnu
|
NASTY HACK because the gethostname in sys/unistd.h which the gnu
|
||||||
stl includes and wx builds with by default clash with each other
|
stl includes and wx builds with by default clash with each other
|
||||||
|
@@ -13,7 +13,7 @@
|
|||||||
#include "wx/defs.h"
|
#include "wx/defs.h"
|
||||||
#include "wx/utils.h"
|
#include "wx/utils.h"
|
||||||
|
|
||||||
#if wxUSE_STL
|
#if wxUSE_STD_CONTAINERS
|
||||||
|
|
||||||
#include "wx/beforestd.h"
|
#include "wx/beforestd.h"
|
||||||
#include <algorithm>
|
#include <algorithm>
|
||||||
@@ -199,7 +199,7 @@ public:
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
#else // STL
|
#else // !wxUSE_STD_CONTAINERS
|
||||||
|
|
||||||
template <typename T>
|
template <typename T>
|
||||||
class wxDList
|
class wxDList
|
||||||
@@ -845,6 +845,6 @@ public:
|
|||||||
} */
|
} */
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // wxUSE_STL/!wxUSE_STL
|
#endif // wxUSE_STD_CONTAINERS/!wxUSE_STD_CONTAINERS
|
||||||
|
|
||||||
#endif // _WX_DLIST_H_
|
#endif // _WX_DLIST_H_
|
||||||
|
@@ -14,7 +14,7 @@
|
|||||||
|
|
||||||
#include "wx/defs.h"
|
#include "wx/defs.h"
|
||||||
|
|
||||||
#if wxUSE_STL
|
#if wxUSE_STD_CONTAINERS
|
||||||
#include "wx/beforestd.h"
|
#include "wx/beforestd.h"
|
||||||
#include <vector>
|
#include <vector>
|
||||||
#include <algorithm>
|
#include <algorithm>
|
||||||
@@ -81,7 +81,7 @@ typedef int (wxCMPFUNC_CONV *CMPFUNC)(const void* pItem1, const void* pItem2);
|
|||||||
// you cast "SomeArray *" as "BaseArray *" and then delete it)
|
// you cast "SomeArray *" as "BaseArray *" and then delete it)
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
|
|
||||||
#if wxUSE_STL
|
#if wxUSE_STD_CONTAINERS
|
||||||
|
|
||||||
template<class T>
|
template<class T>
|
||||||
class wxArray_SortFunction
|
class wxArray_SortFunction
|
||||||
@@ -203,12 +203,12 @@ public: \
|
|||||||
} \
|
} \
|
||||||
}
|
}
|
||||||
|
|
||||||
#else // if !wxUSE_STL
|
#else // if !wxUSE_STD_CONTAINERS
|
||||||
|
|
||||||
#define _WX_DECLARE_BASEARRAY(T, name, classexp) \
|
#define _WX_DECLARE_BASEARRAY(T, name, classexp) \
|
||||||
classexp name \
|
classexp name \
|
||||||
{ \
|
{ \
|
||||||
typedef CMPFUNC SCMPFUNC; /* for compatibility wuth wxUSE_STL */ \
|
typedef CMPFUNC SCMPFUNC; /* for compatibility wuth wxUSE_STD_CONTAINERS */ \
|
||||||
public: \
|
public: \
|
||||||
name(); \
|
name(); \
|
||||||
name(const name& array); \
|
name(const name& array); \
|
||||||
@@ -307,7 +307,7 @@ private: \
|
|||||||
T *m_pItems; \
|
T *m_pItems; \
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif // !wxUSE_STL
|
#endif // !wxUSE_STD_CONTAINERS
|
||||||
|
|
||||||
// ============================================================================
|
// ============================================================================
|
||||||
// The private helper macros containing the core of the array classes
|
// The private helper macros containing the core of the array classes
|
||||||
@@ -325,7 +325,7 @@ private: \
|
|||||||
// _WX_DEFINE_TYPEARRAY: array for simple types
|
// _WX_DEFINE_TYPEARRAY: array for simple types
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
|
|
||||||
#if wxUSE_STL
|
#if wxUSE_STD_CONTAINERS
|
||||||
|
|
||||||
// in STL case we don't need the entire base arrays hack as standard container
|
// in STL case we don't need the entire base arrays hack as standard container
|
||||||
// don't suffer from alignment/storage problems as our home-grown do
|
// don't suffer from alignment/storage problems as our home-grown do
|
||||||
@@ -335,7 +335,7 @@ private: \
|
|||||||
#define _WX_DEFINE_TYPEARRAY_PTR(T, name, base, classexp) \
|
#define _WX_DEFINE_TYPEARRAY_PTR(T, name, base, classexp) \
|
||||||
_WX_DEFINE_TYPEARRAY(T, name, base, classexp)
|
_WX_DEFINE_TYPEARRAY(T, name, base, classexp)
|
||||||
|
|
||||||
#else // if !wxUSE_STL
|
#else // if !wxUSE_STD_CONTAINERS
|
||||||
|
|
||||||
// common declaration used by both _WX_DEFINE_TYPEARRAY and
|
// common declaration used by both _WX_DEFINE_TYPEARRAY and
|
||||||
// _WX_DEFINE_TYPEARRAY_PTR
|
// _WX_DEFINE_TYPEARRAY_PTR
|
||||||
@@ -505,7 +505,7 @@ public: \
|
|||||||
#define _WX_DEFINE_TYPEARRAY_PTR(T, name, base, classexp) \
|
#define _WX_DEFINE_TYPEARRAY_PTR(T, name, base, classexp) \
|
||||||
_WX_DEFINE_TYPEARRAY_HELPER(T, name, base, classexp, _WX_PTROP_NONE)
|
_WX_DEFINE_TYPEARRAY_HELPER(T, name, base, classexp, _WX_PTROP_NONE)
|
||||||
|
|
||||||
#endif // !wxUSE_STL
|
#endif // !wxUSE_STD_CONTAINERS
|
||||||
|
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
// _WX_DEFINE_SORTED_TYPEARRAY: sorted array for simple data types
|
// _WX_DEFINE_SORTED_TYPEARRAY: sorted array for simple data types
|
||||||
|
@@ -900,7 +900,7 @@ class WXDLLIMPEXP_CORE wxResourceCache: public wxList
|
|||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
wxResourceCache() { }
|
wxResourceCache() { }
|
||||||
#if !wxUSE_STL
|
#if !wxUSE_STD_CONTAINERS
|
||||||
wxResourceCache(const unsigned int keyType) : wxList(keyType) { }
|
wxResourceCache(const unsigned int keyType) : wxList(keyType) { }
|
||||||
#endif
|
#endif
|
||||||
virtual ~wxResourceCache();
|
virtual ~wxResourceCache();
|
||||||
|
@@ -15,7 +15,7 @@
|
|||||||
#include "wx/defs.h"
|
#include "wx/defs.h"
|
||||||
#include "wx/string.h"
|
#include "wx/string.h"
|
||||||
|
|
||||||
#if !wxUSE_STL
|
#if !wxUSE_STD_CONTAINERS
|
||||||
#include "wx/object.h"
|
#include "wx/object.h"
|
||||||
#else
|
#else
|
||||||
class WXDLLIMPEXP_FWD_BASE wxObject;
|
class WXDLLIMPEXP_FWD_BASE wxObject;
|
||||||
@@ -80,7 +80,7 @@ protected:
|
|||||||
};
|
};
|
||||||
|
|
||||||
class WXDLLIMPEXP_BASE wxHashTableBase
|
class WXDLLIMPEXP_BASE wxHashTableBase
|
||||||
#if !wxUSE_STL
|
#if !wxUSE_STD_CONTAINERS
|
||||||
: public wxObject
|
: public wxObject
|
||||||
#endif
|
#endif
|
||||||
{
|
{
|
||||||
|
@@ -15,9 +15,9 @@
|
|||||||
#include "wx/string.h"
|
#include "wx/string.h"
|
||||||
#include "wx/wxcrt.h"
|
#include "wx/wxcrt.h"
|
||||||
|
|
||||||
// In wxUSE_STL build we prefer to use the standard hash map class but it can
|
// In wxUSE_STD_CONTAINERS build we prefer to use the standard hash map class
|
||||||
// be either in non-standard hash_map header (old g++ and some other STL
|
// but it can be either in non-standard hash_map header (old g++ and some other
|
||||||
// implementations) or in C++0x standard unordered_map which can in turn be
|
// STL implementations) or in C++0x standard unordered_map which can in turn be
|
||||||
// available either in std::tr1 or std namespace itself
|
// available either in std::tr1 or std namespace itself
|
||||||
//
|
//
|
||||||
// To summarize: if std::unordered_map is available use it, otherwise use tr1
|
// To summarize: if std::unordered_map is available use it, otherwise use tr1
|
||||||
@@ -28,7 +28,7 @@
|
|||||||
#define HAVE_STL_HASH_MAP
|
#define HAVE_STL_HASH_MAP
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if wxUSE_STL && \
|
#if wxUSE_STD_CONTAINERS && \
|
||||||
(defined(HAVE_STD_UNORDERED_MAP) || defined(HAVE_TR1_UNORDERED_MAP))
|
(defined(HAVE_STD_UNORDERED_MAP) || defined(HAVE_TR1_UNORDERED_MAP))
|
||||||
|
|
||||||
#if defined(HAVE_STD_UNORDERED_MAP)
|
#if defined(HAVE_STD_UNORDERED_MAP)
|
||||||
@@ -42,7 +42,7 @@
|
|||||||
#define _WX_DECLARE_HASH_MAP( KEY_T, VALUE_T, HASH_T, KEY_EQ_T, CLASSNAME, CLASSEXP ) \
|
#define _WX_DECLARE_HASH_MAP( KEY_T, VALUE_T, HASH_T, KEY_EQ_T, CLASSNAME, CLASSEXP ) \
|
||||||
typedef WX_HASH_MAP_NAMESPACE::unordered_map< KEY_T, VALUE_T, HASH_T, KEY_EQ_T > CLASSNAME
|
typedef WX_HASH_MAP_NAMESPACE::unordered_map< KEY_T, VALUE_T, HASH_T, KEY_EQ_T > CLASSNAME
|
||||||
|
|
||||||
#elif wxUSE_STL && defined(HAVE_STL_HASH_MAP)
|
#elif wxUSE_STD_CONTAINERS && defined(HAVE_STL_HASH_MAP)
|
||||||
|
|
||||||
#if defined(HAVE_EXT_HASH_MAP)
|
#if defined(HAVE_EXT_HASH_MAP)
|
||||||
#include <ext/hash_map>
|
#include <ext/hash_map>
|
||||||
@@ -59,7 +59,7 @@
|
|||||||
#define _WX_DECLARE_HASH_MAP( KEY_T, VALUE_T, HASH_T, KEY_EQ_T, CLASSNAME, CLASSEXP ) \
|
#define _WX_DECLARE_HASH_MAP( KEY_T, VALUE_T, HASH_T, KEY_EQ_T, CLASSNAME, CLASSEXP ) \
|
||||||
typedef WX_HASH_MAP_NAMESPACE::hash_map< KEY_T, VALUE_T, HASH_T, KEY_EQ_T > CLASSNAME
|
typedef WX_HASH_MAP_NAMESPACE::hash_map< KEY_T, VALUE_T, HASH_T, KEY_EQ_T > CLASSNAME
|
||||||
|
|
||||||
#else // !wxUSE_STL || no std::{hash,unordered}_map class available
|
#else // !wxUSE_STD_CONTAINERS || no std::{hash,unordered}_map class available
|
||||||
|
|
||||||
#define wxNEEDS_WX_HASH_MAP
|
#define wxNEEDS_WX_HASH_MAP
|
||||||
|
|
||||||
|
@@ -17,7 +17,7 @@
|
|||||||
// see comment in wx/hashmap.h which also applies to different standard hash
|
// see comment in wx/hashmap.h which also applies to different standard hash
|
||||||
// set classes
|
// set classes
|
||||||
|
|
||||||
#if wxUSE_STL && \
|
#if wxUSE_STD_CONTAINERS && \
|
||||||
(defined(HAVE_STD_UNORDERED_SET) || defined(HAVE_TR1_UNORDERED_SET))
|
(defined(HAVE_STD_UNORDERED_SET) || defined(HAVE_TR1_UNORDERED_SET))
|
||||||
|
|
||||||
#if defined(HAVE_STD_UNORDERED_SET)
|
#if defined(HAVE_STD_UNORDERED_SET)
|
||||||
@@ -30,7 +30,7 @@
|
|||||||
#error Update this code: unordered_set is available, but I do not know where.
|
#error Update this code: unordered_set is available, but I do not know where.
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#elif wxUSE_STL && defined(HAVE_STL_HASH_MAP)
|
#elif wxUSE_STD_CONTAINERS && defined(HAVE_STL_HASH_MAP)
|
||||||
|
|
||||||
#if defined(HAVE_EXT_HASH_MAP)
|
#if defined(HAVE_EXT_HASH_MAP)
|
||||||
#include <ext/hash_set>
|
#include <ext/hash_set>
|
||||||
|
@@ -33,7 +33,7 @@
|
|||||||
#include "wx/object.h"
|
#include "wx/object.h"
|
||||||
#include "wx/string.h"
|
#include "wx/string.h"
|
||||||
|
|
||||||
#if wxUSE_STL
|
#if wxUSE_STD_CONTAINERS
|
||||||
#include "wx/beforestd.h"
|
#include "wx/beforestd.h"
|
||||||
#include <algorithm>
|
#include <algorithm>
|
||||||
#include <iterator>
|
#include <iterator>
|
||||||
@@ -48,7 +48,7 @@
|
|||||||
class WXDLLIMPEXP_FWD_BASE wxObjectListNode;
|
class WXDLLIMPEXP_FWD_BASE wxObjectListNode;
|
||||||
typedef wxObjectListNode wxNode;
|
typedef wxObjectListNode wxNode;
|
||||||
|
|
||||||
#if wxUSE_STL
|
#if wxUSE_STD_CONTAINERS
|
||||||
|
|
||||||
#define wxLIST_COMPATIBILITY
|
#define wxLIST_COMPATIBILITY
|
||||||
|
|
||||||
@@ -346,7 +346,7 @@ inline const void *wxListCastElementToVoidPtr(const wxString& str)
|
|||||||
#define WX_DEFINE_EXPORTED_LIST(name) WX_DEFINE_LIST(name)
|
#define WX_DEFINE_EXPORTED_LIST(name) WX_DEFINE_LIST(name)
|
||||||
#define WX_DEFINE_USER_EXPORTED_LIST(name) WX_DEFINE_LIST(name)
|
#define WX_DEFINE_USER_EXPORTED_LIST(name) WX_DEFINE_LIST(name)
|
||||||
|
|
||||||
#else // if !wxUSE_STL
|
#else // if !wxUSE_STD_CONTAINERS
|
||||||
|
|
||||||
|
|
||||||
// undef it to get rid of old, deprecated functions
|
// undef it to get rid of old, deprecated functions
|
||||||
@@ -1148,7 +1148,7 @@ private:
|
|||||||
#define WX_DEFINE_EXPORTED_LIST(name) WX_DEFINE_LIST(name)
|
#define WX_DEFINE_EXPORTED_LIST(name) WX_DEFINE_LIST(name)
|
||||||
#define WX_DEFINE_USER_EXPORTED_LIST(name) WX_DEFINE_LIST(name)
|
#define WX_DEFINE_USER_EXPORTED_LIST(name) WX_DEFINE_LIST(name)
|
||||||
|
|
||||||
#endif // !wxUSE_STL
|
#endif // !wxUSE_STD_CONTAINERS
|
||||||
|
|
||||||
// ============================================================================
|
// ============================================================================
|
||||||
// now we can define classes 100% compatible with the old ones
|
// now we can define classes 100% compatible with the old ones
|
||||||
@@ -1162,7 +1162,7 @@ private:
|
|||||||
|
|
||||||
// inline compatibility functions
|
// inline compatibility functions
|
||||||
|
|
||||||
#if !wxUSE_STL
|
#if !wxUSE_STD_CONTAINERS
|
||||||
|
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
// wxNodeBase deprecated methods
|
// wxNodeBase deprecated methods
|
||||||
@@ -1197,26 +1197,26 @@ WX_DECLARE_LIST_2(wxObject, wxObjectList, wxObjectListNode,
|
|||||||
class WXDLLIMPEXP_BASE wxList : public wxObjectList
|
class WXDLLIMPEXP_BASE wxList : public wxObjectList
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
#if defined(wxWARN_COMPAT_LIST_USE) && !wxUSE_STL
|
#if defined(wxWARN_COMPAT_LIST_USE) && !wxUSE_STD_CONTAINERS
|
||||||
wxList() { };
|
wxList() { };
|
||||||
wxDEPRECATED( wxList(int key_type) );
|
wxDEPRECATED( wxList(int key_type) );
|
||||||
#elif !wxUSE_STL
|
#elif !wxUSE_STD_CONTAINERS
|
||||||
wxList(int key_type = wxKEY_NONE);
|
wxList(int key_type = wxKEY_NONE);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// this destructor is required for Darwin
|
// this destructor is required for Darwin
|
||||||
~wxList() { }
|
~wxList() { }
|
||||||
|
|
||||||
#if !wxUSE_STL
|
#if !wxUSE_STD_CONTAINERS
|
||||||
wxList& operator=(const wxList& list)
|
wxList& operator=(const wxList& list)
|
||||||
{ if (&list != this) Assign(list); return *this; }
|
{ if (&list != this) Assign(list); return *this; }
|
||||||
|
|
||||||
// compatibility methods
|
// compatibility methods
|
||||||
void Sort(wxSortCompareFunction compfunc) { wxListBase::Sort(compfunc); }
|
void Sort(wxSortCompareFunction compfunc) { wxListBase::Sort(compfunc); }
|
||||||
#endif // !wxUSE_STL
|
#endif // !wxUSE_STD_CONTAINERS
|
||||||
};
|
};
|
||||||
|
|
||||||
#if !wxUSE_STL
|
#if !wxUSE_STD_CONTAINERS
|
||||||
|
|
||||||
// -----------------------------------------------------------------------------
|
// -----------------------------------------------------------------------------
|
||||||
// wxStringList class for compatibility with the old code
|
// wxStringList class for compatibility with the old code
|
||||||
@@ -1268,7 +1268,7 @@ private:
|
|||||||
void DoCopy(const wxStringList&); // common part of copy ctor and operator=
|
void DoCopy(const wxStringList&); // common part of copy ctor and operator=
|
||||||
};
|
};
|
||||||
|
|
||||||
#else // if wxUSE_STL
|
#else // if wxUSE_STD_CONTAINERS
|
||||||
|
|
||||||
WX_DECLARE_LIST_XO(wxString, wxStringListBase, class WXDLLIMPEXP_BASE);
|
WX_DECLARE_LIST_XO(wxString, wxStringListBase, class WXDLLIMPEXP_BASE);
|
||||||
|
|
||||||
@@ -1291,7 +1291,7 @@ public:
|
|||||||
{ push_front(s); return GetFirst(); }
|
{ push_front(s); return GetFirst(); }
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // wxUSE_STL
|
#endif // wxUSE_STD_CONTAINERS
|
||||||
|
|
||||||
#endif // wxLIST_COMPATIBILITY
|
#endif // wxLIST_COMPATIBILITY
|
||||||
|
|
||||||
|
@@ -9,7 +9,7 @@
|
|||||||
// Licence: wxWindows licence
|
// Licence: wxWindows licence
|
||||||
/////////////////////////////////////////////////////////////////////////////
|
/////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
#if wxUSE_STL
|
#if wxUSE_STD_CONTAINERS
|
||||||
|
|
||||||
#undef WX_DEFINE_LIST
|
#undef WX_DEFINE_LIST
|
||||||
#define WX_DEFINE_LIST(name) \
|
#define WX_DEFINE_LIST(name) \
|
||||||
@@ -19,7 +19,7 @@
|
|||||||
} \
|
} \
|
||||||
name::BaseListType name::EmptyList;
|
name::BaseListType name::EmptyList;
|
||||||
|
|
||||||
#else // !wxUSE_STL
|
#else // !wxUSE_STD_CONTAINERS
|
||||||
#undef WX_DEFINE_LIST_2
|
#undef WX_DEFINE_LIST_2
|
||||||
#define WX_DEFINE_LIST_2(T, name) \
|
#define WX_DEFINE_LIST_2(T, name) \
|
||||||
void wx##name##Node::DeleteData() \
|
void wx##name##Node::DeleteData() \
|
||||||
@@ -32,5 +32,5 @@
|
|||||||
#undef WX_DEFINE_LIST
|
#undef WX_DEFINE_LIST
|
||||||
#define WX_DEFINE_LIST(name) WX_DEFINE_LIST_2(_WX_LIST_ITEM_TYPE_##name, name)
|
#define WX_DEFINE_LIST(name) WX_DEFINE_LIST_2(_WX_LIST_ITEM_TYPE_##name, name)
|
||||||
|
|
||||||
#endif // wxUSE_STL/!wxUSE_STL
|
#endif // wxUSE_STD_CONTAINERS/!wxUSE_STD_CONTAINERS
|
||||||
|
|
||||||
|
@@ -38,7 +38,7 @@ struct wxIsMovable
|
|||||||
// (NB: we don't put this into string.h and choose to include wx/string.h from
|
// (NB: we don't put this into string.h and choose to include wx/string.h from
|
||||||
// here instead so that rarely-used wxIsMovable<T> code isn't included by
|
// here instead so that rarely-used wxIsMovable<T> code isn't included by
|
||||||
// everything)
|
// everything)
|
||||||
#if !wxUSE_STL && !wxUSE_STRING_POS_CACHE
|
#if !wxUSE_STD_STRING && !wxUSE_STRING_POS_CACHE
|
||||||
WX_DECLARE_TYPE_MOVABLE(wxString)
|
WX_DECLARE_TYPE_MOVABLE(wxString)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@@ -201,15 +201,6 @@
|
|||||||
// Recommended setting: 0 (this is still work in progress...)
|
// Recommended setting: 0 (this is still work in progress...)
|
||||||
#define wxUSE_EXTENDED_RTTI 0
|
#define wxUSE_EXTENDED_RTTI 0
|
||||||
|
|
||||||
// Set wxUSE_STL to 1 to derive wxList(Foo) and wxArray(Foo) from
|
|
||||||
// std::list<Foo*> and std::vector<Foo*>, with a compatibility interface,
|
|
||||||
// and for wxHashMap to be implemented with templates.
|
|
||||||
//
|
|
||||||
// Default is 0
|
|
||||||
//
|
|
||||||
// Recommended setting: YMMV
|
|
||||||
#define wxUSE_STL 0
|
|
||||||
|
|
||||||
// Support for message/error logging. This includes wxLogXXX() functions and
|
// Support for message/error logging. This includes wxLogXXX() functions and
|
||||||
// wxLog and derived classes. Don't set this to 0 unless you really know what
|
// wxLog and derived classes. Don't set this to 0 unless you really know what
|
||||||
// you are doing.
|
// you are doing.
|
||||||
@@ -261,44 +252,6 @@
|
|||||||
// Recommended setting: 1 as setting it to 0 disables many other things
|
// Recommended setting: 1 as setting it to 0 disables many other things
|
||||||
#define wxUSE_STREAMS 1
|
#define wxUSE_STREAMS 1
|
||||||
|
|
||||||
// This is not a real option but is used as the default value for
|
|
||||||
// wxUSE_STD_IOSTREAM and wxUSE_STD_STRING.
|
|
||||||
//
|
|
||||||
// Currently the Digital Mars and Watcom compilers come without standard C++
|
|
||||||
// library headers by default, wxUSE_STD_STRING can be set to 1 if you do have
|
|
||||||
// them (e.g. from STLPort).
|
|
||||||
//
|
|
||||||
// VC++ 5.0 does include standard C++ library headers, however they produce
|
|
||||||
// many warnings that can't be turned off when compiled at warning level 4.
|
|
||||||
#if defined(__DMC__) || defined(__WATCOMC__) \
|
|
||||||
|| (defined(_MSC_VER) && _MSC_VER < 1200)
|
|
||||||
#define wxUSE_STD_DEFAULT 0
|
|
||||||
#else
|
|
||||||
#define wxUSE_STD_DEFAULT 1
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// Use standard C++ streams if 1 instead of wx streams in some places. If
|
|
||||||
// disabled (default), wx streams are used everywhere and wxWidgets doesn't
|
|
||||||
// depend on the standard streams library.
|
|
||||||
//
|
|
||||||
// Notice that enabling this does not replace wx streams with std streams
|
|
||||||
// everywhere, in a lot of places wx streams are used no matter what.
|
|
||||||
//
|
|
||||||
// Default is 0
|
|
||||||
//
|
|
||||||
// Recommended setting: 1 if you use the standard streams anyhow and so
|
|
||||||
// dependency on the standard streams library is not a
|
|
||||||
// problem
|
|
||||||
#define wxUSE_STD_IOSTREAM wxUSE_STD_DEFAULT
|
|
||||||
|
|
||||||
// Enable conversion to standard C++ string if 1.
|
|
||||||
//
|
|
||||||
// Default is 1 for most compilers.
|
|
||||||
//
|
|
||||||
// Recommended setting: 1 unless you want to ensure your program doesn't use
|
|
||||||
// the standard C++ library at all.
|
|
||||||
#define wxUSE_STD_STRING wxUSE_STD_DEFAULT
|
|
||||||
|
|
||||||
// Support for positional parameters (e.g. %1$d, %2$s ...) in wxVsnprintf.
|
// Support for positional parameters (e.g. %1$d, %2$s ...) in wxVsnprintf.
|
||||||
// Note that if the system's implementation does not support positional
|
// Note that if the system's implementation does not support positional
|
||||||
// parameters, setting this to 1 forces the use of the wxWidgets implementation
|
// parameters, setting this to 1 forces the use of the wxWidgets implementation
|
||||||
@@ -314,6 +267,89 @@
|
|||||||
// Recommended setting: 1 if you want to support multiple languages
|
// Recommended setting: 1 if you want to support multiple languages
|
||||||
#define wxUSE_PRINTF_POS_PARAMS 1
|
#define wxUSE_PRINTF_POS_PARAMS 1
|
||||||
|
|
||||||
|
|
||||||
|
// ----------------------------------------------------------------------------
|
||||||
|
// Interoperability with the standard library.
|
||||||
|
// ----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
// Set wxUSE_STL to 1 to enable maximal interoperability with the standard
|
||||||
|
// library, even at the cost of backwards compatibility.
|
||||||
|
//
|
||||||
|
// Default is 0
|
||||||
|
//
|
||||||
|
// Recommended setting: 0 as the options below already provide a relatively
|
||||||
|
// good level of interoperability and changing this option arguably isn't worth
|
||||||
|
// diverging from the official builds of the library.
|
||||||
|
#define wxUSE_STL 0
|
||||||
|
|
||||||
|
// This is not a real option but is used as the default value for
|
||||||
|
// wxUSE_STD_IOSTREAM, wxUSE_STD_STRING and wxUSE_STD_CONTAINERS.
|
||||||
|
//
|
||||||
|
// Currently the Digital Mars and Watcom compilers come without standard C++
|
||||||
|
// library headers by default, wxUSE_STD_STRING can be set to 1 if you do have
|
||||||
|
// them (e.g. from STLPort).
|
||||||
|
//
|
||||||
|
// VC++ 5.0 does include standard C++ library headers, however they produce
|
||||||
|
// many warnings that can't be turned off when compiled at warning level 4.
|
||||||
|
#if defined(__DMC__) || defined(__WATCOMC__) \
|
||||||
|
|| (defined(_MSC_VER) && _MSC_VER < 1200)
|
||||||
|
#define wxUSE_STD_DEFAULT 0
|
||||||
|
#else
|
||||||
|
#define wxUSE_STD_DEFAULT 1
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// Use standard C++ containers to implement wxVector<>, wxStack<>, wxDList<>
|
||||||
|
// and wxHashXXX<> classes. If disabled, wxWidgets own (mostly compatible but
|
||||||
|
// usually more limited) implementations are used which allows to avoid the
|
||||||
|
// dependency on the C++ run-time library.
|
||||||
|
//
|
||||||
|
// Default is 1 if compiler supports it.
|
||||||
|
//
|
||||||
|
// Recommended setting: 1 unless you use a system without good implementation
|
||||||
|
// of STL.
|
||||||
|
#define wxUSE_STD_CONTAINERS wxUSE_STD_DEFAULT
|
||||||
|
|
||||||
|
// Use standard C++ streams if 1 instead of wx streams in some places. If
|
||||||
|
// disabled, wx streams are used everywhere and wxWidgets doesn't depend on the
|
||||||
|
// standard streams library.
|
||||||
|
//
|
||||||
|
// Notice that enabling this does not replace wx streams with std streams
|
||||||
|
// everywhere, in a lot of places wx streams are used no matter what.
|
||||||
|
//
|
||||||
|
// Default is 1 if compiler supports it.
|
||||||
|
//
|
||||||
|
// Recommended setting: 1 if you use the standard streams anyhow and so
|
||||||
|
// dependency on the standard streams library is not a
|
||||||
|
// problem
|
||||||
|
#define wxUSE_STD_IOSTREAM wxUSE_STD_DEFAULT
|
||||||
|
|
||||||
|
// Enable minimal interoperability with the standard C++ string class if 1.
|
||||||
|
// "Minimal" means that wxString can be constructed from std::string or
|
||||||
|
// std::wstring but can't be implicitly converted to them. You need to enable
|
||||||
|
// the option below for the latter.
|
||||||
|
//
|
||||||
|
// Default is 1 for most compilers.
|
||||||
|
//
|
||||||
|
// Recommended setting: 1 unless you want to ensure your program doesn't use
|
||||||
|
// the standard C++ library at all.
|
||||||
|
#define wxUSE_STD_STRING wxUSE_STD_DEFAULT
|
||||||
|
|
||||||
|
// Make wxString as much interchangeable with std::[w]string as possible, in
|
||||||
|
// particular allow implicit conversion of wxString to either of these classes.
|
||||||
|
// This comes at a price (or a benefit, depending on your point of view) of not
|
||||||
|
// allowing implicit conversion to "const char *" and "const wchar_t *".
|
||||||
|
//
|
||||||
|
// Because a lot of existing code relies on these conversions, this option is
|
||||||
|
// disabled by default but can be enabled for your build if you don't care
|
||||||
|
// about compatibility.
|
||||||
|
//
|
||||||
|
// Default is 0 if wxUSE_STL has its default value or 1 if it is enabled.
|
||||||
|
//
|
||||||
|
// Recommended setting: 0 to remain compatible with the official builds of
|
||||||
|
// wxWidgets.
|
||||||
|
#define wxUSE_STD_STRING_CONV_IN_WXSTRING wxUSE_STL
|
||||||
|
|
||||||
|
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
// non GUI features selection
|
// non GUI features selection
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
|
@@ -201,15 +201,6 @@
|
|||||||
// Recommended setting: 0 (this is still work in progress...)
|
// Recommended setting: 0 (this is still work in progress...)
|
||||||
#define wxUSE_EXTENDED_RTTI 0
|
#define wxUSE_EXTENDED_RTTI 0
|
||||||
|
|
||||||
// Set wxUSE_STL to 1 to derive wxList(Foo) and wxArray(Foo) from
|
|
||||||
// std::list<Foo*> and std::vector<Foo*>, with a compatibility interface,
|
|
||||||
// and for wxHashMap to be implemented with templates.
|
|
||||||
//
|
|
||||||
// Default is 0
|
|
||||||
//
|
|
||||||
// Recommended setting: YMMV
|
|
||||||
#define wxUSE_STL 0
|
|
||||||
|
|
||||||
// Support for message/error logging. This includes wxLogXXX() functions and
|
// Support for message/error logging. This includes wxLogXXX() functions and
|
||||||
// wxLog and derived classes. Don't set this to 0 unless you really know what
|
// wxLog and derived classes. Don't set this to 0 unless you really know what
|
||||||
// you are doing.
|
// you are doing.
|
||||||
@@ -261,44 +252,6 @@
|
|||||||
// Recommended setting: 1 as setting it to 0 disables many other things
|
// Recommended setting: 1 as setting it to 0 disables many other things
|
||||||
#define wxUSE_STREAMS 1
|
#define wxUSE_STREAMS 1
|
||||||
|
|
||||||
// This is not a real option but is used as the default value for
|
|
||||||
// wxUSE_STD_IOSTREAM and wxUSE_STD_STRING.
|
|
||||||
//
|
|
||||||
// Currently the Digital Mars and Watcom compilers come without standard C++
|
|
||||||
// library headers by default, wxUSE_STD_STRING can be set to 1 if you do have
|
|
||||||
// them (e.g. from STLPort).
|
|
||||||
//
|
|
||||||
// VC++ 5.0 does include standard C++ library headers, however they produce
|
|
||||||
// many warnings that can't be turned off when compiled at warning level 4.
|
|
||||||
#if defined(__DMC__) || defined(__WATCOMC__) \
|
|
||||||
|| (defined(_MSC_VER) && _MSC_VER < 1200)
|
|
||||||
#define wxUSE_STD_DEFAULT 0
|
|
||||||
#else
|
|
||||||
#define wxUSE_STD_DEFAULT 1
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// Use standard C++ streams if 1 instead of wx streams in some places. If
|
|
||||||
// disabled (default), wx streams are used everywhere and wxWidgets doesn't
|
|
||||||
// depend on the standard streams library.
|
|
||||||
//
|
|
||||||
// Notice that enabling this does not replace wx streams with std streams
|
|
||||||
// everywhere, in a lot of places wx streams are used no matter what.
|
|
||||||
//
|
|
||||||
// Default is 0
|
|
||||||
//
|
|
||||||
// Recommended setting: 1 if you use the standard streams anyhow and so
|
|
||||||
// dependency on the standard streams library is not a
|
|
||||||
// problem
|
|
||||||
#define wxUSE_STD_IOSTREAM wxUSE_STD_DEFAULT
|
|
||||||
|
|
||||||
// Enable conversion to standard C++ string if 1.
|
|
||||||
//
|
|
||||||
// Default is 1 for most compilers.
|
|
||||||
//
|
|
||||||
// Recommended setting: 1 unless you want to ensure your program doesn't use
|
|
||||||
// the standard C++ library at all.
|
|
||||||
#define wxUSE_STD_STRING wxUSE_STD_DEFAULT
|
|
||||||
|
|
||||||
// Support for positional parameters (e.g. %1$d, %2$s ...) in wxVsnprintf.
|
// Support for positional parameters (e.g. %1$d, %2$s ...) in wxVsnprintf.
|
||||||
// Note that if the system's implementation does not support positional
|
// Note that if the system's implementation does not support positional
|
||||||
// parameters, setting this to 1 forces the use of the wxWidgets implementation
|
// parameters, setting this to 1 forces the use of the wxWidgets implementation
|
||||||
@@ -314,6 +267,89 @@
|
|||||||
// Recommended setting: 1 if you want to support multiple languages
|
// Recommended setting: 1 if you want to support multiple languages
|
||||||
#define wxUSE_PRINTF_POS_PARAMS 1
|
#define wxUSE_PRINTF_POS_PARAMS 1
|
||||||
|
|
||||||
|
|
||||||
|
// ----------------------------------------------------------------------------
|
||||||
|
// Interoperability with the standard library.
|
||||||
|
// ----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
// Set wxUSE_STL to 1 to enable maximal interoperability with the standard
|
||||||
|
// library, even at the cost of backwards compatibility.
|
||||||
|
//
|
||||||
|
// Default is 0
|
||||||
|
//
|
||||||
|
// Recommended setting: 0 as the options below already provide a relatively
|
||||||
|
// good level of interoperability and changing this option arguably isn't worth
|
||||||
|
// diverging from the official builds of the library.
|
||||||
|
#define wxUSE_STL 0
|
||||||
|
|
||||||
|
// This is not a real option but is used as the default value for
|
||||||
|
// wxUSE_STD_IOSTREAM, wxUSE_STD_STRING and wxUSE_STD_CONTAINERS.
|
||||||
|
//
|
||||||
|
// Currently the Digital Mars and Watcom compilers come without standard C++
|
||||||
|
// library headers by default, wxUSE_STD_STRING can be set to 1 if you do have
|
||||||
|
// them (e.g. from STLPort).
|
||||||
|
//
|
||||||
|
// VC++ 5.0 does include standard C++ library headers, however they produce
|
||||||
|
// many warnings that can't be turned off when compiled at warning level 4.
|
||||||
|
#if defined(__DMC__) || defined(__WATCOMC__) \
|
||||||
|
|| (defined(_MSC_VER) && _MSC_VER < 1200)
|
||||||
|
#define wxUSE_STD_DEFAULT 0
|
||||||
|
#else
|
||||||
|
#define wxUSE_STD_DEFAULT 1
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// Use standard C++ containers to implement wxVector<>, wxStack<>, wxDList<>
|
||||||
|
// and wxHashXXX<> classes. If disabled, wxWidgets own (mostly compatible but
|
||||||
|
// usually more limited) implementations are used which allows to avoid the
|
||||||
|
// dependency on the C++ run-time library.
|
||||||
|
//
|
||||||
|
// Default is 1 if compiler supports it.
|
||||||
|
//
|
||||||
|
// Recommended setting: 1 unless you use a system without good implementation
|
||||||
|
// of STL.
|
||||||
|
#define wxUSE_STD_CONTAINERS wxUSE_STD_DEFAULT
|
||||||
|
|
||||||
|
// Use standard C++ streams if 1 instead of wx streams in some places. If
|
||||||
|
// disabled, wx streams are used everywhere and wxWidgets doesn't depend on the
|
||||||
|
// standard streams library.
|
||||||
|
//
|
||||||
|
// Notice that enabling this does not replace wx streams with std streams
|
||||||
|
// everywhere, in a lot of places wx streams are used no matter what.
|
||||||
|
//
|
||||||
|
// Default is 1 if compiler supports it.
|
||||||
|
//
|
||||||
|
// Recommended setting: 1 if you use the standard streams anyhow and so
|
||||||
|
// dependency on the standard streams library is not a
|
||||||
|
// problem
|
||||||
|
#define wxUSE_STD_IOSTREAM wxUSE_STD_DEFAULT
|
||||||
|
|
||||||
|
// Enable minimal interoperability with the standard C++ string class if 1.
|
||||||
|
// "Minimal" means that wxString can be constructed from std::string or
|
||||||
|
// std::wstring but can't be implicitly converted to them. You need to enable
|
||||||
|
// the option below for the latter.
|
||||||
|
//
|
||||||
|
// Default is 1 for most compilers.
|
||||||
|
//
|
||||||
|
// Recommended setting: 1 unless you want to ensure your program doesn't use
|
||||||
|
// the standard C++ library at all.
|
||||||
|
#define wxUSE_STD_STRING wxUSE_STD_DEFAULT
|
||||||
|
|
||||||
|
// Make wxString as much interchangeable with std::[w]string as possible, in
|
||||||
|
// particular allow implicit conversion of wxString to either of these classes.
|
||||||
|
// This comes at a price (or a benefit, depending on your point of view) of not
|
||||||
|
// allowing implicit conversion to "const char *" and "const wchar_t *".
|
||||||
|
//
|
||||||
|
// Because a lot of existing code relies on these conversions, this option is
|
||||||
|
// disabled by default but can be enabled for your build if you don't care
|
||||||
|
// about compatibility.
|
||||||
|
//
|
||||||
|
// Default is 0 if wxUSE_STL has its default value or 1 if it is enabled.
|
||||||
|
//
|
||||||
|
// Recommended setting: 0 to remain compatible with the official builds of
|
||||||
|
// wxWidgets.
|
||||||
|
#define wxUSE_STD_STRING_CONV_IN_WXSTRING wxUSE_STL
|
||||||
|
|
||||||
|
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
// non GUI features selection
|
// non GUI features selection
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
|
@@ -201,15 +201,6 @@
|
|||||||
// Recommended setting: 0 (this is still work in progress...)
|
// Recommended setting: 0 (this is still work in progress...)
|
||||||
#define wxUSE_EXTENDED_RTTI 0
|
#define wxUSE_EXTENDED_RTTI 0
|
||||||
|
|
||||||
// Set wxUSE_STL to 1 to derive wxList(Foo) and wxArray(Foo) from
|
|
||||||
// std::list<Foo*> and std::vector<Foo*>, with a compatibility interface,
|
|
||||||
// and for wxHashMap to be implemented with templates.
|
|
||||||
//
|
|
||||||
// Default is 0
|
|
||||||
//
|
|
||||||
// Recommended setting: YMMV
|
|
||||||
#define wxUSE_STL 0
|
|
||||||
|
|
||||||
// Support for message/error logging. This includes wxLogXXX() functions and
|
// Support for message/error logging. This includes wxLogXXX() functions and
|
||||||
// wxLog and derived classes. Don't set this to 0 unless you really know what
|
// wxLog and derived classes. Don't set this to 0 unless you really know what
|
||||||
// you are doing.
|
// you are doing.
|
||||||
@@ -261,44 +252,6 @@
|
|||||||
// Recommended setting: 1 as setting it to 0 disables many other things
|
// Recommended setting: 1 as setting it to 0 disables many other things
|
||||||
#define wxUSE_STREAMS 1
|
#define wxUSE_STREAMS 1
|
||||||
|
|
||||||
// This is not a real option but is used as the default value for
|
|
||||||
// wxUSE_STD_IOSTREAM and wxUSE_STD_STRING.
|
|
||||||
//
|
|
||||||
// Currently the Digital Mars and Watcom compilers come without standard C++
|
|
||||||
// library headers by default, wxUSE_STD_STRING can be set to 1 if you do have
|
|
||||||
// them (e.g. from STLPort).
|
|
||||||
//
|
|
||||||
// VC++ 5.0 does include standard C++ library headers, however they produce
|
|
||||||
// many warnings that can't be turned off when compiled at warning level 4.
|
|
||||||
#if defined(__DMC__) || defined(__WATCOMC__) \
|
|
||||||
|| (defined(_MSC_VER) && _MSC_VER < 1200)
|
|
||||||
#define wxUSE_STD_DEFAULT 0
|
|
||||||
#else
|
|
||||||
#define wxUSE_STD_DEFAULT 1
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// Use standard C++ streams if 1 instead of wx streams in some places. If
|
|
||||||
// disabled (default), wx streams are used everywhere and wxWidgets doesn't
|
|
||||||
// depend on the standard streams library.
|
|
||||||
//
|
|
||||||
// Notice that enabling this does not replace wx streams with std streams
|
|
||||||
// everywhere, in a lot of places wx streams are used no matter what.
|
|
||||||
//
|
|
||||||
// Default is 0
|
|
||||||
//
|
|
||||||
// Recommended setting: 1 if you use the standard streams anyhow and so
|
|
||||||
// dependency on the standard streams library is not a
|
|
||||||
// problem
|
|
||||||
#define wxUSE_STD_IOSTREAM wxUSE_STD_DEFAULT
|
|
||||||
|
|
||||||
// Enable conversion to standard C++ string if 1.
|
|
||||||
//
|
|
||||||
// Default is 1 for most compilers.
|
|
||||||
//
|
|
||||||
// Recommended setting: 1 unless you want to ensure your program doesn't use
|
|
||||||
// the standard C++ library at all.
|
|
||||||
#define wxUSE_STD_STRING wxUSE_STD_DEFAULT
|
|
||||||
|
|
||||||
// Support for positional parameters (e.g. %1$d, %2$s ...) in wxVsnprintf.
|
// Support for positional parameters (e.g. %1$d, %2$s ...) in wxVsnprintf.
|
||||||
// Note that if the system's implementation does not support positional
|
// Note that if the system's implementation does not support positional
|
||||||
// parameters, setting this to 1 forces the use of the wxWidgets implementation
|
// parameters, setting this to 1 forces the use of the wxWidgets implementation
|
||||||
@@ -314,6 +267,89 @@
|
|||||||
// Recommended setting: 1 if you want to support multiple languages
|
// Recommended setting: 1 if you want to support multiple languages
|
||||||
#define wxUSE_PRINTF_POS_PARAMS 1
|
#define wxUSE_PRINTF_POS_PARAMS 1
|
||||||
|
|
||||||
|
|
||||||
|
// ----------------------------------------------------------------------------
|
||||||
|
// Interoperability with the standard library.
|
||||||
|
// ----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
// Set wxUSE_STL to 1 to enable maximal interoperability with the standard
|
||||||
|
// library, even at the cost of backwards compatibility.
|
||||||
|
//
|
||||||
|
// Default is 0
|
||||||
|
//
|
||||||
|
// Recommended setting: 0 as the options below already provide a relatively
|
||||||
|
// good level of interoperability and changing this option arguably isn't worth
|
||||||
|
// diverging from the official builds of the library.
|
||||||
|
#define wxUSE_STL 0
|
||||||
|
|
||||||
|
// This is not a real option but is used as the default value for
|
||||||
|
// wxUSE_STD_IOSTREAM, wxUSE_STD_STRING and wxUSE_STD_CONTAINERS.
|
||||||
|
//
|
||||||
|
// Currently the Digital Mars and Watcom compilers come without standard C++
|
||||||
|
// library headers by default, wxUSE_STD_STRING can be set to 1 if you do have
|
||||||
|
// them (e.g. from STLPort).
|
||||||
|
//
|
||||||
|
// VC++ 5.0 does include standard C++ library headers, however they produce
|
||||||
|
// many warnings that can't be turned off when compiled at warning level 4.
|
||||||
|
#if defined(__DMC__) || defined(__WATCOMC__) \
|
||||||
|
|| (defined(_MSC_VER) && _MSC_VER < 1200)
|
||||||
|
#define wxUSE_STD_DEFAULT 0
|
||||||
|
#else
|
||||||
|
#define wxUSE_STD_DEFAULT 1
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// Use standard C++ containers to implement wxVector<>, wxStack<>, wxDList<>
|
||||||
|
// and wxHashXXX<> classes. If disabled, wxWidgets own (mostly compatible but
|
||||||
|
// usually more limited) implementations are used which allows to avoid the
|
||||||
|
// dependency on the C++ run-time library.
|
||||||
|
//
|
||||||
|
// Default is 1 if compiler supports it.
|
||||||
|
//
|
||||||
|
// Recommended setting: 1 unless you use a system without good implementation
|
||||||
|
// of STL.
|
||||||
|
#define wxUSE_STD_CONTAINERS wxUSE_STD_DEFAULT
|
||||||
|
|
||||||
|
// Use standard C++ streams if 1 instead of wx streams in some places. If
|
||||||
|
// disabled, wx streams are used everywhere and wxWidgets doesn't depend on the
|
||||||
|
// standard streams library.
|
||||||
|
//
|
||||||
|
// Notice that enabling this does not replace wx streams with std streams
|
||||||
|
// everywhere, in a lot of places wx streams are used no matter what.
|
||||||
|
//
|
||||||
|
// Default is 1 if compiler supports it.
|
||||||
|
//
|
||||||
|
// Recommended setting: 1 if you use the standard streams anyhow and so
|
||||||
|
// dependency on the standard streams library is not a
|
||||||
|
// problem
|
||||||
|
#define wxUSE_STD_IOSTREAM wxUSE_STD_DEFAULT
|
||||||
|
|
||||||
|
// Enable minimal interoperability with the standard C++ string class if 1.
|
||||||
|
// "Minimal" means that wxString can be constructed from std::string or
|
||||||
|
// std::wstring but can't be implicitly converted to them. You need to enable
|
||||||
|
// the option below for the latter.
|
||||||
|
//
|
||||||
|
// Default is 1 for most compilers.
|
||||||
|
//
|
||||||
|
// Recommended setting: 1 unless you want to ensure your program doesn't use
|
||||||
|
// the standard C++ library at all.
|
||||||
|
#define wxUSE_STD_STRING wxUSE_STD_DEFAULT
|
||||||
|
|
||||||
|
// Make wxString as much interchangeable with std::[w]string as possible, in
|
||||||
|
// particular allow implicit conversion of wxString to either of these classes.
|
||||||
|
// This comes at a price (or a benefit, depending on your point of view) of not
|
||||||
|
// allowing implicit conversion to "const char *" and "const wchar_t *".
|
||||||
|
//
|
||||||
|
// Because a lot of existing code relies on these conversions, this option is
|
||||||
|
// disabled by default but can be enabled for your build if you don't care
|
||||||
|
// about compatibility.
|
||||||
|
//
|
||||||
|
// Default is 0 if wxUSE_STL has its default value or 1 if it is enabled.
|
||||||
|
//
|
||||||
|
// Recommended setting: 0 to remain compatible with the official builds of
|
||||||
|
// wxWidgets.
|
||||||
|
#define wxUSE_STD_STRING_CONV_IN_WXSTRING wxUSE_STL
|
||||||
|
|
||||||
|
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
// non GUI features selection
|
// non GUI features selection
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
|
@@ -201,15 +201,6 @@
|
|||||||
// Recommended setting: 0 (this is still work in progress...)
|
// Recommended setting: 0 (this is still work in progress...)
|
||||||
#define wxUSE_EXTENDED_RTTI 0
|
#define wxUSE_EXTENDED_RTTI 0
|
||||||
|
|
||||||
// Set wxUSE_STL to 1 to derive wxList(Foo) and wxArray(Foo) from
|
|
||||||
// std::list<Foo*> and std::vector<Foo*>, with a compatibility interface,
|
|
||||||
// and for wxHashMap to be implemented with templates.
|
|
||||||
//
|
|
||||||
// Default is 0
|
|
||||||
//
|
|
||||||
// Recommended setting: YMMV
|
|
||||||
#define wxUSE_STL 0
|
|
||||||
|
|
||||||
// Support for message/error logging. This includes wxLogXXX() functions and
|
// Support for message/error logging. This includes wxLogXXX() functions and
|
||||||
// wxLog and derived classes. Don't set this to 0 unless you really know what
|
// wxLog and derived classes. Don't set this to 0 unless you really know what
|
||||||
// you are doing.
|
// you are doing.
|
||||||
@@ -261,44 +252,6 @@
|
|||||||
// Recommended setting: 1 as setting it to 0 disables many other things
|
// Recommended setting: 1 as setting it to 0 disables many other things
|
||||||
#define wxUSE_STREAMS 1
|
#define wxUSE_STREAMS 1
|
||||||
|
|
||||||
// This is not a real option but is used as the default value for
|
|
||||||
// wxUSE_STD_IOSTREAM and wxUSE_STD_STRING.
|
|
||||||
//
|
|
||||||
// Currently the Digital Mars and Watcom compilers come without standard C++
|
|
||||||
// library headers by default, wxUSE_STD_STRING can be set to 1 if you do have
|
|
||||||
// them (e.g. from STLPort).
|
|
||||||
//
|
|
||||||
// VC++ 5.0 does include standard C++ library headers, however they produce
|
|
||||||
// many warnings that can't be turned off when compiled at warning level 4.
|
|
||||||
#if defined(__DMC__) || defined(__WATCOMC__) \
|
|
||||||
|| (defined(_MSC_VER) && _MSC_VER < 1200)
|
|
||||||
#define wxUSE_STD_DEFAULT 0
|
|
||||||
#else
|
|
||||||
#define wxUSE_STD_DEFAULT 1
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// Use standard C++ streams if 1 instead of wx streams in some places. If
|
|
||||||
// disabled (default), wx streams are used everywhere and wxWidgets doesn't
|
|
||||||
// depend on the standard streams library.
|
|
||||||
//
|
|
||||||
// Notice that enabling this does not replace wx streams with std streams
|
|
||||||
// everywhere, in a lot of places wx streams are used no matter what.
|
|
||||||
//
|
|
||||||
// Default is 0
|
|
||||||
//
|
|
||||||
// Recommended setting: 1 if you use the standard streams anyhow and so
|
|
||||||
// dependency on the standard streams library is not a
|
|
||||||
// problem
|
|
||||||
#define wxUSE_STD_IOSTREAM wxUSE_STD_DEFAULT
|
|
||||||
|
|
||||||
// Enable conversion to standard C++ string if 1.
|
|
||||||
//
|
|
||||||
// Default is 1 for most compilers.
|
|
||||||
//
|
|
||||||
// Recommended setting: 1 unless you want to ensure your program doesn't use
|
|
||||||
// the standard C++ library at all.
|
|
||||||
#define wxUSE_STD_STRING wxUSE_STD_DEFAULT
|
|
||||||
|
|
||||||
// Support for positional parameters (e.g. %1$d, %2$s ...) in wxVsnprintf.
|
// Support for positional parameters (e.g. %1$d, %2$s ...) in wxVsnprintf.
|
||||||
// Note that if the system's implementation does not support positional
|
// Note that if the system's implementation does not support positional
|
||||||
// parameters, setting this to 1 forces the use of the wxWidgets implementation
|
// parameters, setting this to 1 forces the use of the wxWidgets implementation
|
||||||
@@ -314,6 +267,89 @@
|
|||||||
// Recommended setting: 1 if you want to support multiple languages
|
// Recommended setting: 1 if you want to support multiple languages
|
||||||
#define wxUSE_PRINTF_POS_PARAMS 1
|
#define wxUSE_PRINTF_POS_PARAMS 1
|
||||||
|
|
||||||
|
|
||||||
|
// ----------------------------------------------------------------------------
|
||||||
|
// Interoperability with the standard library.
|
||||||
|
// ----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
// Set wxUSE_STL to 1 to enable maximal interoperability with the standard
|
||||||
|
// library, even at the cost of backwards compatibility.
|
||||||
|
//
|
||||||
|
// Default is 0
|
||||||
|
//
|
||||||
|
// Recommended setting: 0 as the options below already provide a relatively
|
||||||
|
// good level of interoperability and changing this option arguably isn't worth
|
||||||
|
// diverging from the official builds of the library.
|
||||||
|
#define wxUSE_STL 0
|
||||||
|
|
||||||
|
// This is not a real option but is used as the default value for
|
||||||
|
// wxUSE_STD_IOSTREAM, wxUSE_STD_STRING and wxUSE_STD_CONTAINERS.
|
||||||
|
//
|
||||||
|
// Currently the Digital Mars and Watcom compilers come without standard C++
|
||||||
|
// library headers by default, wxUSE_STD_STRING can be set to 1 if you do have
|
||||||
|
// them (e.g. from STLPort).
|
||||||
|
//
|
||||||
|
// VC++ 5.0 does include standard C++ library headers, however they produce
|
||||||
|
// many warnings that can't be turned off when compiled at warning level 4.
|
||||||
|
#if defined(__DMC__) || defined(__WATCOMC__) \
|
||||||
|
|| (defined(_MSC_VER) && _MSC_VER < 1200)
|
||||||
|
#define wxUSE_STD_DEFAULT 0
|
||||||
|
#else
|
||||||
|
#define wxUSE_STD_DEFAULT 1
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// Use standard C++ containers to implement wxVector<>, wxStack<>, wxDList<>
|
||||||
|
// and wxHashXXX<> classes. If disabled, wxWidgets own (mostly compatible but
|
||||||
|
// usually more limited) implementations are used which allows to avoid the
|
||||||
|
// dependency on the C++ run-time library.
|
||||||
|
//
|
||||||
|
// Default is 1 if compiler supports it.
|
||||||
|
//
|
||||||
|
// Recommended setting: 1 unless you use a system without good implementation
|
||||||
|
// of STL.
|
||||||
|
#define wxUSE_STD_CONTAINERS wxUSE_STD_DEFAULT
|
||||||
|
|
||||||
|
// Use standard C++ streams if 1 instead of wx streams in some places. If
|
||||||
|
// disabled, wx streams are used everywhere and wxWidgets doesn't depend on the
|
||||||
|
// standard streams library.
|
||||||
|
//
|
||||||
|
// Notice that enabling this does not replace wx streams with std streams
|
||||||
|
// everywhere, in a lot of places wx streams are used no matter what.
|
||||||
|
//
|
||||||
|
// Default is 1 if compiler supports it.
|
||||||
|
//
|
||||||
|
// Recommended setting: 1 if you use the standard streams anyhow and so
|
||||||
|
// dependency on the standard streams library is not a
|
||||||
|
// problem
|
||||||
|
#define wxUSE_STD_IOSTREAM wxUSE_STD_DEFAULT
|
||||||
|
|
||||||
|
// Enable minimal interoperability with the standard C++ string class if 1.
|
||||||
|
// "Minimal" means that wxString can be constructed from std::string or
|
||||||
|
// std::wstring but can't be implicitly converted to them. You need to enable
|
||||||
|
// the option below for the latter.
|
||||||
|
//
|
||||||
|
// Default is 1 for most compilers.
|
||||||
|
//
|
||||||
|
// Recommended setting: 1 unless you want to ensure your program doesn't use
|
||||||
|
// the standard C++ library at all.
|
||||||
|
#define wxUSE_STD_STRING wxUSE_STD_DEFAULT
|
||||||
|
|
||||||
|
// Make wxString as much interchangeable with std::[w]string as possible, in
|
||||||
|
// particular allow implicit conversion of wxString to either of these classes.
|
||||||
|
// This comes at a price (or a benefit, depending on your point of view) of not
|
||||||
|
// allowing implicit conversion to "const char *" and "const wchar_t *".
|
||||||
|
//
|
||||||
|
// Because a lot of existing code relies on these conversions, this option is
|
||||||
|
// disabled by default but can be enabled for your build if you don't care
|
||||||
|
// about compatibility.
|
||||||
|
//
|
||||||
|
// Default is 0 if wxUSE_STL has its default value or 1 if it is enabled.
|
||||||
|
//
|
||||||
|
// Recommended setting: 0 to remain compatible with the official builds of
|
||||||
|
// wxWidgets.
|
||||||
|
#define wxUSE_STD_STRING_CONV_IN_WXSTRING wxUSE_STL
|
||||||
|
|
||||||
|
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
// non GUI features selection
|
// non GUI features selection
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
|
@@ -202,15 +202,6 @@
|
|||||||
// Recommended setting: 0 (this is still work in progress...)
|
// Recommended setting: 0 (this is still work in progress...)
|
||||||
#define wxUSE_EXTENDED_RTTI 0
|
#define wxUSE_EXTENDED_RTTI 0
|
||||||
|
|
||||||
// Set wxUSE_STL to 1 to derive wxList(Foo) and wxArray(Foo) from
|
|
||||||
// std::list<Foo*> and std::vector<Foo*>, with a compatibility interface,
|
|
||||||
// and for wxHashMap to be implemented with templates.
|
|
||||||
//
|
|
||||||
// Default is 0
|
|
||||||
//
|
|
||||||
// Recommended setting: YMMV
|
|
||||||
#define wxUSE_STL 0
|
|
||||||
|
|
||||||
// Support for message/error logging. This includes wxLogXXX() functions and
|
// Support for message/error logging. This includes wxLogXXX() functions and
|
||||||
// wxLog and derived classes. Don't set this to 0 unless you really know what
|
// wxLog and derived classes. Don't set this to 0 unless you really know what
|
||||||
// you are doing.
|
// you are doing.
|
||||||
@@ -262,44 +253,6 @@
|
|||||||
// Recommended setting: 1 as setting it to 0 disables many other things
|
// Recommended setting: 1 as setting it to 0 disables many other things
|
||||||
#define wxUSE_STREAMS 1
|
#define wxUSE_STREAMS 1
|
||||||
|
|
||||||
// This is not a real option but is used as the default value for
|
|
||||||
// wxUSE_STD_IOSTREAM and wxUSE_STD_STRING.
|
|
||||||
//
|
|
||||||
// Currently the Digital Mars and Watcom compilers come without standard C++
|
|
||||||
// library headers by default, wxUSE_STD_STRING can be set to 1 if you do have
|
|
||||||
// them (e.g. from STLPort).
|
|
||||||
//
|
|
||||||
// VC++ 5.0 does include standard C++ library headers, however they produce
|
|
||||||
// many warnings that can't be turned off when compiled at warning level 4.
|
|
||||||
#if defined(__DMC__) || defined(__WATCOMC__) \
|
|
||||||
|| (defined(_MSC_VER) && _MSC_VER < 1200)
|
|
||||||
#define wxUSE_STD_DEFAULT 0
|
|
||||||
#else
|
|
||||||
#define wxUSE_STD_DEFAULT 1
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// Use standard C++ streams if 1 instead of wx streams in some places. If
|
|
||||||
// disabled (default), wx streams are used everywhere and wxWidgets doesn't
|
|
||||||
// depend on the standard streams library.
|
|
||||||
//
|
|
||||||
// Notice that enabling this does not replace wx streams with std streams
|
|
||||||
// everywhere, in a lot of places wx streams are used no matter what.
|
|
||||||
//
|
|
||||||
// Default is 0
|
|
||||||
//
|
|
||||||
// Recommended setting: 1 if you use the standard streams anyhow and so
|
|
||||||
// dependency on the standard streams library is not a
|
|
||||||
// problem
|
|
||||||
#define wxUSE_STD_IOSTREAM wxUSE_STD_DEFAULT
|
|
||||||
|
|
||||||
// Enable conversion to standard C++ string if 1.
|
|
||||||
//
|
|
||||||
// Default is 1 for most compilers.
|
|
||||||
//
|
|
||||||
// Recommended setting: 1 unless you want to ensure your program doesn't use
|
|
||||||
// the standard C++ library at all.
|
|
||||||
#define wxUSE_STD_STRING wxUSE_STD_DEFAULT
|
|
||||||
|
|
||||||
// Support for positional parameters (e.g. %1$d, %2$s ...) in wxVsnprintf.
|
// Support for positional parameters (e.g. %1$d, %2$s ...) in wxVsnprintf.
|
||||||
// Note that if the system's implementation does not support positional
|
// Note that if the system's implementation does not support positional
|
||||||
// parameters, setting this to 1 forces the use of the wxWidgets implementation
|
// parameters, setting this to 1 forces the use of the wxWidgets implementation
|
||||||
@@ -315,6 +268,89 @@
|
|||||||
// Recommended setting: 1 if you want to support multiple languages
|
// Recommended setting: 1 if you want to support multiple languages
|
||||||
#define wxUSE_PRINTF_POS_PARAMS 1
|
#define wxUSE_PRINTF_POS_PARAMS 1
|
||||||
|
|
||||||
|
|
||||||
|
// ----------------------------------------------------------------------------
|
||||||
|
// Interoperability with the standard library.
|
||||||
|
// ----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
// Set wxUSE_STL to 1 to enable maximal interoperability with the standard
|
||||||
|
// library, even at the cost of backwards compatibility.
|
||||||
|
//
|
||||||
|
// Default is 0
|
||||||
|
//
|
||||||
|
// Recommended setting: 0 as the options below already provide a relatively
|
||||||
|
// good level of interoperability and changing this option arguably isn't worth
|
||||||
|
// diverging from the official builds of the library.
|
||||||
|
#define wxUSE_STL 0
|
||||||
|
|
||||||
|
// This is not a real option but is used as the default value for
|
||||||
|
// wxUSE_STD_IOSTREAM, wxUSE_STD_STRING and wxUSE_STD_CONTAINERS.
|
||||||
|
//
|
||||||
|
// Currently the Digital Mars and Watcom compilers come without standard C++
|
||||||
|
// library headers by default, wxUSE_STD_STRING can be set to 1 if you do have
|
||||||
|
// them (e.g. from STLPort).
|
||||||
|
//
|
||||||
|
// VC++ 5.0 does include standard C++ library headers, however they produce
|
||||||
|
// many warnings that can't be turned off when compiled at warning level 4.
|
||||||
|
#if defined(__DMC__) || defined(__WATCOMC__) \
|
||||||
|
|| (defined(_MSC_VER) && _MSC_VER < 1200)
|
||||||
|
#define wxUSE_STD_DEFAULT 0
|
||||||
|
#else
|
||||||
|
#define wxUSE_STD_DEFAULT 1
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// Use standard C++ containers to implement wxVector<>, wxStack<>, wxDList<>
|
||||||
|
// and wxHashXXX<> classes. If disabled, wxWidgets own (mostly compatible but
|
||||||
|
// usually more limited) implementations are used which allows to avoid the
|
||||||
|
// dependency on the C++ run-time library.
|
||||||
|
//
|
||||||
|
// Default is 1 if compiler supports it.
|
||||||
|
//
|
||||||
|
// Recommended setting: 1 unless you use a system without good implementation
|
||||||
|
// of STL.
|
||||||
|
#define wxUSE_STD_CONTAINERS wxUSE_STD_DEFAULT
|
||||||
|
|
||||||
|
// Use standard C++ streams if 1 instead of wx streams in some places. If
|
||||||
|
// disabled, wx streams are used everywhere and wxWidgets doesn't depend on the
|
||||||
|
// standard streams library.
|
||||||
|
//
|
||||||
|
// Notice that enabling this does not replace wx streams with std streams
|
||||||
|
// everywhere, in a lot of places wx streams are used no matter what.
|
||||||
|
//
|
||||||
|
// Default is 1 if compiler supports it.
|
||||||
|
//
|
||||||
|
// Recommended setting: 1 if you use the standard streams anyhow and so
|
||||||
|
// dependency on the standard streams library is not a
|
||||||
|
// problem
|
||||||
|
#define wxUSE_STD_IOSTREAM wxUSE_STD_DEFAULT
|
||||||
|
|
||||||
|
// Enable minimal interoperability with the standard C++ string class if 1.
|
||||||
|
// "Minimal" means that wxString can be constructed from std::string or
|
||||||
|
// std::wstring but can't be implicitly converted to them. You need to enable
|
||||||
|
// the option below for the latter.
|
||||||
|
//
|
||||||
|
// Default is 1 for most compilers.
|
||||||
|
//
|
||||||
|
// Recommended setting: 1 unless you want to ensure your program doesn't use
|
||||||
|
// the standard C++ library at all.
|
||||||
|
#define wxUSE_STD_STRING wxUSE_STD_DEFAULT
|
||||||
|
|
||||||
|
// Make wxString as much interchangeable with std::[w]string as possible, in
|
||||||
|
// particular allow implicit conversion of wxString to either of these classes.
|
||||||
|
// This comes at a price (or a benefit, depending on your point of view) of not
|
||||||
|
// allowing implicit conversion to "const char *" and "const wchar_t *".
|
||||||
|
//
|
||||||
|
// Because a lot of existing code relies on these conversions, this option is
|
||||||
|
// disabled by default but can be enabled for your build if you don't care
|
||||||
|
// about compatibility.
|
||||||
|
//
|
||||||
|
// Default is 0 if wxUSE_STL has its default value or 1 if it is enabled.
|
||||||
|
//
|
||||||
|
// Recommended setting: 0 to remain compatible with the official builds of
|
||||||
|
// wxWidgets.
|
||||||
|
#define wxUSE_STD_STRING_CONV_IN_WXSTRING wxUSE_STL
|
||||||
|
|
||||||
|
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
// non GUI features selection
|
// non GUI features selection
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
|
@@ -201,15 +201,6 @@
|
|||||||
// Recommended setting: 0 (this is still work in progress...)
|
// Recommended setting: 0 (this is still work in progress...)
|
||||||
#define wxUSE_EXTENDED_RTTI 0
|
#define wxUSE_EXTENDED_RTTI 0
|
||||||
|
|
||||||
// Set wxUSE_STL to 1 to derive wxList(Foo) and wxArray(Foo) from
|
|
||||||
// std::list<Foo*> and std::vector<Foo*>, with a compatibility interface,
|
|
||||||
// and for wxHashMap to be implemented with templates.
|
|
||||||
//
|
|
||||||
// Default is 0
|
|
||||||
//
|
|
||||||
// Recommended setting: YMMV
|
|
||||||
#define wxUSE_STL 0
|
|
||||||
|
|
||||||
// Support for message/error logging. This includes wxLogXXX() functions and
|
// Support for message/error logging. This includes wxLogXXX() functions and
|
||||||
// wxLog and derived classes. Don't set this to 0 unless you really know what
|
// wxLog and derived classes. Don't set this to 0 unless you really know what
|
||||||
// you are doing.
|
// you are doing.
|
||||||
@@ -261,44 +252,6 @@
|
|||||||
// Recommended setting: 1 as setting it to 0 disables many other things
|
// Recommended setting: 1 as setting it to 0 disables many other things
|
||||||
#define wxUSE_STREAMS 1
|
#define wxUSE_STREAMS 1
|
||||||
|
|
||||||
// This is not a real option but is used as the default value for
|
|
||||||
// wxUSE_STD_IOSTREAM and wxUSE_STD_STRING.
|
|
||||||
//
|
|
||||||
// Currently the Digital Mars and Watcom compilers come without standard C++
|
|
||||||
// library headers by default, wxUSE_STD_STRING can be set to 1 if you do have
|
|
||||||
// them (e.g. from STLPort).
|
|
||||||
//
|
|
||||||
// VC++ 5.0 does include standard C++ library headers, however they produce
|
|
||||||
// many warnings that can't be turned off when compiled at warning level 4.
|
|
||||||
#if defined(__DMC__) || defined(__WATCOMC__) \
|
|
||||||
|| (defined(_MSC_VER) && _MSC_VER < 1200)
|
|
||||||
#define wxUSE_STD_DEFAULT 0
|
|
||||||
#else
|
|
||||||
#define wxUSE_STD_DEFAULT 1
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// Use standard C++ streams if 1 instead of wx streams in some places. If
|
|
||||||
// disabled (default), wx streams are used everywhere and wxWidgets doesn't
|
|
||||||
// depend on the standard streams library.
|
|
||||||
//
|
|
||||||
// Notice that enabling this does not replace wx streams with std streams
|
|
||||||
// everywhere, in a lot of places wx streams are used no matter what.
|
|
||||||
//
|
|
||||||
// Default is 0
|
|
||||||
//
|
|
||||||
// Recommended setting: 1 if you use the standard streams anyhow and so
|
|
||||||
// dependency on the standard streams library is not a
|
|
||||||
// problem
|
|
||||||
#define wxUSE_STD_IOSTREAM wxUSE_STD_DEFAULT
|
|
||||||
|
|
||||||
// Enable conversion to standard C++ string if 1.
|
|
||||||
//
|
|
||||||
// Default is 1 for most compilers.
|
|
||||||
//
|
|
||||||
// Recommended setting: 1 unless you want to ensure your program doesn't use
|
|
||||||
// the standard C++ library at all.
|
|
||||||
#define wxUSE_STD_STRING wxUSE_STD_DEFAULT
|
|
||||||
|
|
||||||
// Support for positional parameters (e.g. %1$d, %2$s ...) in wxVsnprintf.
|
// Support for positional parameters (e.g. %1$d, %2$s ...) in wxVsnprintf.
|
||||||
// Note that if the system's implementation does not support positional
|
// Note that if the system's implementation does not support positional
|
||||||
// parameters, setting this to 1 forces the use of the wxWidgets implementation
|
// parameters, setting this to 1 forces the use of the wxWidgets implementation
|
||||||
@@ -314,6 +267,89 @@
|
|||||||
// Recommended setting: 1 if you want to support multiple languages
|
// Recommended setting: 1 if you want to support multiple languages
|
||||||
#define wxUSE_PRINTF_POS_PARAMS 1
|
#define wxUSE_PRINTF_POS_PARAMS 1
|
||||||
|
|
||||||
|
|
||||||
|
// ----------------------------------------------------------------------------
|
||||||
|
// Interoperability with the standard library.
|
||||||
|
// ----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
// Set wxUSE_STL to 1 to enable maximal interoperability with the standard
|
||||||
|
// library, even at the cost of backwards compatibility.
|
||||||
|
//
|
||||||
|
// Default is 0
|
||||||
|
//
|
||||||
|
// Recommended setting: 0 as the options below already provide a relatively
|
||||||
|
// good level of interoperability and changing this option arguably isn't worth
|
||||||
|
// diverging from the official builds of the library.
|
||||||
|
#define wxUSE_STL 0
|
||||||
|
|
||||||
|
// This is not a real option but is used as the default value for
|
||||||
|
// wxUSE_STD_IOSTREAM, wxUSE_STD_STRING and wxUSE_STD_CONTAINERS.
|
||||||
|
//
|
||||||
|
// Currently the Digital Mars and Watcom compilers come without standard C++
|
||||||
|
// library headers by default, wxUSE_STD_STRING can be set to 1 if you do have
|
||||||
|
// them (e.g. from STLPort).
|
||||||
|
//
|
||||||
|
// VC++ 5.0 does include standard C++ library headers, however they produce
|
||||||
|
// many warnings that can't be turned off when compiled at warning level 4.
|
||||||
|
#if defined(__DMC__) || defined(__WATCOMC__) \
|
||||||
|
|| (defined(_MSC_VER) && _MSC_VER < 1200)
|
||||||
|
#define wxUSE_STD_DEFAULT 0
|
||||||
|
#else
|
||||||
|
#define wxUSE_STD_DEFAULT 1
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// Use standard C++ containers to implement wxVector<>, wxStack<>, wxDList<>
|
||||||
|
// and wxHashXXX<> classes. If disabled, wxWidgets own (mostly compatible but
|
||||||
|
// usually more limited) implementations are used which allows to avoid the
|
||||||
|
// dependency on the C++ run-time library.
|
||||||
|
//
|
||||||
|
// Default is 1 if compiler supports it.
|
||||||
|
//
|
||||||
|
// Recommended setting: 1 unless you use a system without good implementation
|
||||||
|
// of STL.
|
||||||
|
#define wxUSE_STD_CONTAINERS wxUSE_STD_DEFAULT
|
||||||
|
|
||||||
|
// Use standard C++ streams if 1 instead of wx streams in some places. If
|
||||||
|
// disabled, wx streams are used everywhere and wxWidgets doesn't depend on the
|
||||||
|
// standard streams library.
|
||||||
|
//
|
||||||
|
// Notice that enabling this does not replace wx streams with std streams
|
||||||
|
// everywhere, in a lot of places wx streams are used no matter what.
|
||||||
|
//
|
||||||
|
// Default is 1 if compiler supports it.
|
||||||
|
//
|
||||||
|
// Recommended setting: 1 if you use the standard streams anyhow and so
|
||||||
|
// dependency on the standard streams library is not a
|
||||||
|
// problem
|
||||||
|
#define wxUSE_STD_IOSTREAM wxUSE_STD_DEFAULT
|
||||||
|
|
||||||
|
// Enable minimal interoperability with the standard C++ string class if 1.
|
||||||
|
// "Minimal" means that wxString can be constructed from std::string or
|
||||||
|
// std::wstring but can't be implicitly converted to them. You need to enable
|
||||||
|
// the option below for the latter.
|
||||||
|
//
|
||||||
|
// Default is 1 for most compilers.
|
||||||
|
//
|
||||||
|
// Recommended setting: 1 unless you want to ensure your program doesn't use
|
||||||
|
// the standard C++ library at all.
|
||||||
|
#define wxUSE_STD_STRING wxUSE_STD_DEFAULT
|
||||||
|
|
||||||
|
// Make wxString as much interchangeable with std::[w]string as possible, in
|
||||||
|
// particular allow implicit conversion of wxString to either of these classes.
|
||||||
|
// This comes at a price (or a benefit, depending on your point of view) of not
|
||||||
|
// allowing implicit conversion to "const char *" and "const wchar_t *".
|
||||||
|
//
|
||||||
|
// Because a lot of existing code relies on these conversions, this option is
|
||||||
|
// disabled by default but can be enabled for your build if you don't care
|
||||||
|
// about compatibility.
|
||||||
|
//
|
||||||
|
// Default is 0 if wxUSE_STL has its default value or 1 if it is enabled.
|
||||||
|
//
|
||||||
|
// Recommended setting: 0 to remain compatible with the official builds of
|
||||||
|
// wxWidgets.
|
||||||
|
#define wxUSE_STD_STRING_CONV_IN_WXSTRING wxUSE_STL
|
||||||
|
|
||||||
|
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
// non GUI features selection
|
// non GUI features selection
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
|
@@ -197,15 +197,6 @@
|
|||||||
// Recommended setting: 0 (this is still work in progress...)
|
// Recommended setting: 0 (this is still work in progress...)
|
||||||
#define wxUSE_EXTENDED_RTTI 0
|
#define wxUSE_EXTENDED_RTTI 0
|
||||||
|
|
||||||
// Set wxUSE_STL to 1 to derive wxList(Foo) and wxArray(Foo) from
|
|
||||||
// std::list<Foo*> and std::vector<Foo*>, with a compatibility interface,
|
|
||||||
// and for wxHashMap to be implemented with templates.
|
|
||||||
//
|
|
||||||
// Default is 0
|
|
||||||
//
|
|
||||||
// Recommended setting: YMMV
|
|
||||||
#define wxUSE_STL 0
|
|
||||||
|
|
||||||
// Support for message/error logging. This includes wxLogXXX() functions and
|
// Support for message/error logging. This includes wxLogXXX() functions and
|
||||||
// wxLog and derived classes. Don't set this to 0 unless you really know what
|
// wxLog and derived classes. Don't set this to 0 unless you really know what
|
||||||
// you are doing.
|
// you are doing.
|
||||||
@@ -257,44 +248,6 @@
|
|||||||
// Recommended setting: 1 as setting it to 0 disables many other things
|
// Recommended setting: 1 as setting it to 0 disables many other things
|
||||||
#define wxUSE_STREAMS 1
|
#define wxUSE_STREAMS 1
|
||||||
|
|
||||||
// This is not a real option but is used as the default value for
|
|
||||||
// wxUSE_STD_IOSTREAM and wxUSE_STD_STRING.
|
|
||||||
//
|
|
||||||
// Currently the Digital Mars and Watcom compilers come without standard C++
|
|
||||||
// library headers by default, wxUSE_STD_STRING can be set to 1 if you do have
|
|
||||||
// them (e.g. from STLPort).
|
|
||||||
//
|
|
||||||
// VC++ 5.0 does include standard C++ library headers, however they produce
|
|
||||||
// many warnings that can't be turned off when compiled at warning level 4.
|
|
||||||
#if defined(__DMC__) || defined(__WATCOMC__) \
|
|
||||||
|| (defined(_MSC_VER) && _MSC_VER < 1200)
|
|
||||||
#define wxUSE_STD_DEFAULT 0
|
|
||||||
#else
|
|
||||||
#define wxUSE_STD_DEFAULT 1
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// Use standard C++ streams if 1 instead of wx streams in some places. If
|
|
||||||
// disabled (default), wx streams are used everywhere and wxWidgets doesn't
|
|
||||||
// depend on the standard streams library.
|
|
||||||
//
|
|
||||||
// Notice that enabling this does not replace wx streams with std streams
|
|
||||||
// everywhere, in a lot of places wx streams are used no matter what.
|
|
||||||
//
|
|
||||||
// Default is 0
|
|
||||||
//
|
|
||||||
// Recommended setting: 1 if you use the standard streams anyhow and so
|
|
||||||
// dependency on the standard streams library is not a
|
|
||||||
// problem
|
|
||||||
#define wxUSE_STD_IOSTREAM wxUSE_STD_DEFAULT
|
|
||||||
|
|
||||||
// Enable conversion to standard C++ string if 1.
|
|
||||||
//
|
|
||||||
// Default is 1 for most compilers.
|
|
||||||
//
|
|
||||||
// Recommended setting: 1 unless you want to ensure your program doesn't use
|
|
||||||
// the standard C++ library at all.
|
|
||||||
#define wxUSE_STD_STRING wxUSE_STD_DEFAULT
|
|
||||||
|
|
||||||
// Support for positional parameters (e.g. %1$d, %2$s ...) in wxVsnprintf.
|
// Support for positional parameters (e.g. %1$d, %2$s ...) in wxVsnprintf.
|
||||||
// Note that if the system's implementation does not support positional
|
// Note that if the system's implementation does not support positional
|
||||||
// parameters, setting this to 1 forces the use of the wxWidgets implementation
|
// parameters, setting this to 1 forces the use of the wxWidgets implementation
|
||||||
@@ -310,6 +263,89 @@
|
|||||||
// Recommended setting: 1 if you want to support multiple languages
|
// Recommended setting: 1 if you want to support multiple languages
|
||||||
#define wxUSE_PRINTF_POS_PARAMS 1
|
#define wxUSE_PRINTF_POS_PARAMS 1
|
||||||
|
|
||||||
|
|
||||||
|
// ----------------------------------------------------------------------------
|
||||||
|
// Interoperability with the standard library.
|
||||||
|
// ----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
// Set wxUSE_STL to 1 to enable maximal interoperability with the standard
|
||||||
|
// library, even at the cost of backwards compatibility.
|
||||||
|
//
|
||||||
|
// Default is 0
|
||||||
|
//
|
||||||
|
// Recommended setting: 0 as the options below already provide a relatively
|
||||||
|
// good level of interoperability and changing this option arguably isn't worth
|
||||||
|
// diverging from the official builds of the library.
|
||||||
|
#define wxUSE_STL 0
|
||||||
|
|
||||||
|
// This is not a real option but is used as the default value for
|
||||||
|
// wxUSE_STD_IOSTREAM, wxUSE_STD_STRING and wxUSE_STD_CONTAINERS.
|
||||||
|
//
|
||||||
|
// Currently the Digital Mars and Watcom compilers come without standard C++
|
||||||
|
// library headers by default, wxUSE_STD_STRING can be set to 1 if you do have
|
||||||
|
// them (e.g. from STLPort).
|
||||||
|
//
|
||||||
|
// VC++ 5.0 does include standard C++ library headers, however they produce
|
||||||
|
// many warnings that can't be turned off when compiled at warning level 4.
|
||||||
|
#if defined(__DMC__) || defined(__WATCOMC__) \
|
||||||
|
|| (defined(_MSC_VER) && _MSC_VER < 1200)
|
||||||
|
#define wxUSE_STD_DEFAULT 0
|
||||||
|
#else
|
||||||
|
#define wxUSE_STD_DEFAULT 1
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// Use standard C++ containers to implement wxVector<>, wxStack<>, wxDList<>
|
||||||
|
// and wxHashXXX<> classes. If disabled, wxWidgets own (mostly compatible but
|
||||||
|
// usually more limited) implementations are used which allows to avoid the
|
||||||
|
// dependency on the C++ run-time library.
|
||||||
|
//
|
||||||
|
// Default is 1 if compiler supports it.
|
||||||
|
//
|
||||||
|
// Recommended setting: 1 unless you use a system without good implementation
|
||||||
|
// of STL.
|
||||||
|
#define wxUSE_STD_CONTAINERS wxUSE_STD_DEFAULT
|
||||||
|
|
||||||
|
// Use standard C++ streams if 1 instead of wx streams in some places. If
|
||||||
|
// disabled, wx streams are used everywhere and wxWidgets doesn't depend on the
|
||||||
|
// standard streams library.
|
||||||
|
//
|
||||||
|
// Notice that enabling this does not replace wx streams with std streams
|
||||||
|
// everywhere, in a lot of places wx streams are used no matter what.
|
||||||
|
//
|
||||||
|
// Default is 1 if compiler supports it.
|
||||||
|
//
|
||||||
|
// Recommended setting: 1 if you use the standard streams anyhow and so
|
||||||
|
// dependency on the standard streams library is not a
|
||||||
|
// problem
|
||||||
|
#define wxUSE_STD_IOSTREAM wxUSE_STD_DEFAULT
|
||||||
|
|
||||||
|
// Enable minimal interoperability with the standard C++ string class if 1.
|
||||||
|
// "Minimal" means that wxString can be constructed from std::string or
|
||||||
|
// std::wstring but can't be implicitly converted to them. You need to enable
|
||||||
|
// the option below for the latter.
|
||||||
|
//
|
||||||
|
// Default is 1 for most compilers.
|
||||||
|
//
|
||||||
|
// Recommended setting: 1 unless you want to ensure your program doesn't use
|
||||||
|
// the standard C++ library at all.
|
||||||
|
#define wxUSE_STD_STRING wxUSE_STD_DEFAULT
|
||||||
|
|
||||||
|
// Make wxString as much interchangeable with std::[w]string as possible, in
|
||||||
|
// particular allow implicit conversion of wxString to either of these classes.
|
||||||
|
// This comes at a price (or a benefit, depending on your point of view) of not
|
||||||
|
// allowing implicit conversion to "const char *" and "const wchar_t *".
|
||||||
|
//
|
||||||
|
// Because a lot of existing code relies on these conversions, this option is
|
||||||
|
// disabled by default but can be enabled for your build if you don't care
|
||||||
|
// about compatibility.
|
||||||
|
//
|
||||||
|
// Default is 0 if wxUSE_STL has its default value or 1 if it is enabled.
|
||||||
|
//
|
||||||
|
// Recommended setting: 0 to remain compatible with the official builds of
|
||||||
|
// wxWidgets.
|
||||||
|
#define wxUSE_STD_STRING_CONV_IN_WXSTRING wxUSE_STL
|
||||||
|
|
||||||
|
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
// non GUI features selection
|
// non GUI features selection
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
|
@@ -13,12 +13,12 @@
|
|||||||
|
|
||||||
#include "wx/vector.h"
|
#include "wx/vector.h"
|
||||||
|
|
||||||
#if wxUSE_STL
|
#if wxUSE_STD_CONTAINERS
|
||||||
|
|
||||||
#include <stack>
|
#include <stack>
|
||||||
#define wxStack std::stack
|
#define wxStack std::stack
|
||||||
|
|
||||||
#else // !wxUSE_STL
|
#else // !wxUSE_STD_CONTAINERS
|
||||||
|
|
||||||
// Notice that unlike std::stack, wxStack currently always uses wxVector and
|
// Notice that unlike std::stack, wxStack currently always uses wxVector and
|
||||||
// can't be used with any other underlying container type.
|
// can't be used with any other underlying container type.
|
||||||
@@ -53,7 +53,7 @@ private:
|
|||||||
container_type m_cont;
|
container_type m_cont;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // wxUSE_STL/!wxUSE_STL
|
#endif // wxUSE_STD_CONTAINERS/!wxUSE_STD_CONTAINERS
|
||||||
|
|
||||||
|
|
||||||
// Deprecated macro-based class for compatibility only, don't use any more.
|
// Deprecated macro-based class for compatibility only, don't use any more.
|
||||||
|
@@ -1345,12 +1345,13 @@ public:
|
|||||||
}
|
}
|
||||||
#endif // wxUSE_STRING_POS_CACHE
|
#endif // wxUSE_STRING_POS_CACHE
|
||||||
|
|
||||||
// even if we're not built with wxUSE_STL == 1 it is very convenient to allow
|
// even if we're not built with wxUSE_STD_STRING_CONV_IN_WXSTRING == 1 it is
|
||||||
// implicit conversions from std::string to wxString and vice verse as this
|
// very convenient to allow implicit conversions from std::string to wxString
|
||||||
// allows to use the same strings in non-GUI and GUI code, however we don't
|
// and vice verse as this allows to use the same strings in non-GUI and GUI
|
||||||
// want to unconditionally add this ctor as it would make wx lib dependent on
|
// code, however we don't want to unconditionally add this ctor as it would
|
||||||
// libstdc++ on some Linux versions which is bad, so instead we ask the
|
// make wx lib dependent on libstdc++ on some Linux versions which is bad, so
|
||||||
// client code to define this wxUSE_STD_STRING symbol if they need it
|
// instead we ask the client code to define this wxUSE_STD_STRING symbol if
|
||||||
|
// they need it
|
||||||
#if wxUSE_STD_STRING
|
#if wxUSE_STD_STRING
|
||||||
#if wxUSE_UNICODE_WCHAR
|
#if wxUSE_UNICODE_WCHAR
|
||||||
wxString(const wxStdWideString& str) : m_impl(str) {}
|
wxString(const wxStdWideString& str) : m_impl(str) {}
|
||||||
@@ -1368,10 +1369,8 @@ public:
|
|||||||
#endif
|
#endif
|
||||||
#endif // wxUSE_STD_STRING
|
#endif // wxUSE_STD_STRING
|
||||||
|
|
||||||
// Unlike ctor from std::string, we provide conversion to std::string only
|
// Also always provide explicit conversions to std::[w]string in any case,
|
||||||
// if wxUSE_STL and not merely wxUSE_STD_STRING (which is on by default),
|
// see below for the implicit ones.
|
||||||
// because it conflicts with operator const char/wchar_t* but we still
|
|
||||||
// provide explicit conversions to std::[w]string for convenience in any case
|
|
||||||
#if wxUSE_STD_STRING
|
#if wxUSE_STD_STRING
|
||||||
// We can avoid a copy if we already use this string type internally,
|
// We can avoid a copy if we already use this string type internally,
|
||||||
// otherwise we create a copy on the fly:
|
// otherwise we create a copy on the fly:
|
||||||
@@ -1408,13 +1407,14 @@ public:
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if wxUSE_STL
|
#if wxUSE_STD_STRING_CONV_IN_WXSTRING
|
||||||
// In wxUSE_STL case we also provide implicit conversions as there is no
|
// Implicit conversions to std::[w]string are not provided by default as
|
||||||
// ambiguity with the const char/wchar_t* ones as they are disabled in this
|
// they conflict with the implicit conversions to "const char/wchar_t *"
|
||||||
// build (for consistency with std::basic_string<>)
|
// which we use for backwards compatibility but do provide them if
|
||||||
|
// explicitly requested.
|
||||||
operator wxStringToStdStringRetType() const { return ToStdString(); }
|
operator wxStringToStdStringRetType() const { return ToStdString(); }
|
||||||
operator wxStringToStdWstringRetType() const { return ToStdWstring(); }
|
operator wxStringToStdWstringRetType() const { return ToStdWstring(); }
|
||||||
#endif // wxUSE_STL
|
#endif // wxUSE_STD_STRING_CONV_IN_WXSTRING
|
||||||
|
|
||||||
#undef wxStringToStdStringRetType
|
#undef wxStringToStdStringRetType
|
||||||
#undef wxStringToStdWstringRetType
|
#undef wxStringToStdWstringRetType
|
||||||
@@ -1654,11 +1654,12 @@ public:
|
|||||||
operator wxCStrData() const { return c_str(); }
|
operator wxCStrData() const { return c_str(); }
|
||||||
|
|
||||||
// the first two operators conflict with operators for conversion to
|
// the first two operators conflict with operators for conversion to
|
||||||
// std::string and they must be disabled in STL build; the next one only
|
// std::string and they must be disabled if those conversions are enabled;
|
||||||
// makes sense if conversions to char* are also defined and not defining it
|
// the next one only makes sense if conversions to char* are also defined
|
||||||
// in STL build also helps us to get more clear error messages for the code
|
// and not defining it in STL build also helps us to get more clear error
|
||||||
// which relies on implicit conversion to char* in STL build
|
// messages for the code which relies on implicit conversion to char* in
|
||||||
#if !wxUSE_STL
|
// STL build
|
||||||
|
#if !wxUSE_STD_STRING_CONV_IN_WXSTRING
|
||||||
operator const char*() const { return c_str(); }
|
operator const char*() const { return c_str(); }
|
||||||
operator const wchar_t*() const { return c_str(); }
|
operator const wchar_t*() const { return c_str(); }
|
||||||
|
|
||||||
@@ -1666,7 +1667,7 @@ public:
|
|||||||
// wxWidgets versions: this is the same as conversion to const char * so it
|
// wxWidgets versions: this is the same as conversion to const char * so it
|
||||||
// may fail!
|
// may fail!
|
||||||
operator const void*() const { return c_str(); }
|
operator const void*() const { return c_str(); }
|
||||||
#endif // wxUSE_STL
|
#endif // !wxUSE_STD_STRING_CONV_IN_WXSTRING
|
||||||
|
|
||||||
// identical to c_str(), for MFC compatibility
|
// identical to c_str(), for MFC compatibility
|
||||||
const wxCStrData GetData() const { return c_str(); }
|
const wxCStrData GetData() const { return c_str(); }
|
||||||
|
@@ -11,7 +11,7 @@
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
This header implements std::string-like string class, wxStringImpl, that is
|
This header implements std::string-like string class, wxStringImpl, that is
|
||||||
used by wxString to store the data. Alternatively, if wxUSE_STL=1,
|
used by wxString to store the data. Alternatively, if wxUSE_STD_STRING=1,
|
||||||
wxStringImpl is just a typedef to std:: string class.
|
wxStringImpl is just a typedef to std:: string class.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@@ -50,15 +50,9 @@ extern WXDLLIMPEXP_DATA_BASE(const wxStringCharType*) wxEmptyStringImpl;
|
|||||||
|
|
||||||
|
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
// deal with STL/non-STL/non-STL-but-wxUSE_STD_STRING
|
// deal with various build options
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
|
|
||||||
// using STL implies using std::string
|
|
||||||
#if wxUSE_STL
|
|
||||||
#undef wxUSE_STD_STRING
|
|
||||||
#define wxUSE_STD_STRING 1
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// we use STL-based string internally if we use std::string at all now, there
|
// we use STL-based string internally if we use std::string at all now, there
|
||||||
// should be no reason to prefer our internal implement but if you really need
|
// should be no reason to prefer our internal implement but if you really need
|
||||||
// it you can predefine wxUSE_STL_BASED_WXSTRING as 0 when building the library
|
// it you can predefine wxUSE_STL_BASED_WXSTRING as 0 when building the library
|
||||||
|
@@ -200,15 +200,6 @@
|
|||||||
// Recommended setting: 0 (this is still work in progress...)
|
// Recommended setting: 0 (this is still work in progress...)
|
||||||
#define wxUSE_EXTENDED_RTTI 0
|
#define wxUSE_EXTENDED_RTTI 0
|
||||||
|
|
||||||
// Set wxUSE_STL to 1 to derive wxList(Foo) and wxArray(Foo) from
|
|
||||||
// std::list<Foo*> and std::vector<Foo*>, with a compatibility interface,
|
|
||||||
// and for wxHashMap to be implemented with templates.
|
|
||||||
//
|
|
||||||
// Default is 0
|
|
||||||
//
|
|
||||||
// Recommended setting: YMMV
|
|
||||||
#define wxUSE_STL 0
|
|
||||||
|
|
||||||
// Support for message/error logging. This includes wxLogXXX() functions and
|
// Support for message/error logging. This includes wxLogXXX() functions and
|
||||||
// wxLog and derived classes. Don't set this to 0 unless you really know what
|
// wxLog and derived classes. Don't set this to 0 unless you really know what
|
||||||
// you are doing.
|
// you are doing.
|
||||||
@@ -260,44 +251,6 @@
|
|||||||
// Recommended setting: 1 as setting it to 0 disables many other things
|
// Recommended setting: 1 as setting it to 0 disables many other things
|
||||||
#define wxUSE_STREAMS 1
|
#define wxUSE_STREAMS 1
|
||||||
|
|
||||||
// This is not a real option but is used as the default value for
|
|
||||||
// wxUSE_STD_IOSTREAM and wxUSE_STD_STRING.
|
|
||||||
//
|
|
||||||
// Currently the Digital Mars and Watcom compilers come without standard C++
|
|
||||||
// library headers by default, wxUSE_STD_STRING can be set to 1 if you do have
|
|
||||||
// them (e.g. from STLPort).
|
|
||||||
//
|
|
||||||
// VC++ 5.0 does include standard C++ library headers, however they produce
|
|
||||||
// many warnings that can't be turned off when compiled at warning level 4.
|
|
||||||
#if defined(__DMC__) || defined(__WATCOMC__) \
|
|
||||||
|| (defined(_MSC_VER) && _MSC_VER < 1200)
|
|
||||||
#define wxUSE_STD_DEFAULT 0
|
|
||||||
#else
|
|
||||||
#define wxUSE_STD_DEFAULT 1
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// Use standard C++ streams if 1 instead of wx streams in some places. If
|
|
||||||
// disabled (default), wx streams are used everywhere and wxWidgets doesn't
|
|
||||||
// depend on the standard streams library.
|
|
||||||
//
|
|
||||||
// Notice that enabling this does not replace wx streams with std streams
|
|
||||||
// everywhere, in a lot of places wx streams are used no matter what.
|
|
||||||
//
|
|
||||||
// Default is 0
|
|
||||||
//
|
|
||||||
// Recommended setting: 1 if you use the standard streams anyhow and so
|
|
||||||
// dependency on the standard streams library is not a
|
|
||||||
// problem
|
|
||||||
#define wxUSE_STD_IOSTREAM wxUSE_STD_DEFAULT
|
|
||||||
|
|
||||||
// Enable conversion to standard C++ string if 1.
|
|
||||||
//
|
|
||||||
// Default is 1 for most compilers.
|
|
||||||
//
|
|
||||||
// Recommended setting: 1 unless you want to ensure your program doesn't use
|
|
||||||
// the standard C++ library at all.
|
|
||||||
#define wxUSE_STD_STRING wxUSE_STD_DEFAULT
|
|
||||||
|
|
||||||
// Support for positional parameters (e.g. %1$d, %2$s ...) in wxVsnprintf.
|
// Support for positional parameters (e.g. %1$d, %2$s ...) in wxVsnprintf.
|
||||||
// Note that if the system's implementation does not support positional
|
// Note that if the system's implementation does not support positional
|
||||||
// parameters, setting this to 1 forces the use of the wxWidgets implementation
|
// parameters, setting this to 1 forces the use of the wxWidgets implementation
|
||||||
@@ -313,6 +266,89 @@
|
|||||||
// Recommended setting: 1 if you want to support multiple languages
|
// Recommended setting: 1 if you want to support multiple languages
|
||||||
#define wxUSE_PRINTF_POS_PARAMS 1
|
#define wxUSE_PRINTF_POS_PARAMS 1
|
||||||
|
|
||||||
|
|
||||||
|
// ----------------------------------------------------------------------------
|
||||||
|
// Interoperability with the standard library.
|
||||||
|
// ----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
// Set wxUSE_STL to 1 to enable maximal interoperability with the standard
|
||||||
|
// library, even at the cost of backwards compatibility.
|
||||||
|
//
|
||||||
|
// Default is 0
|
||||||
|
//
|
||||||
|
// Recommended setting: 0 as the options below already provide a relatively
|
||||||
|
// good level of interoperability and changing this option arguably isn't worth
|
||||||
|
// diverging from the official builds of the library.
|
||||||
|
#define wxUSE_STL 0
|
||||||
|
|
||||||
|
// This is not a real option but is used as the default value for
|
||||||
|
// wxUSE_STD_IOSTREAM, wxUSE_STD_STRING and wxUSE_STD_CONTAINERS.
|
||||||
|
//
|
||||||
|
// Currently the Digital Mars and Watcom compilers come without standard C++
|
||||||
|
// library headers by default, wxUSE_STD_STRING can be set to 1 if you do have
|
||||||
|
// them (e.g. from STLPort).
|
||||||
|
//
|
||||||
|
// VC++ 5.0 does include standard C++ library headers, however they produce
|
||||||
|
// many warnings that can't be turned off when compiled at warning level 4.
|
||||||
|
#if defined(__DMC__) || defined(__WATCOMC__) \
|
||||||
|
|| (defined(_MSC_VER) && _MSC_VER < 1200)
|
||||||
|
#define wxUSE_STD_DEFAULT 0
|
||||||
|
#else
|
||||||
|
#define wxUSE_STD_DEFAULT 1
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// Use standard C++ containers to implement wxVector<>, wxStack<>, wxDList<>
|
||||||
|
// and wxHashXXX<> classes. If disabled, wxWidgets own (mostly compatible but
|
||||||
|
// usually more limited) implementations are used which allows to avoid the
|
||||||
|
// dependency on the C++ run-time library.
|
||||||
|
//
|
||||||
|
// Default is 1 if compiler supports it.
|
||||||
|
//
|
||||||
|
// Recommended setting: 1 unless you use a system without good implementation
|
||||||
|
// of STL.
|
||||||
|
#define wxUSE_STD_CONTAINERS wxUSE_STD_DEFAULT
|
||||||
|
|
||||||
|
// Use standard C++ streams if 1 instead of wx streams in some places. If
|
||||||
|
// disabled, wx streams are used everywhere and wxWidgets doesn't depend on the
|
||||||
|
// standard streams library.
|
||||||
|
//
|
||||||
|
// Notice that enabling this does not replace wx streams with std streams
|
||||||
|
// everywhere, in a lot of places wx streams are used no matter what.
|
||||||
|
//
|
||||||
|
// Default is 1 if compiler supports it.
|
||||||
|
//
|
||||||
|
// Recommended setting: 1 if you use the standard streams anyhow and so
|
||||||
|
// dependency on the standard streams library is not a
|
||||||
|
// problem
|
||||||
|
#define wxUSE_STD_IOSTREAM wxUSE_STD_DEFAULT
|
||||||
|
|
||||||
|
// Enable minimal interoperability with the standard C++ string class if 1.
|
||||||
|
// "Minimal" means that wxString can be constructed from std::string or
|
||||||
|
// std::wstring but can't be implicitly converted to them. You need to enable
|
||||||
|
// the option below for the latter.
|
||||||
|
//
|
||||||
|
// Default is 1 for most compilers.
|
||||||
|
//
|
||||||
|
// Recommended setting: 1 unless you want to ensure your program doesn't use
|
||||||
|
// the standard C++ library at all.
|
||||||
|
#define wxUSE_STD_STRING wxUSE_STD_DEFAULT
|
||||||
|
|
||||||
|
// Make wxString as much interchangeable with std::[w]string as possible, in
|
||||||
|
// particular allow implicit conversion of wxString to either of these classes.
|
||||||
|
// This comes at a price (or a benefit, depending on your point of view) of not
|
||||||
|
// allowing implicit conversion to "const char *" and "const wchar_t *".
|
||||||
|
//
|
||||||
|
// Because a lot of existing code relies on these conversions, this option is
|
||||||
|
// disabled by default but can be enabled for your build if you don't care
|
||||||
|
// about compatibility.
|
||||||
|
//
|
||||||
|
// Default is 0 if wxUSE_STL has its default value or 1 if it is enabled.
|
||||||
|
//
|
||||||
|
// Recommended setting: 0 to remain compatible with the official builds of
|
||||||
|
// wxWidgets.
|
||||||
|
#define wxUSE_STD_STRING_CONV_IN_WXSTRING wxUSE_STL
|
||||||
|
|
||||||
|
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
// non GUI features selection
|
// non GUI features selection
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
|
@@ -14,7 +14,7 @@
|
|||||||
|
|
||||||
#include "wx/defs.h"
|
#include "wx/defs.h"
|
||||||
|
|
||||||
#if wxUSE_STL
|
#if wxUSE_STD_CONTAINERS
|
||||||
|
|
||||||
#include <vector>
|
#include <vector>
|
||||||
#include <algorithm>
|
#include <algorithm>
|
||||||
@@ -26,7 +26,7 @@ inline void wxVectorSort(wxVector<T>& v)
|
|||||||
std::sort(v.begin(), v.end());
|
std::sort(v.begin(), v.end());
|
||||||
}
|
}
|
||||||
|
|
||||||
#else // !wxUSE_STL
|
#else // !wxUSE_STD_CONTAINERS
|
||||||
|
|
||||||
#include "wx/utils.h"
|
#include "wx/utils.h"
|
||||||
#include "wx/scopeguard.h"
|
#include "wx/scopeguard.h"
|
||||||
@@ -485,7 +485,7 @@ void wxVectorSort(wxVector<T>& v)
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
#endif // wxUSE_STL/!wxUSE_STL
|
#endif // wxUSE_STD_CONTAINERS/!wxUSE_STD_CONTAINERS
|
||||||
|
|
||||||
#if WXWIN_COMPATIBILITY_2_8
|
#if WXWIN_COMPATIBILITY_2_8
|
||||||
#define WX_DECLARE_VECTORBASE(obj, cls) typedef wxVector<obj> cls
|
#define WX_DECLARE_VECTORBASE(obj, cls) typedef wxVector<obj> cls
|
||||||
|
13
setup.h.in
13
setup.h.in
@@ -189,8 +189,6 @@
|
|||||||
|
|
||||||
#define wxUSE_EXTENDED_RTTI 0
|
#define wxUSE_EXTENDED_RTTI 0
|
||||||
|
|
||||||
#define wxUSE_STL 0
|
|
||||||
|
|
||||||
#define wxUSE_LOG 0
|
#define wxUSE_LOG 0
|
||||||
|
|
||||||
#define wxUSE_LOGWINDOW 0
|
#define wxUSE_LOGWINDOW 0
|
||||||
@@ -205,6 +203,12 @@
|
|||||||
|
|
||||||
#define wxUSE_STREAMS 0
|
#define wxUSE_STREAMS 0
|
||||||
|
|
||||||
|
#define wxUSE_PRINTF_POS_PARAMS 0
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#define wxUSE_STL 0
|
||||||
|
|
||||||
#if defined(__DMC__) || defined(__WATCOMC__) \
|
#if defined(__DMC__) || defined(__WATCOMC__) \
|
||||||
|| (defined(_MSC_VER) && _MSC_VER < 1200)
|
|| (defined(_MSC_VER) && _MSC_VER < 1200)
|
||||||
#define wxUSE_STD_DEFAULT 0
|
#define wxUSE_STD_DEFAULT 0
|
||||||
@@ -212,11 +216,14 @@
|
|||||||
#define wxUSE_STD_DEFAULT 0
|
#define wxUSE_STD_DEFAULT 0
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#define wxUSE_STD_CONTAINERS wxUSE_STD_DEFAULT
|
||||||
|
|
||||||
#define wxUSE_STD_IOSTREAM wxUSE_STD_DEFAULT
|
#define wxUSE_STD_IOSTREAM wxUSE_STD_DEFAULT
|
||||||
|
|
||||||
#define wxUSE_STD_STRING wxUSE_STD_DEFAULT
|
#define wxUSE_STD_STRING wxUSE_STD_DEFAULT
|
||||||
|
|
||||||
#define wxUSE_PRINTF_POS_PARAMS 0
|
#define wxUSE_STD_STRING_CONV_IN_WXSTRING wxUSE_STL
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#define wxUSE_LONGLONG 0
|
#define wxUSE_LONGLONG 0
|
||||||
|
@@ -33,7 +33,7 @@
|
|||||||
|
|
||||||
wxArrayString::wxArrayString(size_t sz, const char** a)
|
wxArrayString::wxArrayString(size_t sz, const char** a)
|
||||||
{
|
{
|
||||||
#if !wxUSE_STL
|
#if !wxUSE_STD_CONTAINERS
|
||||||
Init(false);
|
Init(false);
|
||||||
#endif
|
#endif
|
||||||
for (size_t i=0; i < sz; i++)
|
for (size_t i=0; i < sz; i++)
|
||||||
@@ -42,7 +42,7 @@ wxArrayString::wxArrayString(size_t sz, const char** a)
|
|||||||
|
|
||||||
wxArrayString::wxArrayString(size_t sz, const wchar_t** a)
|
wxArrayString::wxArrayString(size_t sz, const wchar_t** a)
|
||||||
{
|
{
|
||||||
#if !wxUSE_STL
|
#if !wxUSE_STD_CONTAINERS
|
||||||
Init(false);
|
Init(false);
|
||||||
#endif
|
#endif
|
||||||
for (size_t i=0; i < sz; i++)
|
for (size_t i=0; i < sz; i++)
|
||||||
@@ -51,14 +51,14 @@ wxArrayString::wxArrayString(size_t sz, const wchar_t** a)
|
|||||||
|
|
||||||
wxArrayString::wxArrayString(size_t sz, const wxString* a)
|
wxArrayString::wxArrayString(size_t sz, const wxString* a)
|
||||||
{
|
{
|
||||||
#if !wxUSE_STL
|
#if !wxUSE_STD_CONTAINERS
|
||||||
Init(false);
|
Init(false);
|
||||||
#endif
|
#endif
|
||||||
for (size_t i=0; i < sz; i++)
|
for (size_t i=0; i < sz; i++)
|
||||||
Add(a[i]);
|
Add(a[i]);
|
||||||
}
|
}
|
||||||
|
|
||||||
#if !wxUSE_STL
|
#if !wxUSE_STD_CONTAINERS
|
||||||
|
|
||||||
// size increment = min(50% of current size, ARRAY_MAXSIZE_INCREMENT)
|
// size increment = min(50% of current size, ARRAY_MAXSIZE_INCREMENT)
|
||||||
#define ARRAY_MAXSIZE_INCREMENT 4096
|
#define ARRAY_MAXSIZE_INCREMENT 4096
|
||||||
@@ -462,7 +462,7 @@ bool wxArrayString::operator==(const wxArrayString& a) const
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif // !wxUSE_STL
|
#endif // !wxUSE_STD_CONTAINERS
|
||||||
|
|
||||||
// ===========================================================================
|
// ===========================================================================
|
||||||
// wxJoin and wxSplit
|
// wxJoin and wxSplit
|
||||||
|
@@ -172,9 +172,9 @@ bool wxCommandProcessor::Redo()
|
|||||||
{
|
{
|
||||||
wxCommand *redoCommand = NULL;
|
wxCommand *redoCommand = NULL;
|
||||||
wxList::compatibility_iterator redoNode
|
wxList::compatibility_iterator redoNode
|
||||||
#if !wxUSE_STL
|
#if !wxUSE_STD_CONTAINERS
|
||||||
= NULL // just to avoid warnings
|
= NULL // just to avoid warnings
|
||||||
#endif // !wxUSE_STL
|
#endif // !wxUSE_STD_CONTAINERS
|
||||||
;
|
;
|
||||||
|
|
||||||
if ( m_currentCommand )
|
if ( m_currentCommand )
|
||||||
|
@@ -927,9 +927,9 @@ void wxDCImpl::DoDrawSpline( const wxPointList *points )
|
|||||||
wx_spline_add_point(x1, y1);
|
wx_spline_add_point(x1, y1);
|
||||||
|
|
||||||
while ((node = node->GetNext())
|
while ((node = node->GetNext())
|
||||||
#if !wxUSE_STL
|
#if !wxUSE_STD_CONTAINERS
|
||||||
!= NULL
|
!= NULL
|
||||||
#endif // !wxUSE_STL
|
#endif // !wxUSE_STD_CONTAINERS
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
p = node->GetData();
|
p = node->GetData();
|
||||||
|
@@ -696,13 +696,13 @@ void wxGCDCImpl::DoDrawSpline(const wxPointList *points)
|
|||||||
|
|
||||||
path.MoveToPoint( x1 , y1 );
|
path.MoveToPoint( x1 , y1 );
|
||||||
path.AddLineToPoint( cx1 , cy1 );
|
path.AddLineToPoint( cx1 , cy1 );
|
||||||
#if !wxUSE_STL
|
#if !wxUSE_STD_CONTAINERS
|
||||||
|
|
||||||
while ((node = node->GetNext()) != NULL)
|
while ((node = node->GetNext()) != NULL)
|
||||||
#else
|
#else
|
||||||
|
|
||||||
while ((node = node->GetNext()))
|
while ((node = node->GetNext()))
|
||||||
#endif // !wxUSE_STL
|
#endif // !wxUSE_STD_CONTAINERS
|
||||||
|
|
||||||
{
|
{
|
||||||
p = node->GetData();
|
p = node->GetData();
|
||||||
|
@@ -28,7 +28,7 @@
|
|||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <string.h> // for memmove
|
#include <string.h> // for memmove
|
||||||
|
|
||||||
#if !wxUSE_STL
|
#if !wxUSE_STD_CONTAINERS
|
||||||
|
|
||||||
// we cast the value to long from which we cast it to void * in IndexForInsert:
|
// we cast the value to long from which we cast it to void * in IndexForInsert:
|
||||||
// this can't work if the pointers are not big enough
|
// this can't work if the pointers are not big enough
|
||||||
@@ -383,7 +383,7 @@ _WX_DEFINE_BASEARRAY(double, wxBaseArrayDouble)
|
|||||||
#pragma warning(pop)
|
#pragma warning(pop)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#else // wxUSE_STL
|
#else // wxUSE_STD_CONTAINERS
|
||||||
|
|
||||||
#include "wx/arrstr.h"
|
#include "wx/arrstr.h"
|
||||||
|
|
||||||
@@ -491,4 +491,4 @@ int wxSortedArrayString::Index(const wxString& str,
|
|||||||
return it - begin();
|
return it - begin();
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif // !wxUSE_STL/wxUSE_STL
|
#endif // !wxUSE_STD_CONTAINERS/wxUSE_STD_CONTAINERS
|
||||||
|
@@ -33,7 +33,7 @@
|
|||||||
#include "wx/crt.h"
|
#include "wx/crt.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if !wxUSE_STL
|
#if !wxUSE_STD_CONTAINERS
|
||||||
|
|
||||||
// =============================================================================
|
// =============================================================================
|
||||||
// implementation
|
// implementation
|
||||||
@@ -756,16 +756,16 @@ wxNode *wxStringList::Prepend(const wxChar *s)
|
|||||||
|
|
||||||
#endif // wxLIST_COMPATIBILITY
|
#endif // wxLIST_COMPATIBILITY
|
||||||
|
|
||||||
#else // wxUSE_STL = 1
|
#else // wxUSE_STD_CONTAINERS = 1
|
||||||
|
|
||||||
#include "wx/listimpl.cpp"
|
#include "wx/listimpl.cpp"
|
||||||
WX_DEFINE_LIST(wxObjectList)
|
WX_DEFINE_LIST(wxObjectList)
|
||||||
|
|
||||||
// with wxUSE_STL wxStringList contains wxString objects, not pointers
|
// with wxUSE_STD_CONTAINERS wxStringList contains wxString objects, not pointers
|
||||||
void _WX_LIST_HELPER_wxStringListBase::DeleteFunction( wxString WXUNUSED(X) )
|
void _WX_LIST_HELPER_wxStringListBase::DeleteFunction( wxString WXUNUSED(X) )
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
wxStringListBase::BaseListType wxStringListBase::EmptyList;
|
wxStringListBase::BaseListType wxStringListBase::EmptyList;
|
||||||
|
|
||||||
#endif // !wxUSE_STL
|
#endif // !wxUSE_STD_CONTAINERS
|
||||||
|
@@ -2967,19 +2967,19 @@ wxAccessible* wxWindowBase::CreateAccessible()
|
|||||||
// list classes implementation
|
// list classes implementation
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
|
|
||||||
#if wxUSE_STL
|
#if wxUSE_STD_CONTAINERS
|
||||||
|
|
||||||
#include "wx/listimpl.cpp"
|
#include "wx/listimpl.cpp"
|
||||||
WX_DEFINE_LIST(wxWindowList)
|
WX_DEFINE_LIST(wxWindowList)
|
||||||
|
|
||||||
#else // !wxUSE_STL
|
#else // !wxUSE_STD_CONTAINERS
|
||||||
|
|
||||||
void wxWindowListNode::DeleteData()
|
void wxWindowListNode::DeleteData()
|
||||||
{
|
{
|
||||||
delete (wxWindow *)GetData();
|
delete (wxWindow *)GetData();
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif // wxUSE_STL/!wxUSE_STL
|
#endif // wxUSE_STD_CONTAINERS/!wxUSE_STD_CONTAINERS
|
||||||
|
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
// borders
|
// borders
|
||||||
@@ -3283,8 +3283,8 @@ void wxWindowBase::DoMoveInTabOrder(wxWindow *win, WindowOrder move)
|
|||||||
wxWindowList::compatibility_iterator i = siblings.Find(win);
|
wxWindowList::compatibility_iterator i = siblings.Find(win);
|
||||||
wxCHECK_RET( i, wxT("MoveBefore/AfterInTabOrder(): win is not a sibling") );
|
wxCHECK_RET( i, wxT("MoveBefore/AfterInTabOrder(): win is not a sibling") );
|
||||||
|
|
||||||
// unfortunately, when wxUSE_STL == 1 DetachNode() is not implemented so we
|
// unfortunately, when wxUSE_STD_CONTAINERS == 1 DetachNode() is not
|
||||||
// can't just move the node around
|
// implemented so we can't just move the node around
|
||||||
wxWindow *self = (wxWindow *)this;
|
wxWindow *self = (wxWindow *)this;
|
||||||
siblings.DeleteObject(self);
|
siblings.DeleteObject(self);
|
||||||
if ( move == OrderAfter )
|
if ( move == OrderAfter )
|
||||||
|
@@ -1048,11 +1048,11 @@ void wxMSWDCImpl::DoDrawSpline(const wxPointList *points)
|
|||||||
lppt[ bezier_pos ] = lppt[ bezier_pos-1 ];
|
lppt[ bezier_pos ] = lppt[ bezier_pos-1 ];
|
||||||
bezier_pos++;
|
bezier_pos++;
|
||||||
|
|
||||||
#if !wxUSE_STL
|
#if !wxUSE_STD_CONTAINERS
|
||||||
while ((node = node->GetNext()) != NULL)
|
while ((node = node->GetNext()) != NULL)
|
||||||
#else
|
#else
|
||||||
while ((node = node->GetNext()))
|
while ((node = node->GetNext()))
|
||||||
#endif // !wxUSE_STL
|
#endif // !wxUSE_STD_CONTAINERS
|
||||||
{
|
{
|
||||||
p = (wxPoint *)node->GetData();
|
p = (wxPoint *)node->GetData();
|
||||||
x1 = x2;
|
x1 = x2;
|
||||||
|
@@ -78,7 +78,7 @@ bool wxChoice::Create(wxWindow *parent,
|
|||||||
|
|
||||||
MacPostControlCreate( pos, size );
|
MacPostControlCreate( pos, size );
|
||||||
|
|
||||||
#if !wxUSE_STL
|
#if !wxUSE_STD_CONTAINERS
|
||||||
if ( style & wxCB_SORT )
|
if ( style & wxCB_SORT )
|
||||||
// autosort
|
// autosort
|
||||||
m_strings = wxArrayString( 1 );
|
m_strings = wxArrayString( 1 );
|
||||||
@@ -109,7 +109,7 @@ int wxChoice::DoInsertItems(const wxArrayStringsAdapter & items,
|
|||||||
{
|
{
|
||||||
unsigned int idx;
|
unsigned int idx;
|
||||||
|
|
||||||
#if wxUSE_STL
|
#if wxUSE_STD_CONTAINERS
|
||||||
if ( IsSorted() )
|
if ( IsSorted() )
|
||||||
{
|
{
|
||||||
wxArrayString::iterator
|
wxArrayString::iterator
|
||||||
@@ -118,7 +118,7 @@ int wxChoice::DoInsertItems(const wxArrayStringsAdapter & items,
|
|||||||
m_strings.insert( insertPoint, items[i] );
|
m_strings.insert( insertPoint, items[i] );
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
#endif // wxUSE_STL
|
#endif // wxUSE_STD_CONTAINERS
|
||||||
{
|
{
|
||||||
idx = pos;
|
idx = pos;
|
||||||
m_strings.Insert( items[i], idx );
|
m_strings.Insert( items[i], idx );
|
||||||
@@ -189,7 +189,7 @@ unsigned int wxChoice::GetCount() const
|
|||||||
|
|
||||||
int wxChoice::FindString( const wxString& s, bool bCase ) const
|
int wxChoice::FindString( const wxString& s, bool bCase ) const
|
||||||
{
|
{
|
||||||
#if !wxUSE_STL
|
#if !wxUSE_STD_CONTAINERS
|
||||||
// Avoid assert for non-default args passed to sorted array Index
|
// Avoid assert for non-default args passed to sorted array Index
|
||||||
if ( IsSorted() )
|
if ( IsSorted() )
|
||||||
bCase = true;
|
bCase = true;
|
||||||
|
@@ -545,7 +545,7 @@ void SurfaceImpl::MeasureWidths(Font &font, const char *s, int len, int *positio
|
|||||||
#else
|
#else
|
||||||
|
|
||||||
// If not unicode then just use the widths we have
|
// If not unicode then just use the widths we have
|
||||||
#if wxUSE_STL
|
#if wxUSE_STD_CONTAINERS
|
||||||
std::copy(tpos.begin(), tpos.end(), positions);
|
std::copy(tpos.begin(), tpos.end(), positions);
|
||||||
#else
|
#else
|
||||||
memcpy(positions, tpos.begin(), len * sizeof(int));
|
memcpy(positions, tpos.begin(), len * sizeof(int));
|
||||||
|
Reference in New Issue
Block a user