libqutim  0.3.1.0
groupchatmanager.h
Go to the documentation of this file.
1 /****************************************************************************
2 **
3 ** qutIM - instant messenger
4 **
5 ** Copyright © 2011 Ruslan Nigmatullin <euroelessar@yandex.ru>
6 **
7 *****************************************************************************
8 **
9 ** $QUTIM_BEGIN_LICENSE$
10 ** This program is free software: you can redistribute it and/or modify
11 ** it under the terms of the GNU General Public License as published by
12 ** the Free Software Foundation, either version 3 of the License, or
13 ** (at your option) any later version.
14 **
15 ** This program is distributed in the hope that it will be useful,
16 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
17 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
18 ** See the GNU General Public License for more details.
19 **
20 ** You should have received a copy of the GNU General Public License
21 ** along with this program. If not, see http://www.gnu.org/licenses/.
22 ** $QUTIM_END_LICENSE$
23 **
24 ****************************************************************************/
25 #ifndef GROUPCHATMANAGER_H
26 #define GROUPCHATMANAGER_H
27 
28 #include "libqutim_global.h"
29 
30 namespace qutim_sdk_0_3
31 {
32 
33 class DataItem;
34 class Protocol;
35 class Account;
36 class GroupChatManagerPrivate;
37 
39 {
40 public:
44  GroupChatManager(Account *account);
48  virtual ~GroupChatManager();
52  Account *account() const;
56  virtual DataItem fields() const = 0;
60  virtual bool join(const DataItem &fields) = 0;
66  virtual bool storeBookmark(const DataItem &fields, const DataItem &oldFields) = 0;
72  virtual bool removeBookmark(const DataItem &fields) = 0;
76  virtual QList<DataItem> bookmarks() const = 0;
80  virtual QList<DataItem> recent() const = 0;
86  static QList<GroupChatManager*> allManagers();
87 private:
88  QScopedPointer<GroupChatManagerPrivate> d;
89 };
90 
91 }
92 
93 Q_DECLARE_INTERFACE(qutim_sdk_0_3::GroupChatManager, "org.qutim.core.GroupChatManager");
94 
95 #endif // GROUPCHATMANAGER_H
96 

Generated by Doxygen