From 17b769a06e1402482b9b616e4f0dab4557f03998 Mon Sep 17 00:00:00 2001 From: Scott Wheeler Date: Thu, 31 Jan 2008 17:57:12 +0000 Subject: [PATCH] Check the macro for Qt 4, switch to32Bit() to toWString() since WString is not guaranteed to be a 32-bit string. git-svn-id: svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib@769156 283d02a7-25f6-0310-bc7c-ecb5cbfe19da --- taglib/toolkit/tstring.cpp | 2 +- taglib/toolkit/tstring.h | 12 +++++++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/taglib/toolkit/tstring.cpp b/taglib/toolkit/tstring.cpp index 79e1beea..a31c2ee8 100644 --- a/taglib/toolkit/tstring.cpp +++ b/taglib/toolkit/tstring.cpp @@ -247,7 +247,7 @@ std::string String::to8Bit(bool unicode) const return s; } -TagLib::wstring String::to32Bit() const +TagLib::wstring String::toWString() const { return d->data; } diff --git a/taglib/toolkit/tstring.h b/taglib/toolkit/tstring.h index 1abdd70e..ce2687de 100644 --- a/taglib/toolkit/tstring.h +++ b/taglib/toolkit/tstring.h @@ -47,6 +47,16 @@ */ #define TStringToQString(s) QString::fromUtf8(s.toCString(true)) + +#if defined(QT_VERSION_CHECK) +# if QT_VERSION_CHECK(4, 0, 0)) +# undef QStringToTSTring +# undef TStringToQString +# define QStringToTString(s) TagLib::String(s.toStdWString()) +# define TStringToQString(s) QString::fromStdWString(s.toWString()) +# endif +#endif + namespace TagLib { //! A \e wide string class suitable for unicode. @@ -178,7 +188,7 @@ namespace TagLib { /*! * Returns a wstring version of the TagLib string as a wide string. */ - wstring to32Bit() const; + wstring toWString() const; /*! * Creates and returns a C-String based on the data. This string is still