summaryrefslogtreecommitdiff
path: root/examples/triage/exports.cpp
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 /examples/triage/exports.cpp
parent9b7604d13e8bd98c6998facb9326926ed96281b5 (diff)
Add regex and case sensitivity options to FilterEdit
Diffstat (limited to 'examples/triage/exports.cpp')
-rw-r--r--examples/triage/exports.cpp17
1 files changed, 11 insertions, 6 deletions
diff --git a/examples/triage/exports.cpp b/examples/triage/exports.cpp
index 776044c5..976be45e 100644
--- a/examples/triage/exports.cpp
+++ b/examples/triage/exports.cpp
@@ -67,7 +67,7 @@ void GenericExportsModel::updateModel()
}
endResetModel();
- setFilter(m_filter);
+ setFilter(m_filter, m_filterOptions);
}
@@ -225,22 +225,26 @@ void GenericExportsModel::sort(int col, Qt::SortOrder order)
}
-void GenericExportsModel::setFilter(const std::string& filterText)
+void GenericExportsModel::setFilter(const std::string& filterText, FilterOptions options)
{
m_filter = filterText;
+ m_filterOptions = options;
beginResetModel();
m_entries.clear();
+
+ bool caseSensitive = options.testFlag(FilterOption::CaseSensitiveOption);
for (auto& entry : m_allEntries)
{
- if (FilteredView::match(entry->GetFullName(), filterText))
+ if (FilteredView::match(entry->GetFullName(), filterText, caseSensitive))
m_entries.push_back(entry);
- else if (FilteredView::match(std::to_string(entry->GetOrdinal()), filterText))
+ else if (FilteredView::match(std::to_string(entry->GetOrdinal()), filterText, caseSensitive))
m_entries.push_back(entry);
}
performSort(m_sortCol, m_sortOrder);
endResetModel();
}
+
void GenericExportsModel::setNeedsUpdate(bool needed)
{
if (m_needsUpdate.exchange(needed) == needed)
@@ -249,6 +253,7 @@ void GenericExportsModel::setNeedsUpdate(bool needed)
updateTimer(needed);
}
+
void GenericExportsModel::updateTimer(bool needsUpdate)
{
if (needsUpdate && !m_updateTimer->isActive())
@@ -427,9 +432,9 @@ void ExportsTreeView::exportDoubleClicked(const QModelIndex& cur)
}
-void ExportsTreeView::setFilter(const std::string& filterText)
+void ExportsTreeView::setFilter(const std::string& filterText, FilterOptions options)
{
- m_model->setFilter(filterText);
+ m_model->setFilter(filterText, options);
}