Vadim Zeitlin
066e5e3fd2
Add wxHAS_LONG_LONG_T_DIFFERENT_FROM_LONG symbol.
...
Instead of writing a rather unreadable "defined(wxLongLong_t) &&
!defined(wxLongLongIsLong)" expression every time we need to decide if a
function needs to be overloaded for both long and long long, add a new symbol
which can be tested directly.
No real changes in the code.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66711 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-01-19 10:47:49 +00:00
Vadim Zeitlin
bd63e363c2
Compilation fix for wxUSE_UNICODE_WCHAR && !wxUSE_STL_BASED_WXSTRING.
...
Construct wxScopedWCharBuffer using CreateNonOwned() in
wxString::ToStdWstring() in this case, creating it directly from wc_str()
doesn't work (intentionally, as this doesn't tell if the buffer owns the
string or not).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65928 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-26 15:11:00 +00:00
Vadim Zeitlin
6becc1e617
Added "rest" argument to wxString::Before{First,Last}().
...
This allows to search the string just once, in BeforeXXX(), when both the
parts of the string before and after some character are needed instead of
having to do it twice in both BeforeXXX() and AfterXXX().
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65862 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-22 14:17:37 +00:00
Vadim Zeitlin
53dfbfa5c9
Add missing comparison operator declarations in wxString::iterator.
...
Fix compilation in !wxUSE_UNICODE_UTF8 case after r65857.
Modify the second declaration of wxString::iterator class which was not
updated by the previous commit in the same way, i.e. add declaration of
comparison operators taking const_iterator to iterator class.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65859 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-21 19:51:40 +00:00
Vadim Zeitlin
bdb40fa63e
Implement comparisons between wxString::iterator and const_iterator.
...
Only comparisons between const_iterator and iterator worked before (because of
implicit conversion from the latter to the former), implement the ones in the
other direction explicitly now.
Closes #12594 .
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65857 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-21 19:22:33 +00:00
Václav Slavík
908c405611
Use wxScopedCharBuffer in To8BitData() in ANSI build too.
...
This allows one to write code compatible with both Unicode and ANSI
builds.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64789 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-01 15:28:30 +00:00
Vadim Zeitlin
951201d81c
Add wxString::FromDouble() and FromCDouble().
...
wxString::FromCDouble() is needed inside wxWidgets itself to format numbers
independently of the current locale. FromDouble() was added for symmetry with
ToDouble/ToCDouble() functions.
Use std::locale for the implementation if available and manual wxLocale-based
fallback otherwise.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64449 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-05-31 11:55:48 +00:00
Vadim Zeitlin
105993f7b6
Make wxString::ToCXXX() methods always available.
...
We use these methods inside wxWidgets itself and so want to always have them,
even when wxUSE_XLOCALE==0. Provide replacement manual implementations for
this case.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64448 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-05-31 11:55:41 +00:00
Vadim Zeitlin
e3ab69523b
Add wxString::ToStdString() and ToStdWstring().
...
These trivial helper functions are available in all builds (provided that
wxUSE_STD_STRING is not explicitly set to non-default 0 value) unlike implicit
conversions to std::[w]string which are only available when wxUSE_STL==1.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63938 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-11 11:08:49 +00:00
Vadim Zeitlin
05d676f558
Always declare wxCStrData::As[W]Char() as being inline.
...
This fixes warnings with IRIX mipsPro and not only mingw32 and probably
doesn't do any harm with the other compilers.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63581 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-02-28 11:09:07 +00:00
Vadim Zeitlin
651548666a
Change wxLongLongFmtSpec to be a non-wide string.
...
As with other ANSI/Unicode unification changes, we choose to preserve
compatibility with the existing code using wxLongLongFmtSpec in ANSI build
and require people using it in Unicode build to change their code.
Closes #11372 .
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62562 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-05 14:59:55 +00:00
Vadim Zeitlin
03647350fc
No changes, just removed hard tabs and trailing white space.
...
This commit is huge but there are no non-white-space changes in it.
Some files containing third-party sources (src/msw/wince/time.cpp,
src/x11/pango*.cpp) were left unchanged.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61724 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-08-21 10:41:26 +00:00
Vadim Zeitlin
9a83f86094
Globally replace _T() with wxT().
...
Standardize on using a single macro across all wxWidgets sources and solve the name clash with Sun CC standard headers (see #10660 ).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61508 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-07-23 20:30:22 +00:00
Vadim Zeitlin
fb330c2ec3
disable MSVC warning 4275 correctly ( closes #10885 )
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61010 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-06-12 03:37:47 +00:00
Vadim Zeitlin
f6363458bc
avoid g++ 4.3 warnings about conflict between parameter and method names ( closes #10843 )
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@60772 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-05-28 09:49:20 +00:00
Vadim Zeitlin
113f623379
remove dll export declaration from wxCStrData now that all its methods are inline (fixes mingw32 warning in DLL build)
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@60184 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-04-15 21:31:33 +00:00
Vadim Zeitlin
582886dde5
return empty string instead of NULL from mb_str()/wc_str() when conversion fails to avoid crashing badly written code which doesn't check for conversion failures
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@60125 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-04-13 17:48:11 +00:00
Vadim Zeitlin
f54cb154d5
return persistent buffers from mb_str()/wc_str() to allow assigning the returned value to simple pointers
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@60116 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-04-12 19:49:45 +00:00
Václav Slavík
ed5e656088
fixed wxString::utf8_str() in UTF8 build to return buffer with length
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@60108 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-04-12 10:12:44 +00:00
Václav Slavík
197380a09f
always return (owned or non-owned, depending on build) wxScopedCharBuffer from utf8_str() and ToUTF8()
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59945 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-30 18:28:42 +00:00
Václav Slavík
38d26d6040
fixes or embedded NULs handling in wxString
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59940 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-30 15:35:47 +00:00
Václav Slavík
e542e141a3
compilation fix for wxUSE_UTF8_LOCALE_ONLY case
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59936 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-30 00:00:15 +00:00
Václav Slavík
6df09f32fd
added length to wx(Scoped)CharBuffer to improve handling of embedded NULs
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59927 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-29 20:58:39 +00:00
Václav Slavík
de4983f323
split wxCharTypeBuffer<T> into wxScopedCharTypeBuffer<T> and wxCharTypeBuffer<T> -- the former is for transient data with validity limited to parent's lifetime, the latter is for permanent storage of string data (bug #9638 )
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59887 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-27 15:33:55 +00:00
Václav Slavík
52988b5f63
added some clarifying comments to wxCStrData
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59813 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-24 17:55:04 +00:00
Francesco Montorsi
529e491ce0
add the ToCLong, ToCULong and ToCDouble functions, with docs and test units
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59645 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-20 14:50:06 +00:00
Václav Slavík
862bb5c73a
renamed ATTRIBUTE_PRINTF to WX_ATTRIBUTE_PRINTF to avoid naming conflicts (e.g. with latest libxml2)
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59479 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-11 07:51:38 +00:00
Vadim Zeitlin
c0c133e13b
add wx-prefixed and semicolon-requiring versions of DECLARE_NO_{COPY,ASSIGN}_CLASS macros
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58757 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-02-08 11:45:59 +00:00
Francesco Montorsi
cbec0f401a
add wxStringCheck templated utility function
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58565 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-31 21:19:37 +00:00
Stefan Csomor
b69470e4ee
workaround for crashes in release builds
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58527 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-30 20:58:08 +00:00
Vadim Zeitlin
5c33522fca
replace wx_{const,static,reinterpret}_cast with their standard C++ equivalents
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56644 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-11-02 02:39:52 +00:00
Vadim Zeitlin
6b583d40a8
fix linking problems due to MSVC implicitly considering template classes specializations used as base classes DLL-exported even though it doesn't actually export them when building the DLL (with or without explicit declspec(dllexport)); also replace wxCharTypeBuffer::NullData with a static function to allow not DLL-exporting this class
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56602 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-10-30 23:04:29 +00:00
Vadim Zeitlin
7929902d65
no real changes, just fixed all occurences of 'occurence' typo
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55945 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-09-29 12:10:58 +00:00
Vadim Zeitlin
18666b42ca
no changes, just clarified meaning of various conversion functions in a comment
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55792 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-09-22 12:43:35 +00:00
Stefan Csomor
6e42b980d9
fixing compilo
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55543 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-09-11 07:40:58 +00:00
Stefan Csomor
e317bd3f10
solving osx problems (default inlines-hidden) by explicitely exporting the involved methods
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55540 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-09-11 06:46:23 +00:00
Stefan Csomor
c1158f7b91
avoiding crashes on osx during app shutdown
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55518 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-09-07 20:36:41 +00:00
Vadim Zeitlin
24f86c43c4
implement Empty() using clear() instead of Truncate(0)
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55502 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-09-06 22:19:42 +00:00
Vadim Zeitlin
e810df36b3
access TLS cache variable directly and not via a helper function when using compiler with native TLS support to work around an apparent bug in g++
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55501 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-09-06 22:12:04 +00:00
Paul Cornett
1224b8a386
silence warning with GCC -Wextra
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55400 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-08-31 23:48:33 +00:00
Vadim Zeitlin
8c3b65d941
rename ShowCacheStats to wxStrCacheStatsDumper
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55395 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-08-31 15:07:12 +00:00
Vadim Zeitlin
ad8ae78878
call GetCache() from a global object ctor to ensure that it is done before any threads are created
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55393 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-08-31 14:57:53 +00:00
Vadim Zeitlin
0514adaf75
fix compilation for wxUSE_STD_STRING==0 case after latest change
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55392 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-08-31 14:41:26 +00:00
Vadim Zeitlin
302acc453d
define wxString::iterator::iterator_category correctly if wxUSE_STD_STRING and not only if wxUSE_STL
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55390 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-08-31 14:15:05 +00:00
Vadim Zeitlin
8b73c5318c
chanegd wxTlsValue to be pointer-like instead of value-like which doesn't work for UDTs; use __thread keyword with mingw32 >= 4.3 too; use library-based thread-specific variables support in wxString cache now that it is fixed to work there; finally added a unit test for TLS stuff
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55361 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-08-29 23:28:42 +00:00
Vadim Zeitlin
b053bf9ef4
don't use new string caching code without compiler TLS support (temporary fix to compilation problems)
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55335 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-08-28 21:50:10 +00:00
Vadim Zeitlin
af912213b3
compilation fix for non-UTF-8 build
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55334 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-08-28 19:39:23 +00:00
Vadim Zeitlin
68482dc584
add cache for last used position and string length to UTF-8 wxString, dramatically improving performance of the code using indices to iterate over strings
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55333 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-08-28 19:19:11 +00:00
Václav Slavík
6bd4f2812d
fixed writing to wxUniCharRef after its 'parent' iterator was destroyed
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55285 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-08-26 13:02:38 +00:00
Vadim Zeitlin
dd79ca2fd8
undid changes accidentally committed as part of r55019
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55030 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-08-08 19:00:19 +00:00