LeechCraft  0.6.70-15082-g543737046d
Modular cross-platform feature rich live environment.
ianrulesstorage.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 #include <QtPlugin>
10 
11 class QString;
12 
13 template<typename T>
14 class QList;
15 
16 namespace LC
17 {
18  struct Entity;
19 }
20 
28 {
29 public:
30  virtual ~IANRulesStorage () {}
31 
42  virtual QList<LC::Entity> GetAllRules (const QString& category) const = 0;
43 
48  virtual void RequestRuleConfiguration (const LC::Entity& rule) = 0;
49 protected:
57  virtual void rulesChanged () = 0;
58 };
59 
60 Q_DECLARE_INTERFACE (IANRulesStorage, "org.LeechCraft.IANRulesStorage/1.0")
QList
Definition: ianrulesstorage.h:14
LC::Entity
A message used for inter-plugin communication.
Definition: structures.h:95
IANRulesStorage::RequestRuleConfiguration
virtual void RequestRuleConfiguration(const LC::Entity &rule)=0
Requests opening the configuration of the given rule.
IANRulesStorage::~IANRulesStorage
virtual ~IANRulesStorage()
Definition: ianrulesstorage.h:30
IANRulesStorage::GetAllRules
virtual QList< LC::Entity > GetAllRules(const QString &category) const =0
Returns all rules matching the category.
LC
Definition: constants.h:14
IANRulesStorage::rulesChanged
virtual void rulesChanged()=0
Emitted when the rules change.
IANRulesStorage
Interface for plugins managing Advanced Notifications rules.
Definition: ianrulesstorage.h:27