diff options
author | Clinton Stimpson <clinton@elemtech.com> | 2014-03-07 06:23:52 (GMT) |
---|---|---|
committer | Clinton Stimpson <clinton@elemtech.com> | 2014-03-11 03:08:43 (GMT) |
commit | 649789a736bb217f818696eae36ee6e6a2e1aa61 (patch) | |
tree | 44bd9dd97d0fb97292857c96255366ef0cde3ac3 | |
parent | e21ffaf8fe5499426604b4ebb9cd08798ee6107c (diff) | |
download | CMake-649789a736bb217f818696eae36ee6e6a2e1aa61.zip CMake-649789a736bb217f818696eae36ee6e6a2e1aa61.tar.gz CMake-649789a736bb217f818696eae36ee6e6a2e1aa61.tar.bz2 |
Unicode: cmake-gui encoding now matches KWSys encoding.
A UTF-8 QTextCodec is used with QString when KWSys is
configured to treat strings as UTF-8.
This means QString::toLocal8Bit() will convert to UTF-8.
-rw-r--r-- | Source/QtDialog/CMakeLists.txt | 5 | ||||
-rw-r--r-- | Source/QtDialog/CMakeSetup.cxx | 8 |
2 files changed, 13 insertions, 0 deletions
diff --git a/Source/QtDialog/CMakeLists.txt b/Source/QtDialog/CMakeLists.txt index 4308a4d..0dd01d8 100644 --- a/Source/QtDialog/CMakeLists.txt +++ b/Source/QtDialog/CMakeLists.txt @@ -55,6 +55,11 @@ else() endif() endif() + +if(WIN32 AND KWSYS_ENCODING_DEFAULT_CODEPAGE MATCHES CP_UTF8) + add_definitions(-DKWSYS_CP_UTF8) +endif() + set(SRCS AddCacheEntry.cxx AddCacheEntry.h diff --git a/Source/QtDialog/CMakeSetup.cxx b/Source/QtDialog/CMakeSetup.cxx index 821121e..995929e 100644 --- a/Source/QtDialog/CMakeSetup.cxx +++ b/Source/QtDialog/CMakeSetup.cxx @@ -14,6 +14,7 @@ #include <QDir> #include <QTranslator> #include <QLocale> +#include <QTextCodec> #include "QMacInstallDialog.h" #include "CMakeSetupDialog.h" #include "cmDocumentation.h" @@ -78,6 +79,13 @@ int main(int argc, char** argv) QApplication app(argc, argv); +#if defined(KWSYS_CP_UTF8) + QTextCodec* utf8_codec = QTextCodec::codecForName("UTF-8"); + QTextCodec::setCodecForCStrings(utf8_codec); + QTextCodec::setCodecForLocale(utf8_codec); + QTextCodec::setCodecForTr(utf8_codec); +#endif + // clean out standard Qt paths for plugins, which we don't use anyway // when creating Mac bundles, it potentially causes problems foreach(QString p, QApplication::libraryPaths()) |