#include <QApplication>
#include "core.h"
-#include "quassel.h"
+#include "style.h"
+#include "global.h"
#include "guiproxy.h"
#include "coreproxy.h"
+#include "settings.h"
+#include "chatwidget.h"
#include "mainwin.h"
QApplication::setApplicationName("Quassel IRC");
QApplication::setOrganizationName("The Quassel Team");
- Quassel::runMode = Quassel::Monolithic;
- quassel = new Quassel();
+ Global::runMode = Global::Monolithic;
+ Global::quasselDir = QDir::homePath() + "/.quassel";
+
+ //settings = new Settings();
+ global = new Global();
guiProxy = new GUIProxy();
coreProxy = new CoreProxy();
- core = new Core();
- core->init();
+ Settings::init();
+ Style::init();
- MainWin mainWin;
- mainWin.show();
+ MainWin *mainWin = new MainWin();
+ mainWin->show();
+ mainWin->init();
int exitCode = app.exec();
delete core;
delete guiProxy;
delete coreProxy;
- delete quassel;
+ delete global;
+ delete mainWin;
+ //delete settings;
return exitCode;
}
-void GUIProxy::send(GUISignal sig, QVariant arg1, QVariant arg2, QVariant arg3) {
- coreProxy->recv(sig, arg1, arg2, arg3);
+void MainWin::syncToCore() {
+ Q_ASSERT(global->getData("CoreReady").toBool());
+ coreBuffers = core->getBuffers();
+ // NOTE: We don't need to request server states, because in the monolithic version there can't be
+ // any servers connected at this stage...
}
-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::sendToGUI(CoreSignal sig, QVariant arg1, QVariant arg2, QVariant arg3) {
+ guiProxy->recv(sig, arg1, arg2, arg3);
}
-void CoreProxy::send(CoreSignal sig, QVariant arg1, QVariant arg2, QVariant arg3) {
- guiProxy->recv(sig, arg1, arg2, arg3);
+GUIProxy::GUIProxy() {
+ if(guiProxy) qFatal("Trying to instantiate more than one GUIProxy object!");
}
-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;
- }
+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) {}
+