LeechCraft Azoth
0.6.70-15082-g543737046d
Modular multiprotocol IM plugin for LeechCraft
iprotocolplugin.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_IPROTOCOLPLUGIN_H
10
#define PLUGINS_AZOTH_INTERFACES_IPROTOCOLPLUGIN_H
11
#include <QList>
12
13
class
QObject;
14
15
namespace
LC
16
{
17
namespace
Azoth
18
{
26
class
IProtocolPlugin
27
{
28
public
:
29
virtual
~IProtocolPlugin
() {}
30
35
virtual
QObject*
GetQObject
() = 0;
36
46
virtual
QList<QObject*>
GetProtocols
()
const
= 0;
47
protected
:
61
virtual
void
gotNewProtocols
(
const
QList<QObject*>
& protocols) = 0;
62
};
63
}
64
}
65
66
Q_DECLARE_INTERFACE (
LC::Azoth::IProtocolPlugin
,
67
"org.Deviant.LeechCraft.Azoth.IProtocolPlugin/1.0"
)
68
69
#endif
70
QList
Definition:
iaccountactionsprovider.h:16
LC::Azoth::IProtocolPlugin::GetProtocols
virtual QList< QObject * > GetProtocols() const =0
Returns the protocols list provided by this plugin.
LC::Azoth::IProtocolPlugin::GetQObject
virtual QObject * GetQObject()=0
Returns the protocol plugin object as a QObject.
LC::Azoth::IProtocolPlugin::~IProtocolPlugin
virtual ~IProtocolPlugin()
Definition:
iprotocolplugin.h:29
LC::Azoth::IProtocolPlugin::gotNewProtocols
virtual void gotNewProtocols(const QList< QObject * > &protocols)=0
Notifies Azoth that new protocols are available.
LC::Azoth::IProtocolPlugin
Definition:
iprotocolplugin.h:26
LC
Definition:
activityinfo.h:13
src
plugins
azoth
interfaces
azoth
iprotocolplugin.h
Generated by
1.8.17