summaryrefslogtreecommitdiff
path: root/noncore/net/opieirc/ircconnection.h
authorwazlaf <wazlaf>2002-09-10 23:12:17 (UTC)
committer wazlaf <wazlaf>2002-09-10 23:12:17 (UTC)
commitd478be344e2ba383a1e38d2a1705de1cdbe2e838 (patch) (unidiff)
tree9daf7b496c74c695ed8bd72a6ccd321f770b043c /noncore/net/opieirc/ircconnection.h
parent2d6c8bd7290b766c31c100cd2d66ef0d1d0c407c (diff)
downloadopie-d478be344e2ba383a1e38d2a1705de1cdbe2e838.zip
opie-d478be344e2ba383a1e38d2a1705de1cdbe2e838.tar.gz
opie-d478be344e2ba383a1e38d2a1705de1cdbe2e838.tar.bz2
initial import of OpieIRC v0.1
Diffstat (limited to 'noncore/net/opieirc/ircconnection.h') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/net/opieirc/ircconnection.h65
1 files changed, 65 insertions, 0 deletions
diff --git a/noncore/net/opieirc/ircconnection.h b/noncore/net/opieirc/ircconnection.h
new file mode 100644
index 0000000..75cdf6d
--- a/dev/null
+++ b/noncore/net/opieirc/ircconnection.h
@@ -0,0 +1,65 @@
1/*
2 OpieIRC - An embedded IRC client
3 Copyright (C) 2002 Wenzel Jakob
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 Free Software
17 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18
19*/
20
21#ifndef __IRCCONNECTION_H
22#define __IRCCONNECTION_H
23
24#include <qsocket.h>
25#include "ircserver.h"
26#include "ircmessage.h"
27#include "ircoutput.h"
28
29/* IRCConnection acts as a wrapper around QSocket
30 and is responsible for the communication with the
31 IRC server */
32class IRCConnection : public QObject {
33 Q_OBJECT
34public:
35 IRCConnection(IRCServer *server);
36 void doConnect();
37 /* used to send commands to the IRC server */
38 void sendLine(QString line);
39 /* used to send CTCP commands to the IRC server */
40 void sendCTCP(QString nick, QString line);
41 void close();
42 bool isConnected();
43 bool isLoggedIn();
44signals:
45 /* triggered when the server sent us a message */
46 void messageArrived(IRCMessage *message);
47 /* Used to send commands to the UI (such as displaying text etc) */
48 void outputReady(IRCOutput output);
49protected slots:
50 /* automatically executed after the connection is established */
51 void login();
52 /* called when there are socket errors */
53 void error(int num);
54 /* called when data arrived on m_socket (triggers messageArrived) */
55 void dataReady();
56 /* called when the IRC server closes the connection */
57 void disconnect();
58protected:
59 IRCServer *m_server;
60 QSocket *m_socket;
61 bool m_connected;
62 bool m_loggedIn;
63};
64
65#endif /* __IRCCONNECTION_H */