#include <QMap>
#include <QString>
#include <QVariant>
+#include <QSqlDatabase>
#include "server.h"
+#include "backlog.h"
+#include "storage.h"
+#include "global.h"
-class Core : public QThread {
+class Core : public QObject {
Q_OBJECT
public:
- static Core * init();
- static VarMap loadNetworks();
- static void storeNetworks(VarMap);
- static VarMap loadIdentities();
- static void storeIdentities(VarMap);
+ Core();
+ ~Core();
+ QList<BufferId> getBuffers();
public slots:
- void inputLine(const QString &); // temp
- void connectToIrc(const QString &, quint16 port = 6667);
+ void connectToIrc(QStringList);
+ void sendBacklog(BufferId, QVariant, QVariant);
+ void msgFromGUI(BufferId, QString message);
signals:
- void outputLine(const QString &); // temp
-
- private:
- void run();
+ void msgFromGUI(QString net, QString buf, QString message);
+ void displayMsg(Message message);
+ void displayStatusMsg(QString, QString);
+
+ void connectToIrc(QString net);
+ void disconnectFromIrc(QString net);
+ void serverStateRequested();
+
+ void backlogData(BufferId, QList<QVariant>, bool done);
- Server server; // temp
+ void bufferIdUpdated(BufferId);
+
+ private slots:
+ void globalDataUpdated(QString);
+ void recvStatusMsgFromServer(QString msg);
+ void recvMessageFromServer(Message::Type, QString target, QString text, QString sender = "", quint8 flags = Message::None);
+ void serverDisconnected(QString net);
+
+ private:
+ Storage *storage;
+ QHash<QString, Server *> servers;
+ UserId user;
};