Renamed NetworkView[Widget] to BufferView[Widget].
[quassel.git] / core / core.h
index 7cfecec..a90a8f6 100644 (file)
 #include <QMap>
 #include <QString>
 #include <QVariant>
+#include <QSqlDatabase>
 
 #include "server.h"
+#include "backlog.h"
+#include "storage.h"
+#include "global.h"
 
-typedef QMap<QString, QVariant> VarMap;
-
-class Core : public QThread {
+class Core : public QObject {
   Q_OBJECT
 
   public:
 
-    static void 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;
 
 };
 
+extern Core *core;
+
 #endif