LeechCraft 0.6.70-14794-g33744ae6ce
Modular cross-platform feature rich live environment.
Loading...
Searching...
No Matches
idatafilter.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#pragma once
10
11#include <functional>
12#include <QtPlugin>
13#include <QString>
14#include <QList>
15#include <QIcon>
16#include <QMetaType>
17
29typedef std::function<void (QVariant)> DataFilterCallback_f;
30
69class Q_DECL_EXPORT IDataFilter
70{
71public:
76 {
82 QByteArray ID_;
83
86 QString Name_;
87
90 QString Description_;
91
94 QIcon Icon_;
95 };
96
97 virtual ~IDataFilter () {}
98
108 virtual QString GetFilterVerb () const = 0;
109
121 virtual QList<FilterVariant> GetFilterVariants (const QVariant& data) const = 0;
122};
123
125Q_DECLARE_INTERFACE (IDataFilter, "org.Deviant.LeechCraft.IDataFilter/1.0")
Base interface for data filter plugins.
Definition: idatafilter.h:70
virtual ~IDataFilter()
Definition: idatafilter.h:97
virtual QList< FilterVariant > GetFilterVariants(const QVariant &data) const =0
Returns the list of concrete data filter variants.
virtual QString GetFilterVerb() const =0
Returns the string describing the data filter.
std::function< void(QVariant)> DataFilterCallback_f
The type to be used as a data filter callback.
Definition: idatafilter.h:29
Describes a single filter variant supported by this data filter.
Definition: idatafilter.h:76
QByteArray ID_
The ID of this filter variant.
Definition: idatafilter.h:82
QIcon Icon_
The icon representing the filter variant.
Definition: idatafilter.h:94
QString Name_
The human-readable name of the filter variant.
Definition: idatafilter.h:86
QString Description_
The description of the filter variant.
Definition: idatafilter.h:90
Q_DECLARE_METATYPE(QVariantList *)