2
* Copyright (C) 2017 Canonical, Ltd.
4
* This program is free software; you can redistribute it and/or modify
5
* it under the terms of the GNU General Public License as published by
6
* the Free Software Foundation; version 3.
8
* This program is distributed in the hope that it will be useful,
9
* but WITHOUT ANY WARRANTY; without even the implied warranty of
10
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11
* GNU General Public License for more details.
13
* You should have received a copy of the GNU General Public License
14
* along with this program. If not, see <http://www.gnu.org/licenses/>.
17
#ifndef EXPRESSIONFILTERMODEL_H
18
#define EXPRESSIONFILTERMODEL_H
20
#include "unitysortfilterproxymodelqml.h"
23
class ExpressionFilterModel : public UnitySortFilterProxyModelQML
26
Q_PROPERTY(QJSValue matchExpression READ matchExpression WRITE setMatchExpression NOTIFY matchExpressionChanged)
28
explicit ExpressionFilterModel(QObject *parent = 0);
30
bool filterAcceptsRow(int sourceRow, const QModelIndex &sourceParent) const override;
32
QJSValue matchExpression() const;
33
void setMatchExpression(const QJSValue& value);
36
void matchExpressionChanged();
39
mutable QJSValue m_matchExpression;
42
#endif // EXPRESSIONFILTERMODEL_H