From 16f6174ad93a318400767b94ac89419089958e90 Mon Sep 17 00:00:00 2001 From: Matthias Koefferlein Date: Sun, 14 Feb 2021 21:07:36 +0100 Subject: [PATCH] 'apply as filter' for search feature in libraries view too --- src/laybasic/laybasic/layLibrariesView.cc | 8 ++++++++ src/laybasic/laybasic/layLibrariesView.h | 1 + 2 files changed, 9 insertions(+) diff --git a/src/laybasic/laybasic/layLibrariesView.cc b/src/laybasic/laybasic/layLibrariesView.cc index ce2d9534f..322ce3ba6 100644 --- a/src/laybasic/laybasic/layLibrariesView.cc +++ b/src/laybasic/laybasic/layLibrariesView.cc @@ -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 ::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 ()); diff --git a/src/laybasic/laybasic/layLibrariesView.h b/src/laybasic/laybasic/layLibrariesView.h index 712cecd1b..17c140dd2 100644 --- a/src/laybasic/laybasic/layLibrariesView.h +++ b/src/laybasic/laybasic/layLibrariesView.h @@ -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;