Make UTF-8 the default encoding for QString and tr()
authorManuel Nickschas <sputnick@quassel-irc.org>
Wed, 4 Feb 2015 23:15:26 +0000 (00:15 +0100)
committerManuel Nickschas <sputnick@quassel-irc.org>
Wed, 4 Feb 2015 23:15:26 +0000 (00:15 +0100)
As all our source files are in UTF-8 (and Qt5 even requires them to
be), we can just tell Qt4 to treat them as that. So no need anymore
to use QString::fromUtf8() for literals.

This also makes it possible to use string literals in brace
initializers for QString.

src/common/main.cpp

index 48b45c2..9d87c4b 100644 (file)
@@ -20,6 +20,8 @@
 
 #include <cstdlib>
 
+#include <QTextCodec>
+
 #ifdef BUILD_CORE
 #  include "coreapplication.h"
 #elif defined BUILD_QTUI
@@ -55,6 +57,12 @@ Q_IMPORT_PLUGIN(qgif)
 
 int main(int argc, char **argv)
 {
+#if QT_VERSION < 0x050000
+    // All our source files are in UTF-8, and Qt5 even requires that
+    QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8"));
+    QTextCodec::setCodecForTr(QTextCodec::codecForName("UTF-8"));
+#endif
+
     Quassel::setupBuildInfo();
     QCoreApplication::setApplicationName(Quassel::buildInfo().applicationName);
     QCoreApplication::setApplicationVersion(Quassel::buildInfo().plainVersionString);