┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src/views/dolphinview.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/views/dolphinview.cpp')
-rw-r--r--src/views/dolphinview.cpp33
1 files changed, 33 insertions, 0 deletions
diff --git a/src/views/dolphinview.cpp b/src/views/dolphinview.cpp
index 6882df5d3..e14227198 100644
--- a/src/views/dolphinview.cpp
+++ b/src/views/dolphinview.cpp
@@ -549,6 +549,33 @@ QByteArray DolphinView::sortRole() const
return model->sortRole();
}
+void DolphinView::setGroupRole(const QByteArray &role)
+{
+ KItemModelBase *model = m_container->controller()->model();
+ if (role == model->rawGroupRole()) {
+ return;
+ }
+
+ ViewProperties props(viewPropertiesUrl());
+ props.setGroupRole(role);
+
+ model->setGroupRole(role);
+
+ Q_EMIT groupRoleChanged(role);
+}
+
+QByteArray DolphinView::groupRole() const
+{
+ const KItemModelBase *model = m_container->controller()->model();
+ return model->groupRole();
+}
+
+QByteArray DolphinView::rawGroupRole() const
+{
+ const KItemModelBase *model = m_container->controller()->model();
+ return model->rawGroupRole();
+}
+
void DolphinView::setSortOrder(Qt::SortOrder order)
{
if (sortOrder() != order) {
@@ -2405,6 +2432,12 @@ void DolphinView::applyViewProperties(const ViewProperties &props)
Q_EMIT sortRoleChanged(sortRole);
}
+ const QByteArray groupRole = props.groupRole();
+ if (groupRole != m_model->rawGroupRole()) {
+ m_model->setGroupRole(groupRole);
+ Q_EMIT groupRoleChanged(groupRole);
+ }
+
const Qt::SortOrder sortOrder = props.sortOrder();
if (sortOrder != m_model->sortOrder()) {
m_model->setSortOrder(sortOrder);