commit 5b0802fd740713b454664f2690907b800d0077a7
parent 4ce4a60bcaf60cec9386504d16b65a1ab246e36f
Author: cfillion <cfillion@users.noreply.github.com>
Date: Thu, 5 Jan 2017 04:43:29 -0500
listview: unset sort when resetting columns if no default sort
Diffstat:
1 file changed, 6 insertions(+), 5 deletions(-)
diff --git a/src/listview.cpp b/src/listview.cpp
@@ -134,12 +134,13 @@ int ListView::columnWidth(const int index) const
void ListView::sort()
{
- if(!m_sort)
- return;
-
static const auto compare = [](LPARAM aRow, LPARAM bRow, LPARAM param)
{
ListView *view = reinterpret_cast<ListView *>(param);
+
+ if(!view->m_sort)
+ return (int)(aRow - bRow);
+
const int column = view->m_sort->column;
int ret;
@@ -487,7 +488,7 @@ void ListView::resetColumns()
ListView_SetColumnOrderArray(handle(), columnCount(), &order[0]);
- if(m_sort && m_defaultSort) {
+ if(m_sort) {
setSortArrow(false);
m_sort = m_defaultSort;
setSortArrow(true);
@@ -539,7 +540,7 @@ void ListView::restoreState(Serializer::Data &data)
void ListView::saveState(Serializer::Data &data) const
{
- const Sort sort = m_sort.value_or(Sort());
+ const Sort &sort = m_sort.value_or(Sort{});
vector<int> order(columnCount());
ListView_GetColumnOrderArray(handle(), columnCount(), &order[0]);