'apply as filter' for search feature in libraries view too

This commit is contained in:
Matthias Koefferlein 2021-02-14 21:07:36 +01:00
parent 92d36868bb
commit 16f6174ad9
2 changed files with 9 additions and 0 deletions

View File

@ -262,11 +262,18 @@ LibrariesView::LibrariesView (lay::LayoutView *view, QWidget *parent, const char
mp_case_sensitive->setChecked (true);
mp_case_sensitive->setText (tr ("Case sensitive search"));
mp_filter = new QAction (this);
mp_filter->setCheckable (true);
mp_filter->setChecked (false);
mp_filter->setText (tr ("Apply as filter"));
QMenu *m = new QMenu (mp_search_edit_box);
m->addAction (mp_use_regular_expressions);
m->addAction (mp_case_sensitive);
m->addAction (mp_filter);
connect (mp_use_regular_expressions, SIGNAL (triggered ()), this, SLOT (search_edited ()));
connect (mp_case_sensitive, SIGNAL (triggered ()), this, SLOT (search_edited ()));
connect (mp_filter, SIGNAL (triggered ()), this, SLOT (search_edited ()));
mp_search_edit_box->set_clear_button_enabled (true);
mp_search_edit_box->set_options_button_enabled (true);
@ -382,6 +389,7 @@ LibrariesView::search_edited ()
for (std::vector <QTreeView *>::const_iterator v = mp_cell_lists.begin (); v != mp_cell_lists.end (); ++v) {
if ((*v)->model () == mp_search_model) {
mp_search_model->set_filter_mode (mp_filter->isChecked ());
if (t.isEmpty ()) {
mp_search_model->clear_locate ();
(*v)->setCurrentIndex (QModelIndex ());

View File

@ -242,6 +242,7 @@ private:
lay::DecoratedLineEdit *mp_search_edit_box;
QAction *mp_case_sensitive;
QAction *mp_use_regular_expressions;
QAction *mp_filter;
CellTreeModel *mp_search_model;
QFrame *mp_search_frame;
QCheckBox *mp_search_close_cb;