diff options
author | Gerald Combs <gerald@wireshark.org> | 2016-02-12 13:40:05 -0800 |
---|---|---|
committer | Gerald Combs <gerald@wireshark.org> | 2016-03-03 19:50:30 +0000 |
commit | b9561bd3bbb8d138644aa10a627d587b6b1ae5e7 (patch) | |
tree | cf3eb1124968a9c94afcecef22b0d43d3eb1583e /ui | |
parent | 8435145b1fe1bcdc93bc48e26346739e9962686f (diff) |
Qt: Allow regex searching in the advanced prefs.
Use a QRegex for Preferences → Advanced → Search.
Change-Id: Iebf1cba9c17ff774ce50ef909b6d181751b272aa
Reviewed-on: https://code.wireshark.org/review/13924
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Diffstat (limited to 'ui')
-rw-r--r-- | ui/qt/preferences_dialog.cpp | 11 | ||||
-rw-r--r-- | ui/qt/preferences_dialog.h | 2 |
2 files changed, 7 insertions, 6 deletions
diff --git a/ui/qt/preferences_dialog.cpp b/ui/qt/preferences_dialog.cpp index 58b36c3baa..f21d8f9764 100644 --- a/ui/qt/preferences_dialog.cpp +++ b/ui/qt/preferences_dialog.cpp @@ -524,13 +524,14 @@ void PreferencesDialog::on_prefsTree_currentItemChanged(QTreeWidgetItem *current } } -void PreferencesDialog::on_advancedSearchLineEdit_textEdited(const QString &search_str) +void PreferencesDialog::on_advancedSearchLineEdit_textEdited(const QString &search_re) { // Hide or show each branch QTreeWidgetItemIterator branch_it(pd_ui_->advancedTree); + QRegExp regex(search_re, Qt::CaseInsensitive); while (*branch_it) { if ((*branch_it)->data(pref_ptr_col_, Qt::UserRole).value<pref_t *>() == NULL) { - (*branch_it)->setHidden(!search_str.isEmpty()); + (*branch_it)->setHidden(!search_re.isEmpty()); } ++branch_it; } @@ -543,9 +544,9 @@ void PreferencesDialog::on_advancedSearchLineEdit_textEdited(const QString &sear if ((*pref_it)->data(pref_ptr_col_, Qt::UserRole).value<pref_t *>()) { QTreeWidgetItem *parent = (*pref_it)->parent(); - if (search_str.isEmpty() || - (*pref_it)->text(0).contains(search_str, Qt::CaseInsensitive) || - (*pref_it)->toolTip(0).contains(search_str, Qt::CaseInsensitive)) { + if (search_re.isEmpty() || + (*pref_it)->text(0).contains(regex) || + (*pref_it)->toolTip(0).contains(regex)) { hidden = false; } diff --git a/ui/qt/preferences_dialog.h b/ui/qt/preferences_dialog.h index 776ecd4429..6f339a6bb6 100644 --- a/ui/qt/preferences_dialog.h +++ b/ui/qt/preferences_dialog.h @@ -80,7 +80,7 @@ private: private slots: void on_prefsTree_currentItemChanged(QTreeWidgetItem *current, QTreeWidgetItem *previous); - void on_advancedSearchLineEdit_textEdited(const QString &search_str); + void on_advancedSearchLineEdit_textEdited(const QString &search_re); void lineEditPrefDestroyed(); void enumPrefDestroyed(); void uintPrefEditingFinished(); |