1
0
mirror of https://github.com/qTox/qTox.git synced 2024-03-22 14:00:36 +08:00
qTox/src/main.cpp

72 lines
2.0 KiB
C++
Raw Normal View History

2014-07-07 00:19:45 +08:00
/*
Copyright (C) 2014 by Project Tox <https://tox.im>
This file is part of qTox, a Qt-based graphical interface for Tox.
This program is libre software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
See the COPYING file for more details.
*/
2014-06-27 06:32:08 +08:00
#include "widget/widget.h"
2014-09-30 02:28:59 +08:00
#include "misc/settings.h"
2014-06-25 04:11:11 +08:00
#include <QApplication>
#include <QFontDatabase>
2014-09-11 21:44:34 +08:00
#include <QDebug>
#include <QFile>
#include <QDir>
#include <QDateTime>
#ifdef LOG_TO_FILE
static QtMessageHandler dflt;
static QTextStream logFile;
void myMessageHandler(QtMsgType type, const QMessageLogContext& ctxt, const QString& msg)
{
dflt(type, ctxt, msg);
2014-11-01 13:30:04 +08:00
logFile << QTime::currentTime().toString("HH:mm:ss' '") << msg << '\n';
logFile.flush();
}
#endif
2014-06-25 04:11:11 +08:00
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
a.setApplicationName("qTox");
2014-06-25 04:11:11 +08:00
a.setOrganizationName("Tox");
#ifdef LOG_TO_FILE
dflt = qInstallMessageHandler(nullptr);
QFile logfile(QDir(Settings::getSettingsDirPath()).filePath("qtox.log"));
logfile.open(QIODevice::Append);
logFile.setDevice(&logfile);
2014-11-01 13:30:04 +08:00
logFile << QDateTime::currentDateTime().toString("yyyy-dd-MM HH:mm:ss' file logger starting\n'");
qInstallMessageHandler(myMessageHandler);
#endif
// Windows platform plugins DLL hell fix
QCoreApplication::addLibraryPath(QCoreApplication::applicationDirPath());
a.addLibraryPath("platforms");
qDebug() << "built on: " << __TIME__ << __DATE__;
qDebug() << "commit: " << GIT_VERSION << "\n";
// Install Unicode 6.1 supporting font
QFontDatabase::addApplicationFont("://DejaVuSans.ttf");
2014-06-25 04:11:11 +08:00
Widget* w = Widget::getInstance();
int errorcode = a.exec();
delete w;
return errorcode;
}