projects
/
pulseview.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
DecoderSelector: Implement filtering
[pulseview.git]
/
pv
/
subwindows
/
decoder_selector
/
subwindow.hpp
diff --git
a/pv/subwindows/decoder_selector/subwindow.hpp
b/pv/subwindows/decoder_selector/subwindow.hpp
index 4434f0a610bcd2030e867acc598b5417eb3184c4..6f6456d3bff16292855cae6dc14bd71c1fb5a9bd 100644
(file)
--- a/
pv/subwindows/decoder_selector/subwindow.hpp
+++ b/
pv/subwindows/decoder_selector/subwindow.hpp
@@
-24,6
+24,7
@@
#include <QAbstractItemModel>
#include <QLabel>
#include <QAbstractItemModel>
#include <QLabel>
+#include <QSortFilterProxyModel>
#include <QSplitter>
#include <QTreeView>
#include <QSplitter>
#include <QTreeView>
@@
-84,6
+85,12
@@
private:
};
};
+class QCustomSortFilterProxyModel : public QSortFilterProxyModel
+{
+protected:
+ bool filterAcceptsRow(int source_row, const QModelIndex& source_parent) const;
+};
+
class QCustomTreeView : public QTreeView
{
Q_OBJECT
class QCustomTreeView : public QTreeView
{
Q_OBJECT
@@
-126,6
+133,8
@@
public Q_SLOTS:
void on_item_changed(const QModelIndex& index);
void on_item_activated(const QModelIndex& index);
void on_item_changed(const QModelIndex& index);
void on_item_activated(const QModelIndex& index);
+ void on_filter_changed(const QString& text);
+
private:
QSplitter* splitter_;
QCustomTreeView* tree_view_;
private:
QSplitter* splitter_;
QCustomTreeView* tree_view_;
@@
-134,6
+143,7
@@
private:
QLabel* info_label_body_;
QLabel* info_label_footer_;
DecoderCollectionModel* model_;
QLabel* info_label_body_;
QLabel* info_label_footer_;
DecoderCollectionModel* model_;
+ QCustomSortFilterProxyModel* sort_filter_model_;
};
} // decoder_selector
};
} // decoder_selector