KVIrc  4.9.2
DeveloperAPIs
KviIrcConnectionRequestQueue.h
Go to the documentation of this file.
1 #ifndef _KVI_IRCCONNECTIONREQUESTQUEUE_H_
2 #define _KVI_IRCCONNECTIONREQUESTQUEUE_H_
3 //=============================================================================
4 //
5 // File : KviIrcConnectionRequestQueue.h
6 // Creation date : Tue 09 Feb 2010 10:24:32 by Fabio Bas
7 //
8 // This file is part of the KVIrc IRC client distribution
9 // Copyright (C) 2010 Fabio Bas <ctrlaltca at gmail dot com>
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 option) 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
24 //
25 //=============================================================================
26 
33 #include "kvi_settings.h"
34 
35 #include <QTimer>
36 #include <QQueue>
37 
38 class KviChannelWindow;
39 
48 {
49  Q_OBJECT
50 public:
56 
61 
62 protected:
70  {
71  Mode = 0,
72  BanException = 1,
73  Invite = 2,
74  Who = 3,
75  QuietBan = 4,
76  Ban = 5
77  };
78 
79  QQueue<KviChannelWindow *> m_channels;
80  QTimer m_timer;
82 
83 public:
89  void enqueueChannel(KviChannelWindow * pChan);
90 
96  void dequeueChannel(KviChannelWindow * pChan);
97 
103  bool isQueued(KviChannelWindow * pChan) { return m_channels.contains(pChan); };
104 
109  void clearAll();
110 private slots:
115  void timerSlot();
116 };
117 
118 #endif
QQueue< KviChannelWindow * > m_channels
Definition: KviIrcConnectionRequestQueue.h:79
Class to enqueue commands to IRC server.
Definition: KviIrcConnectionRequestQueue.h:47
#define KVIRC_API
Definition: kvi_settings.h:128
RequestTypes m_curType
Definition: KviIrcConnectionRequestQueue.h:81
QTimer m_timer
Definition: KviIrcConnectionRequestQueue.h:80
bool isQueued(KviChannelWindow *pChan)
Checks if a channel is in the queue stack.
Definition: KviIrcConnectionRequestQueue.h:103
Mode
Definition: KviOptions.h:599
RequestTypes
Definition: KviIrcConnectionRequestQueue.h:69
This file contains compile time settings.
The class which manages a channel.
Definition: KviChannelWindow.h:113