2
* Copyright (C) 2013 Canonical, Ltd.
5
* Pawel Stolowski <pawel.stolowski@canonical.com>
7
* This program is free software; you can redistribute it and/or modify
8
* it under the terms of the GNU General Public License as published by
9
* the Free Software Foundation; version 3.
11
* This program is distributed in the hope that it will be useful,
12
* but WITHOUT ANY WARRANTY; without even the implied warranty of
13
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
* GNU General Public License for more details.
16
* You should have received a copy of the GNU General Public License
17
* along with this program. If not, see <http://www.gnu.org/licenses/>.
20
#ifndef ABSTRACTFILTEROPTION_H
21
#define ABSTRACTFILTEROPTION_H
27
class Q_DECL_EXPORT AbstractFilterOption : public QObject
31
Q_PROPERTY(QString id READ id NOTIFY idChanged)
32
Q_PROPERTY(QString name READ name NOTIFY nameChanged)
33
Q_PROPERTY(QString iconHint READ iconHint NOTIFY iconHintChanged)
34
Q_PROPERTY(bool active READ active WRITE setActive NOTIFY activeChanged)
38
virtual QString id() const = 0;
39
virtual QString name() const = 0;
40
virtual QString iconHint() const = 0;
41
virtual bool active() const = 0;
44
virtual void setActive(bool active) = 0;
47
AbstractFilterOption(QObject *parent);
50
void idChanged(const QString &);
51
void nameChanged(const QString &);
52
void iconHintChanged(const QString &);
53
void activeChanged(bool);
56
Q_DECLARE_METATYPE(AbstractFilterOption*)
58
#endif // ABSTRACTFILTEROPTION_H