Olive
project
projectfilter.h
1
/***
2
3
Olive - Non-Linear Video Editor
4
Copyright (C) 2019 Olive Team
5
6
This program is free software: you can redistribute it and/or modify
7
it under the terms of the GNU General Public License as published by
8
the Free Software Foundation, either version 3 of the License, or
9
(at your option) any later version.
10
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.
15
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/>.
18
19
***/
20
21
#ifndef PROJECTFILTER_H
22
#define PROJECTFILTER_H
23
24
#include <QSortFilterProxyModel>
25
26
class
ProjectFilter
:
public
QSortFilterProxyModel {
27
Q_OBJECT
28
public
:
29
ProjectFilter
(QObject *parent =
nullptr
);
30
31
// are sequences visible
32
bool
get_show_sequences();
33
34
public
slots:
35
36
// set whether sequences are visible
37
void
set_show_sequences(
bool
b);
38
39
// update search filter
40
void
update_search_filter(
const
QString& s);
41
42
protected
:
43
44
// function that filters whether rows are displayed or not
45
virtual
bool
filterAcceptsRow(
int
source_row,
const
QModelIndex &source_parent)
const
;
46
47
private
:
48
49
// internal variable for whether to show sequences
50
bool
show_sequences;
51
52
// search filter variable
53
QString search_filter;
54
55
};
56
57
#endif // PROJECTFILTER_H
ProjectFilter
Definition:
projectfilter.h:26
Generated by
1.8.15