summaryrefslogtreecommitdiff
path: root/ui/stringsview.h
diff options
context:
space:
mode:
authorJosh Ferrell <josh@vector35.com>2026-01-26 14:23:12 -0500
committerJosh Ferrell <josh@vector35.com>2026-02-06 17:53:45 -0500
commit70bbb18a9444824a8ec2b9a7ff57fc848e017b6e (patch)
treefe87c0976b75a7557986d1ac6bcc2409a839624c /ui/stringsview.h
parent9b7604d13e8bd98c6998facb9326926ed96281b5 (diff)
Add regex and case sensitivity options to FilterEdit
Diffstat (limited to 'ui/stringsview.h')
-rw-r--r--ui/stringsview.h15
1 files changed, 9 insertions, 6 deletions
diff --git a/ui/stringsview.h b/ui/stringsview.h
index 4be86d60..b3ced9ec 100644
--- a/ui/stringsview.h
+++ b/ui/stringsview.h
@@ -68,7 +68,10 @@ class BINARYNINJAUIAPI StringsListModel : public QAbstractItemModel, public Bina
std::vector<StringsListItem> m_strings;
std::map<uint64_t, uint64_t> m_refCounts;
std::map<BinaryNinja::DerivedString, uint64_t> m_derivedRefCounts;
- std::string m_filter;
+
+ QString m_filter;
+ FilterOptions m_filterOptions;
+ QRegularExpression m_filterRegex; // This holds a compiled regex for m_filter
size_t m_filteredByOptions;
@@ -116,9 +119,9 @@ class BINARYNINJAUIAPI StringsListModel : public QAbstractItemModel, public Bina
virtual void sort(int col, Qt::SortOrder order) override;
- void setFilter(const std::string& filter);
+ void setFilter(const QString& filter, FilterOptions options);
- void updateFilter() { setFilter(m_filter); };
+ void updateFilter() { setFilter(m_filter, m_filterOptions); };
size_t getFilteredStringCount() const { return m_filteredByOptions; }
size_t getStringCount() const { return m_strings.size(); }
@@ -199,7 +202,7 @@ class BINARYNINJAUIAPI StringsView : public QTableView, public View, public Filt
virtual void selectionChanged(const QItemSelection& selected, const QItemSelection& deselected) override;
- virtual void setFilter(const std::string& filter) override;
+ virtual void setFilter(const std::string& filter, FilterOptions options) override;
virtual void scrollToFirstItem() override;
virtual void scrollToCurrentItem() override;
virtual void ensureSelection() override;
@@ -242,7 +245,7 @@ class BINARYNINJAUIAPI StringsContainer : public QWidget, public ViewContainer
friend class StringsView;
StringsView* m_strings;
- FilteredView* m_filter;
+ FilteredView* m_filteredView;
FilterEdit* m_separateEdit = nullptr;
StringsViewSidebarWidget* m_widget;
UIActionHandler m_actionHandler;
@@ -252,7 +255,7 @@ class BINARYNINJAUIAPI StringsContainer : public QWidget, public ViewContainer
virtual View* getView() override { return m_strings; }
StringsView* getStringsView() { return m_strings; }
- FilteredView* getFilter() { return m_filter; }
+ FilteredView* getFilter() { return m_filteredView; }
FilterEdit* getSeparateFilterEdit() { return m_separateEdit; }
protected: