From 70bbb18a9444824a8ec2b9a7ff57fc848e017b6e Mon Sep 17 00:00:00 2001 From: Josh Ferrell Date: Mon, 26 Jan 2026 14:23:12 -0500 Subject: Add regex and case sensitivity options to FilterEdit --- plugins/warp/ui/matches.cpp | 2 +- plugins/warp/ui/shared/constraint.cpp | 4 +++- plugins/warp/ui/shared/constraint.h | 2 +- plugins/warp/ui/shared/function.cpp | 4 +++- plugins/warp/ui/shared/function.h | 2 +- 5 files changed, 9 insertions(+), 5 deletions(-) (limited to 'plugins') diff --git a/plugins/warp/ui/matches.cpp b/plugins/warp/ui/matches.cpp index 4b8f0495..289c1102 100644 --- a/plugins/warp/ui/matches.cpp +++ b/plugins/warp/ui/matches.cpp @@ -78,7 +78,7 @@ WarpCurrentFunctionWidget::WarpCurrentFunctionWidget() "Search for Source", [this](WarpFunctionItem* item, std::optional) { // Apply the source as the filter. if (const auto source = item->GetSource(); source) - m_tableWidget->setFilter(source->ToString()); + m_tableWidget->setFilter(source->ToString(), NoFilterOption); }); connect(m_tableWidget->GetTableView(), &QTableView::clicked, this, [this](const QModelIndex& index) { diff --git a/plugins/warp/ui/shared/constraint.cpp b/plugins/warp/ui/shared/constraint.cpp index 39c9c7d3..fcebbfb0 100644 --- a/plugins/warp/ui/shared/constraint.cpp +++ b/plugins/warp/ui/shared/constraint.cpp @@ -124,8 +124,10 @@ void WarpConstraintTableWidget::SetMatchedConstraints(const std::vectorSetMatchedConstraints(analysisConstraints); } -void WarpConstraintTableWidget::setFilter(const std::string& filter) +void WarpConstraintTableWidget::setFilter(const std::string& filter, FilterOptions options) { m_proxyModel->setFilterFixedString(QString::fromStdString(filter)); + m_proxyModel->setFilterCaseSensitivity( + options.testFlag(CaseSensitiveOption) ? Qt::CaseSensitive : Qt::CaseInsensitive); m_filterView->showFilter(QString::fromStdString(filter)); } diff --git a/plugins/warp/ui/shared/constraint.h b/plugins/warp/ui/shared/constraint.h index 02702144..632c39ce 100644 --- a/plugins/warp/ui/shared/constraint.h +++ b/plugins/warp/ui/shared/constraint.h @@ -58,7 +58,7 @@ public: void SetMatchedConstraints(const std::vector& analysisConstraints); - void setFilter(const std::string&) override; + void setFilter(const std::string&, FilterOptions options) override; void scrollToFirstItem() override {} diff --git a/plugins/warp/ui/shared/function.cpp b/plugins/warp/ui/shared/function.cpp index 06d4cbcf..3b2451ab 100644 --- a/plugins/warp/ui/shared/function.cpp +++ b/plugins/warp/ui/shared/function.cpp @@ -299,9 +299,11 @@ void WarpFunctionTableWidget::RemoveFunction(uint64_t address) m_model->RemoveFunction(address); } -void WarpFunctionTableWidget::setFilter(const std::string& filter) +void WarpFunctionTableWidget::setFilter(const std::string& filter, FilterOptions options) { m_proxyModel->setFilterFixedString(QString::fromStdString(filter)); + m_proxyModel->setFilterCaseSensitivity( + options.testFlag(CaseSensitiveOption) ? Qt::CaseSensitive : Qt::CaseInsensitive); m_filterView->showFilter(QString::fromStdString(filter)); } diff --git a/plugins/warp/ui/shared/function.h b/plugins/warp/ui/shared/function.h index 23b2bd3b..c6e5ba63 100644 --- a/plugins/warp/ui/shared/function.h +++ b/plugins/warp/ui/shared/function.h @@ -123,7 +123,7 @@ public: void RemoveFunction(uint64_t address); - void setFilter(const std::string&) override; + void setFilter(const std::string&, FilterOptions options) override; void scrollToFirstItem() override {} -- cgit v1.3.1