summaryrefslogtreecommitdiff
path: root/src/modlistview.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/modlistview.cpp')
-rw-r--r--src/modlistview.cpp21
1 files changed, 20 insertions, 1 deletions
diff --git a/src/modlistview.cpp b/src/modlistview.cpp
index f6a564ac..9f94354e 100644
--- a/src/modlistview.cpp
+++ b/src/modlistview.cpp
@@ -103,7 +103,7 @@ void ModListView::setProfile(Profile* profile)
bool ModListView::hasCollapsibleSeparators() const
{
- return m_sortProxy != nullptr && m_sortProxy->sourceModel() == m_byPriorityProxy;
+ return groupByMode() == GroupByMode::SEPARATOR;
}
int ModListView::sortColumn() const
@@ -111,6 +111,25 @@ int ModListView::sortColumn() const
return m_sortProxy ? m_sortProxy->sortColumn() : -1;
}
+ModListView::GroupByMode ModListView::groupByMode() const
+{
+ if (m_sortProxy == nullptr) {
+ return GroupByMode::NONE;
+ }
+ else if (m_sortProxy->sourceModel() == m_byPriorityProxy) {
+ return GroupByMode::SEPARATOR;
+ }
+ else if (m_sortProxy->sourceModel() == m_byCategoryProxy) {
+ return GroupByMode::CATEGORY;
+ }
+ else if (m_sortProxy->sourceModel() == m_byNexusIdProxy) {
+ return GroupByMode::NEXUS_ID;
+ }
+ else {
+ return GroupByMode::NONE;
+ }
+}
+
ModListViewActions& ModListView::actions() const
{
return *m_actions;