LeechCraft Azoth 0.6.70-17335-ge406ffdcaf
Modular multiprotocol IM plugin for LeechCraft
Loading...
Searching...
No Matches
isupportriex.h
Go to the documentation of this file.
1/**********************************************************************
2 * LeechCraft - modular cross-platform feature rich internet client.
3 * Copyright (C) 2006-2014 Georg Rudoy
4 *
5 * Distributed under the Boost Software License, Version 1.0.
6 * (See accompanying file LICENSE or copy at https://www.boost.org/LICENSE_1_0.txt)
7 **********************************************************************/
8
9#ifndef PLUGINS_AZOTH_INTERFACES_ISUPPORTRIEX_H
10#define PLUGINS_AZOTH_INTERFACES_ISUPPORTRIEX_H
11#include <QFlags>
12#include <QMetaType>
13#include <QStringList>
14
15namespace LC
16{
17namespace Azoth
18{
21 struct RIEXItem
22 {
44
57 QString ID_;
58
63 QString Nick_;
64
72 QStringList Groups_;
73 };
74
75 inline bool operator== (const RIEXItem& r1, const RIEXItem& r2)
76 {
77 return r1.Action_ == r2.Action_ &&
78 r1.ID_ == r2.ID_ &&
79 r1.Nick_ == r2.Nick_ &&
80 r1.Groups_ == r2.Groups_;
81 }
82
91 {
92 public:
93 virtual ~ISupportRIEX () {}
94
105 virtual void SuggestItems (QList<RIEXItem> items, QObject *entry, QString message) = 0;
106
125 QObject *from, QString message) = 0;
126 };
127}
128}
129
130Q_DECLARE_INTERFACE (LC::Azoth::ISupportRIEX,
131 "org.Deviant.LeechCraft.Azoth.ISupportRIEX/1.0")
132Q_DECLARE_METATYPE (LC::Azoth::RIEXItem)
133
134#endif
Interface representing Roster Item Exchange-like things.
virtual void SuggestItems(QList< RIEXItem > items, QObject *entry, QString message)=0
Sends exchange request to the given entry.
virtual void riexItemsSuggested(QList< LC::Azoth::RIEXItem > items, QObject *from, QString message)=0
Notifies that other part suggested modifying roster.
bool operator==(const ActivityInfo &i1, const ActivityInfo &i2)
Checks whether the activity info structures are equal.
Represents a single exchange entry.
enum LC::Azoth::RIEXItem::Action Action_
QStringList Groups_
The suggested groups for the entry.
QString Nick_
The suggested nickname of the entry.
Action
What should be done with this item.
@ ADelete
This item should be removed from the roster.
@ AModify
This item should be updated in the roster.
QString ID_
The human-readable ID of the entry.