X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=main%2Fmain_mono.cpp;h=c7fb094c60c81e8198d6824e271fae8850fdb170;hp=620084b267939f38394e5b65a2dbc581155f264a;hb=31d998779868a1b572972168b2e813893d70ab90;hpb=f474bdcf9eb60d7d0ee48de389839f88cd25d3fa diff --git a/main/main_mono.cpp b/main/main_mono.cpp index 620084b2..c7fb094c 100644 --- a/main/main_mono.cpp +++ b/main/main_mono.cpp @@ -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; + } }