reapack

Package manager for REAPER
Log | Files | Refs | Submodules | README | LICENSE

commit 148063e25de7f5721901d35ac5c7561aacdde888
parent a2f4b389e88edd67b4640e9e97b43d9ab2e0f7e7
Author: cfillion <cfillion@users.noreply.github.com>
Date:   Sun, 21 Aug 2016 00:11:25 -0400

browser: don't sort the version column lexicographically

Diffstat:
Msrc/browser.cpp | 21+++++++++++++++++++++
1 file changed, 21 insertions(+), 0 deletions(-)

diff --git a/src/browser.cpp b/src/browser.cpp @@ -95,6 +95,27 @@ void Browser::onInit() this, placeholders::_1, placeholders::_2)); m_list->sortByColumn(1); + + m_list->setSortCallback(3 /* version */, [&] (const int ai, const int bi) { + const Entry &a = m_entries[m_visibleEntries[ai]]; + const Entry &b = m_entries[m_visibleEntries[bi]]; + + const Version *l = nullptr; + const Version *r = nullptr; + + if(a.test(InstalledFlag)) + l = &a.regEntry.version; + else + l = a.latest; + + if(b.test(InstalledFlag)) + r = &b.regEntry.version; + else + r = b.latest; + + return l->compare(*r); + }); + m_list->setSortCallback(7 /* last update */, [&] (const int ai, const int bi) { const Entry &a = m_entries[m_visibleEntries[ai]]; const Entry &b = m_entries[m_visibleEntries[bi]];