X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=main%2Fmain_mono.cpp;h=c7fb094c60c81e8198d6824e271fae8850fdb170;hp=9d3e5789415349ab4f2d7dfe12d9bad01be78d8e;hb=31d998779868a1b572972168b2e813893d70ab90;hpb=bab358d776c74a37a54297125d50ba4c5117205d diff --git a/main/main_mono.cpp b/main/main_mono.cpp index 9d3e5789..c7fb094c 100644 --- a/main/main_mono.cpp +++ b/main/main_mono.cpp @@ -1,7 +1,7 @@ /*************************************************************************** * Copyright (C) 2005 by The Quassel Team * * devel@quassel-irc.org * - * * + * * * This program is free 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 2 of the License, or * @@ -22,24 +22,56 @@ #include +#include "core.h" #include "quassel.h" -#include "logger.h" +#include "guiproxy.h" +#include "coreproxy.h" #include "mainwin.h" int main(int argc, char **argv) { - - Quassel::init(); - Logger *logger = new Logger(); - Quassel::setLogger(logger); - QApplication app(argc, argv); - QApplication::setOrganizationDomain("quassel-irc.org"); QApplication::setApplicationName("Quassel IRC"); QApplication::setOrganizationName("The Quassel Team"); + Quassel::runMode = Quassel::Monolithic; + quassel = new Quassel(); + guiProxy = new GUIProxy(); + coreProxy = new CoreProxy(); + core = new Core(); + + core->init(); + MainWin mainWin; mainWin.show(); - return app.exec(); + int exitCode = app.exec(); + delete core; + delete guiProxy; + delete coreProxy; + delete quassel; + return exitCode; +} + +void GUIProxy::send(GUISignal sig, QVariant arg1, QVariant arg2, QVariant arg3) { + coreProxy->recv(sig, arg1, arg2, arg3); +} + +void CoreProxy::recv(GUISignal sig, QVariant arg1, QVariant arg2, QVariant arg3) { + switch(sig) { + case GS_USER_INPUT: emit gsUserInput(arg1.toString()); break; + case GS_REQUEST_CONNECT: emit gsRequestConnect(arg1.toString(), arg2.toUInt()); break; + default: qWarning() << "Unknown signal in CoreProxy::recv: " << sig; + } +} + +void CoreProxy::send(CoreSignal sig, QVariant arg1, QVariant arg2, QVariant arg3) { + guiProxy->recv(sig, arg1, arg2, arg3); +} + +void GUIProxy::recv(CoreSignal sig, QVariant arg1, QVariant arg2, QVariant arg3) { + switch(sig) { + case CS_CORE_MESSAGE: emit csCoreMessage(arg1.toString()); break; + default: qWarning() << "Unknown signal in GUIProxy::recv: " << sig; + } }