~quassel-dev/quassel/i18n-master

« back to all changes in this revision

Viewing changes to gui/guiproxy.h

  • Committer: Manuel Nickschas
  • Date: 2007-06-20 01:21:00 UTC
  • Revision ID: git-v1:077d44f36d2f5c730283ef6be839aea7dd073d56
Starting reorganization of files in preparation of separation of client and GUI.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/***************************************************************************
2
 
 *   Copyright (C) 2005/06 by The Quassel Team                             *
3
 
 *   devel@quassel-irc.org                                                 *
4
 
 *                                                                         *
5
 
 *   This program is free software; you can redistribute it and/or modify  *
6
 
 *   it under the terms of the GNU General Public License as published by  *
7
 
 *   the Free Software Foundation; either version 2 of the License, or     *
8
 
 *   (at your option) any later version.                                   *
9
 
 *                                                                         *
10
 
 *   This program is distributed in the hope that it will be useful,       *
11
 
 *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
12
 
 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
13
 
 *   GNU General Public License for more details.                          *
14
 
 *                                                                         *
15
 
 *   You should have received a copy of the GNU General Public License     *
16
 
 *   along with this program; if not, write to the                         *
17
 
 *   Free Software Foundation, Inc.,                                       *
18
 
 *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
19
 
 ***************************************************************************/
20
 
 
21
 
#ifndef _GUIPROXY_H_
22
 
#define _GUIPROXY_H_
23
 
 
24
 
#include "proxy_common.h"
25
 
#include "message.h"
26
 
#include "global.h"
27
 
 
28
 
#include <QObject>
29
 
#include <QVariant>
30
 
#include <QTcpSocket>
31
 
#include <QStringList>
32
 
 
33
 
class ClientProxy : public QObject {
34
 
  Q_OBJECT
35
 
 
36
 
  public:
37
 
    static ClientProxy *instance();
38
 
    static void destroy();
39
 
 
40
 
  public slots:
41
 
    inline void gsUserInput(BufferId id, QString msg)                 { send(GS_USER_INPUT, QVariant::fromValue(id), msg); }
42
 
    inline void gsRequestConnect(QStringList networks)                { send(GS_REQUEST_CONNECT, networks); }
43
 
    inline void gsImportBacklog()                                     { send(GS_IMPORT_BACKLOG); }
44
 
    inline void gsRequestBacklog(BufferId id, QVariant v1, QVariant v2) { send(GS_REQUEST_BACKLOG, QVariant::fromValue(id), v1, v2); }
45
 
 
46
 
    inline void gsGeneric(ClientSignal sig, QVariant v1 = QVariant(), QVariant v2 = QVariant(), QVariant v3 = QVariant()) { send(sig, v1, v2, v3); }
47
 
 
48
 
    //void connectToCore(QString host, quint16 port);
49
 
    //void disconnectFromCore();
50
 
 
51
 
  signals:
52
 
    void csCoreState(QVariant);
53
 
    void csServerState(QString, QVariant);
54
 
    void csServerConnected(QString);
55
 
    void csServerDisconnected(QString);
56
 
    void csDisplayMsg(Message);
57
 
    void csDisplayStatusMsg(QString, QString);
58
 
    void csUpdateGlobalData(QString key, QVariant data);
59
 
    void csGlobalDataChanged(QString key);
60
 
    void csModeSet(QString, QString, QString);
61
 
    void csTopicSet(QString, QString, QString);
62
 
    void csNickAdded(QString, QString, VarMap);
63
 
    void csNickRemoved(QString, QString);
64
 
    void csNickRenamed(QString, QString, QString);
65
 
    void csNickUpdated(QString, QString, VarMap);
66
 
    void csOwnNickSet(QString, QString);
67
 
    void csQueryRequested(QString, QString);
68
 
    void csBacklogData(BufferId, QList<QVariant>, bool);
69
 
    void csUpdateBufferId(BufferId);
70
 
 
71
 
    void csGeneric(CoreSignal, QVariant, QVariant, QVariant);
72
 
 
73
 
    //void coreConnected();
74
 
    //void coreDisconnected();
75
 
    //void coreConnectionError(QString errorMsg);
76
 
 
77
 
    //void recvPartialItem(quint32 avail, quint32 size);
78
 
 
79
 
    void send(ClientSignal, QVariant arg1 = QVariant(), QVariant arg2 = QVariant(), QVariant arg3 = QVariant());
80
 
 
81
 
  public slots:
82
 
    void recv(CoreSignal, QVariant arg1 = QVariant(), QVariant arg2 = QVariant(), QVariant arg3 = QVariant());
83
 
 
84
 
  private slots:
85
 
    //void updateCoreData(QString);
86
 
 
87
 
    //void serverError(QAbstractSocket::SocketError);
88
 
    //void serverHasData();
89
 
 
90
 
  private:
91
 
    ClientProxy();
92
 
    static ClientProxy *instanceptr;
93
 
 
94
 
    //QTcpSocket socket;
95
 
    //quint32 blockSize;
96
 
 
97
 
  //friend class CoreProxy;
98
 
 
99
 
};
100
 
 
101
 
//extern ClientProxy *guiProxy;
102
 
 
103
 
 
104
 
 
105
 
#endif