X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;f=src%2Fqtui%2Fqtuiapplication.cpp;h=6972dd040d7d2230fadc2c99e62da1ad8a6f8d35;hb=13eefb3ca78e1e144fb31a52faaf56d9e7c3a691;hp=5060c2a8ca1134af1fccabe19d469df832d79496;hpb=130fde74cee428ec2e3285db89c4348c3091b2aa;p=quassel.git diff --git a/src/qtui/qtuiapplication.cpp b/src/qtui/qtuiapplication.cpp index 5060c2a8..6972dd04 100644 --- a/src/qtui/qtuiapplication.cpp +++ b/src/qtui/qtuiapplication.cpp @@ -18,14 +18,62 @@ * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * ***************************************************************************/ +#include "qtuiapplication.h" + #include -#include "qtuiapplication.h" -#include "sessionsettings.h" #include "client.h" +#include "cliparser.h" +#include "qtui.h" +#include "sessionsettings.h" + -QtUiApplication::QtUiApplication(int &argc, char **argv) : QApplication(argc, argv) { +// void myMessageOutput(QtMsgType type, const char *msg) { +// Client::debugLog() << "Debug:" << msg << '\n'; +// return; +// // switch (type) { +// // case QtDebugMsg: +// // break; +// // case QtWarningMsg: +// // fprintf(stderr, "Warning: %s\n", msg); +// // break; +// // case QtCriticalMsg: +// // fprintf(stderr, "Critical: %s\n", msg); +// // break; +// // case QtFatalMsg: +// // fprintf(stderr, "Fatal: %s\n", msg); +// // abort(); +// // } +// } +QtUiApplication::QtUiApplication(int &argc, char **argv) +#ifdef HAVE_KDE + : KApplication(), Quassel() +#else + : QApplication(argc, argv), Quassel() +#endif +{ + setRunMode(Quassel::ClientOnly); + + qInstallMsgHandler(Client::logMessage); +} + +bool QtUiApplication::init() { + if(Quassel::init()) { + // session resume + QtUi *gui = new QtUi(); + Client::init(gui); + // init gui only after the event loop has started + // QTimer::singleShot(0, gui, SLOT(init())); + gui->init(); + resumeSessionIfPossible(); + return true; + } + return false; +} + +QtUiApplication::~QtUiApplication() { + Client::destroy(); } void QtUiApplication::saveState(QSessionManager & manager) { @@ -37,9 +85,6 @@ void QtUiApplication::saveState(QSessionManager & manager) { emit saveStateToSessionSettings(s); } -QtUiApplication::~ QtUiApplication() { -} - void QtUiApplication::resumeSessionIfPossible() { // load all sessions if(isSessionRestored()) { @@ -57,3 +102,4 @@ void QtUiApplication::resumeSessionIfPossible() { } } +