/***************************************************************************
- * Copyright (C) 2005 by The Quassel Team *
+ * Copyright (C) 2005-07 by The Quassel IRC Development 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 *
#include <QApplication>
#include "core.h"
-#include "quassel.h"
-#include "logger.h"
-#include "proxy.h"
+#include "style.h"
+#include "global.h"
+#include "guiproxy.h"
+#include "coreproxy.h"
+#include "settings.h"
+#include "chatwidget.h"
#include "mainwin.h"
int main(int argc, char **argv) {
+ QApplication app(argc, argv);
+ QCoreApplication::setOrganizationDomain("quassel-irc.org");
+ QCoreApplication::setApplicationName("Quassel IRC");
+ QCoreApplication::setOrganizationName("Quassel IRC Development Team");
- Quassel::init();
- Logger *logger = new Logger();
- Quassel::setLogger(logger);
+ Global::runMode = Global::Monolithic;
+ Global::quasselDir = QDir::homePath() + "/.quassel";
- QApplication app(argc, argv);
+ //settings = new Settings();
+ //global = new Global();
+ guiProxy = new GUIProxy();
+ //coreProxy = new CoreProxy();
+ QObject::connect(Core::guiSession(), SIGNAL(proxySignal(CoreSignal, QVariant, QVariant, QVariant)), guiProxy, SLOT(recv(CoreSignal, QVariant, QVariant, QVariant)));
+ QObject::connect(guiProxy, SIGNAL(send(GUISignal, QVariant, QVariant, QVariant)), Core::guiSession(), SLOT(processSignal(GUISignal, QVariant, QVariant, QVariant)));
- QApplication::setOrganizationDomain("quassel-irc.org");
- QApplication::setApplicationName("Quassel IRC");
- QApplication::setOrganizationName("The Quassel Team");
+ Settings::init();
+ Style::init();
- Core::init();
+ MainWin *mainWin = new MainWin();
+ mainWin->show();
+ mainWin->init();
+ int exitCode = app.exec();
+ //delete core;
+ Core::destroy();
+ delete guiProxy;
+ //delete coreProxy;
+ //delete global;
+ delete mainWin;
+ //delete settings;
+ return exitCode;
+}
- MainWin mainWin;
- mainWin.show();
- return app.exec();
+void MainWin::syncToCore() {
+ //Q_ASSERT(Global::data("CoreReady").toBool());
+ coreBuffers = Core::guiSession()->buffers();
+ // NOTE: We don't need to request server states, because in the monolithic version there can't be
+ // any servers connected at this stage...
}
-QVariant proxyConnect(uint func, QVariant arg) {
- using namespace Proxy;
+/*
+void CoreProxy::sendToGUI(CoreSignal sig, QVariant arg1, QVariant arg2, QVariant arg3) {
+ guiProxy->recv(sig, arg1, arg2, arg3);
+}
+*/
- switch(func) {
- case LOAD_IDENTITIES: return (QVariant) CoreProxy::loadIdentities();
- case STORE_IDENTITIES: CoreProxy::storeIdentities(arg.toMap()); return 0;
+GUIProxy::GUIProxy() {
+ if(guiProxy) qFatal("Trying to instantiate more than one GUIProxy object!");
+}
- }
- return 0;
+/*
+void GUIProxy::send(GUISignal sig, QVariant arg1, QVariant arg2, QVariant arg3) {
+ coreProxy->recv(sig, arg1, arg2, arg3);
}
+*/
+
+// Dummy function definitions
+// These are not needed, since we don't have a network connection to the core.
+void GUIProxy::serverHasData() {}
+void GUIProxy::connectToCore(QString, quint16) {}
+void GUIProxy::disconnectFromCore() {}
+void GUIProxy::updateCoreData(QString) {}
+void GUIProxy::serverError(QAbstractSocket::SocketError) {}
+