Commit 2484e96b authored by Craig Watson's avatar Craig Watson

Changes to message handler function; removal of obsolete setCodecForTr functions

parent 4a99febb
......@@ -45,21 +45,21 @@
#endif
*/
void ub_message_output(QtMsgType type, const char *msg) {
void ub_message_output(QtMsgType type, const QMessageLogContext& context, const QString& msg) {
// We must temporarily remove the handler to avoid the infinite recursion of
// ub_message_output -> qt_message_output -> ub_message_output -> qt_message_output ...
QtMsgHandler previousHandler = qInstallMsgHandler(0);
QtMessageHandler previousHandler = qInstallMessageHandler(0);
#if defined(QT_NO_DEBUG)
// Suppress qDebug output in release builds
if (type != QtDebugMsg)
{
qt_message_output(type, msg);
qt_message_output(type, context, msg);
}
#else
// Default output in debug builds
qt_message_output(type, msg);
qt_message_output(type, context, msg);
#endif
if (UBApplication::app() && UBApplication::app()->isVerbose()) {
......@@ -77,7 +77,7 @@ void ub_message_output(QtMsgType type, const char *msg) {
}
}
qInstallMsgHandler(previousHandler);
qInstallMessageHandler(previousHandler);
}
int main(int argc, char *argv[])
......@@ -93,7 +93,7 @@ int main(int argc, char *argv[])
Q_INIT_RESOURCE(OpenBoard);
qInstallMsgHandler(ub_message_output);
qInstallMessageHandler(ub_message_output);
#if defined(Q_WS_X11)
qDebug() << "Setting GraphicsSystem to raster";
......@@ -102,16 +102,6 @@ int main(int argc, char *argv[])
UBApplication app("OpenBoard", argc, argv);
//BUGFIX:
//when importing a OpenBoard file that contains a non standard character
//the codecForLocale or the codecForCString is used to convert the file path
//into a const char*. This is why in french windows setup the codec name shouldn't be
//set to UTF-8. For example, setting UTF-8, will convert "Haïti" into "HaÂ-ti.
QTextCodec::setCodecForTr(QTextCodec::codecForName("UTF-8"));
//QTextCodec::setCodecForLocale(QTextCodec::codecForName("UTF-8"));
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8"));
QStringList args = app.arguments();
QString dumpPath = UBSettings::userDataDirectory() + "/log";
......@@ -138,7 +128,7 @@ int main(int argc, char *argv[])
}
}
app.initialize(false);
//app.initialize(false); // should not be needed anymore
QObject::connect(&app, SIGNAL(messageReceived(const QString&)), &app, SLOT(handleOpenMessage(const QString&)));
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment