~ubuntu-branches/ubuntu/hoary/kvirc/hoary

« back to all changes in this revision

Viewing changes to src/kvirc/kvi_dcc_manager.h

  • Committer: Bazaar Package Importer
  • Author(s): Robin Verduijn
  • Date: 2004-12-14 15:32:19 UTC
  • mfrom: (0.2.1 upstream) (1.1.1 warty)
  • Revision ID: james.westby@ubuntu.com-20041214153219-fdink3gyp2s20b6g
Tags: 2:2.1.3.1-2
* Change Recommends on xmms to a Suggests.
* Rebuild against KDE 3.3.1

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
#ifndef _KVI_DCC_MANAGER_H_INCLUDED_
2
 
#define _KVI_DCC_MANAGER_H_INCLUDED_
3
 
 
4
 
//
5
 
//   File : kvi_dcc_manager.h (/usr/build/NEW_kvirc/kvirc/src/kvirc/kvi_dcc_manager.h)
6
 
//   Last major modification : Sat May 15 1999 16:06:07 by Szymon Stefanek
7
 
//
8
 
//   This file is part of the KVirc irc client distribution
9
 
//   Copyright (C) 1999-2000 Szymon Stefanek (stefanek@tin.it)
10
 
//
11
 
//   This program is FREE software. You can redistribute it and/or
12
 
//   modify it under the terms of the GNU General Public License
13
 
//   as published by the Free Software Foundation; either version 2
14
 
//   of the License, or (at your opinion) any later version.
15
 
//
16
 
//   This program is distributed in the HOPE that it will be USEFUL,
17
 
//   but WITHOUT ANY WARRANTY; without even the implied warranty of
18
 
//   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
19
 
//   See the GNU General Public License for more details.
20
 
//
21
 
//   You should have received a copy of the GNU General Public License
22
 
//   along with this program. If not, write to the Free Software Foundation,
23
 
//   Inc. ,59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
24
 
//
25
 
 
26
 
class KviFrame;
27
 
 
28
 
#include <qobject.h>
29
 
 
30
 
#include "kvi_string.h"
31
 
#include "kvi_ircuser.h"
32
 
 
33
 
#include <qmessagebox.h>
34
 
#include <qfiledialog.h>
35
 
 
36
 
typedef struct KviDccSendRequestStruct
37
 
{
38
 
        KviStr nick;
39
 
        KviStr username;
40
 
        KviStr host;
41
 
        KviStr fileName;
42
 
        KviStr filePath;
43
 
        KviStr originalFileName;
44
 
        unsigned long fileLength;
45
 
        unsigned long uAddress;
46
 
        unsigned long resumeValue;
47
 
        unsigned short uPort;
48
 
};
49
 
 
50
 
 
51
 
class KviDccManager;
52
 
class KviFrame;
53
 
class KviDccChat;
54
 
 
55
 
class KviDccChatMessageBox : public QMessageBox
56
 
{
57
 
        Q_OBJECT
58
 
public:
59
 
        KviDccChatMessageBox(KviFrame * parent,const char *nick,const char *username,const char *host,unsigned long int uAddress,unsigned short uPort,bool bVoice = false);
60
 
        ~KviDccChatMessageBox();
61
 
public:
62
 
        KviStr m_nick;
63
 
        KviStr m_username;
64
 
        KviStr m_host;
65
 
        unsigned long m_uAddress;
66
 
        unsigned short m_uPort;
67
 
protected:
68
 
        virtual void done(int result);
69
 
signals:
70
 
        void dccRequestAccepted(const char *n,const char *u,const char *h,unsigned long a,unsigned short p);
71
 
};
72
 
 
73
 
class KviDccSendMessageBox : public QMessageBox
74
 
{
75
 
        Q_OBJECT
76
 
public:
77
 
        KviDccSendMessageBox(KviFrame * parent,KviDccSendRequestStruct * dccSend);
78
 
        ~KviDccSendMessageBox();
79
 
public:
80
 
        KviDccSendRequestStruct * m_dccSend;
81
 
protected:
82
 
        virtual void done(int result);
83
 
signals:
84
 
        void dccRequestAccepted(KviDccSendRequestStruct *dccSend);
85
 
};
86
 
 
87
 
class KviDccSendResumeMessageBox : public QMessageBox
88
 
{
89
 
        Q_OBJECT
90
 
public:
91
 
        KviDccSendResumeMessageBox(KviFrame * parent,KviDccSendRequestStruct * dccSend);
92
 
        ~KviDccSendResumeMessageBox();
93
 
public:
94
 
        KviDccSendRequestStruct * m_dccSend;
95
 
protected:
96
 
        virtual void done(int result);
97
 
signals:
98
 
        void dccSendResumeSelectionDone(KviDccSendRequestStruct *dccSend);
99
 
};
100
 
 
101
 
class KviDccSendRenameMessageBox : public QMessageBox
102
 
{
103
 
        Q_OBJECT
104
 
public:
105
 
        KviDccSendRenameMessageBox(KviFrame * parent,KviDccSendRequestStruct * dccSend);
106
 
        ~KviDccSendRenameMessageBox();
107
 
public:
108
 
        KviDccSendRequestStruct * m_dccSend;
109
 
protected:
110
 
        virtual void done(int result);
111
 
signals:
112
 
        void dccSendRenameSelectionDone(KviDccSendRequestStruct *dccSend);
113
 
};
114
 
 
115
 
class KviDccSendFileDialog : public QFileDialog
116
 
{
117
 
        Q_OBJECT
118
 
public:
119
 
        KviDccSendFileDialog(KviFrame * parent,KviDccSendRequestStruct *dccSend,bool bOutgoingDcc);
120
 
        ~KviDccSendFileDialog();
121
 
public:
122
 
        KviDccSendRequestStruct * m_dccSend;
123
 
protected:
124
 
        virtual void done(int result);
125
 
signals:
126
 
        void dccSaveNameSelected(KviDccSendRequestStruct *dccSend);
127
 
};
128
 
 
129
 
typedef struct _KviDccRequest
130
 
{
131
 
        KviStr szType;
132
 
        KviStr szParam;
133
 
        KviStr szAddress;
134
 
        KviStr szPort;
135
 
        KviStr szLast;
136
 
        KviStr szGarbage;
137
 
        KviStr szOriginalRequest;
138
 
        unsigned short uPort;
139
 
        unsigned long uAddress;
140
 
} KviDccRequest;
141
 
 
142
 
class KviDccManager : public QObject
143
 
{
144
 
        Q_OBJECT
145
 
public:
146
 
        KviDccManager(KviFrame * frame);
147
 
        ~KviDccManager();
148
 
public:
149
 
        KviFrame * m_pFrm;
150
 
public:
151
 
        void handleDccRequest(KviIrcUser &source,KviDccRequest * dcc);
152
 
 
153
 
        void handleDccChat(KviIrcUser &source,unsigned long uAddress,unsigned short uPort);
154
 
        void handleDccVoice(KviIrcUser &source,unsigned long uAddress,unsigned short uPort);
155
 
        void handleDccSend(KviIrcUser &source,KviStr &filename,unsigned long fileLen,unsigned long uAddress,unsigned short uPort);
156
 
        void handleDccAccept(KviIrcUser &source,KviStr &filename,unsigned short uPort,unsigned long uResumePos);
157
 
        void handleDccResume(KviIrcUser &source,KviStr &filename,unsigned short uPort,unsigned long uResumePos);
158
 
 
159
 
        KviDccChat * requestDccChat(const char *nick,const char *userandhost = 0);
160
 
        void requestDccVoice(const char *nick);
161
 
        void requestDccSend(const char *nick,const char *filename);
162
 
 
163
 
        unsigned short int getDccSendListenPort();
164
 
public slots:
165
 
        void acceptDccChat(const char *nick,const char *username,const char *host,unsigned long uAddress,unsigned short uPort);
166
 
        void acceptDccVoice(const char *nick,const char *username,const char *host,unsigned long uAddress,unsigned short uPort);
167
 
        void acceptDccSend(KviDccSendRequestStruct *dccSend);
168
 
        void dccSendFileNameSelected(KviDccSendRequestStruct *dccSend);
169
 
        void dccSendResumeSelectionDone(KviDccSendRequestStruct *dccSend);
170
 
        void dccSendFileToSendSelected(KviDccSendRequestStruct *dccSend);
171
 
};
172
 
 
173
 
#endif //!_KVI_DCC_MANAGER_H_INCLUDED_