Simplify std::stable_sort with std::ranges::stable_partition

This commit is contained in:
mitaclaw 2024-09-28 22:17:12 -07:00
parent e6f93efac4
commit 519da8297c
2 changed files with 4 additions and 16 deletions

View File

@ -140,20 +140,14 @@ void ARCodeWidget::SortAlphabetically()
void ARCodeWidget::SortEnabledCodesFirst() void ARCodeWidget::SortEnabledCodesFirst()
{ {
std::stable_sort(m_ar_codes.begin(), m_ar_codes.end(), [](const auto& a, const auto& b) { std::ranges::stable_partition(m_ar_codes, std::identity{}, &ActionReplay::ARCode::enabled);
return a.enabled && a.enabled != b.enabled;
});
UpdateList(); UpdateList();
SaveCodes(); SaveCodes();
} }
void ARCodeWidget::SortDisabledCodesFirst() void ARCodeWidget::SortDisabledCodesFirst()
{ {
std::stable_sort(m_ar_codes.begin(), m_ar_codes.end(), [](const auto& a, const auto& b) { std::ranges::stable_partition(m_ar_codes, std::logical_not{}, &ActionReplay::ARCode::enabled);
return !a.enabled && a.enabled != b.enabled;
});
UpdateList(); UpdateList();
SaveCodes(); SaveCodes();
} }

View File

@ -314,20 +314,14 @@ void GeckoCodeWidget::SortAlphabetically()
void GeckoCodeWidget::SortEnabledCodesFirst() void GeckoCodeWidget::SortEnabledCodesFirst()
{ {
std::stable_sort(m_gecko_codes.begin(), m_gecko_codes.end(), [](const auto& a, const auto& b) { std::ranges::stable_partition(m_gecko_codes, std::identity{}, &Gecko::GeckoCode::enabled);
return a.enabled && a.enabled != b.enabled;
});
UpdateList(); UpdateList();
SaveCodes(); SaveCodes();
} }
void GeckoCodeWidget::SortDisabledCodesFirst() void GeckoCodeWidget::SortDisabledCodesFirst()
{ {
std::stable_sort(m_gecko_codes.begin(), m_gecko_codes.end(), [](const auto& a, const auto& b) { std::ranges::stable_partition(m_gecko_codes, std::logical_not{}, &Gecko::GeckoCode::enabled);
return !a.enabled && a.enabled != b.enabled;
});
UpdateList(); UpdateList();
SaveCodes(); SaveCodes();
} }