Ok this is the major rework of quassel we've all been waiting for. For the actual...
[quassel.git] / src / common / signalproxy.h
index 90dadde..3e7136a 100644 (file)
@@ -34,23 +34,24 @@ class SignalProxy : public QObject {
     SignalProxy(ProxyType type, QIODevice *device = 0, QObject *parent = 0);
     ~SignalProxy();
 
+  ProxyType proxyType() const { return type; }
     void attachSignal(QObject* sender, const char* signal, const QByteArray& rpcFunction = QByteArray());
     void attachSlot(const QByteArray& rpcFunction, QObject* recv, const char* slot);
 
-    void detachObject(QObject* obj);
-
   public slots:
     void addPeer(QIODevice *device);
 
     void sendSignal(const char *signal, QVariant p1 = QVariant(), QVariant p2 = QVariant(), QVariant p3 = QVariant(), QVariant p4 = QVariant(),
               QVariant p5 = QVariant(), QVariant p6 = QVariant(), QVariant p7 = QVariant(), QVariant p8 = QVariant(), QVariant p9 = QVariant());
-
-    void detachSender();
+  
+    //void detachSender();
+    void detachObject(QObject *);
 
   signals:
-    //void peerDisconnected();
+    void peerDisconnected();
 
   private slots:
+    void socketDisconnected();
 
   private:
     struct Connection {
@@ -60,7 +61,7 @@ class SignalProxy : public QObject {
 
     struct SignalDesc {
       QObject *sender;
-      const char *signal;
+      QByteArray signal;
       QByteArray rpcFunction;
 
       SignalDesc(QObject *sndr, const char *sig, const QByteArray &func) : sender(sndr), signal(sig), rpcFunction(func) {}
@@ -69,7 +70,7 @@ class SignalProxy : public QObject {
     struct SlotDesc {
       QByteArray rpcFunction;
       QObject *recv;
-      const char *slot;
+      QByteArray slot;
 
       SlotDesc(const QByteArray& func, QObject* r, const char* s) : rpcFunction(func), recv(r), slot(s) {}
     };