27 #include <QMouseEvent>
28 #include <QStandardItem>
34 #define DEFAULT_FILTER_CONTENT "Click&type to filter"
36 #define FILTER_HEIGHT 22
39 QTreeView(parent), hideChildren(hideChildren)
41 filterLineEdit =
new QLineEdit(
this);
44 filterExpansionTimer.setSingleShot(
true);
46 setStyleSheet(
"QTreeView{margin-top: " + QString::number(filterLineEdit->height()) +
"px}");
50 FilterableTreeView::resizeEvent(QResizeEvent* event)
53 QTreeView::resizeEvent(event);
66 proxyModel->setSourceModel(model);
67 QTreeView::setModel(proxyModel);
69 connect(filterLineEdit,
70 SIGNAL(textChanged(QString)),
72 SLOT(setFilterFixedString(QString)));
73 connect(filterLineEdit,
74 SIGNAL(textChanged(QString)),
77 Qt::QueuedConnection);
84 if (filterStr.length() == 0)
91 filterExpansionTimer.start(500);