diff options
| author | Serg Podtynnyi <[email protected]> | 2023-01-27 17:54:35 +0700 |
|---|---|---|
| committer | Méven Car <[email protected]> | 2023-02-14 16:40:33 +0000 |
| commit | b7fa85a33d6b5c1b2a5b60b64a78f7f208ea304c (patch) | |
| tree | 588bab13ef7742430801752f720955fd1f34b5be /src/kitemviews/kfileitemlistwidget.cpp | |
| parent | bb686052c7b353aa58151172cf215fd2349f8b94 (diff) | |
Add new settings for permissions column format
Ability to configure column for the file/dir permissions in
Numeric(Octal)/Textual/Combined style and update field display style to be right-alighed.
Add toolips to column menu items
BUG: 227745
Diffstat (limited to 'src/kitemviews/kfileitemlistwidget.cpp')
| -rw-r--r-- | src/kitemviews/kfileitemlistwidget.cpp | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/src/kitemviews/kfileitemlistwidget.cpp b/src/kitemviews/kfileitemlistwidget.cpp index 8002af597..d9644bef5 100644 --- a/src/kitemviews/kfileitemlistwidget.cpp +++ b/src/kitemviews/kfileitemlistwidget.cpp @@ -98,6 +98,20 @@ QString KFileItemListWidgetInformant::roleText(const QByteArray &role, const QHa if (dimensions.isValid()) { text = i18nc("width × height", "%1 × %2", dimensions.width(), dimensions.height()); } + } else if (role == "permissions") { + const auto permissions = roleValue.value<QVariantList>(); + + switch (DetailsModeSettings::usePermissionsFormat()) { + case DetailsModeSettings::EnumUsePermissionsFormat::SymbolicFormat: + text = permissions.at(0).toString(); + break; + case DetailsModeSettings::EnumUsePermissionsFormat::NumericFormat: + text = QString::number(permissions.at(1).toInt(), 8); + break; + case DetailsModeSettings::EnumUsePermissionsFormat::CombinedFormat: + text = QString("%1 (%2)").arg(permissions.at(0).toString()).arg(permissions.at(1).toInt(), 0, 8); + break; + } } else { text = KStandardItemListWidgetInformant::roleText(role, values); } @@ -129,7 +143,7 @@ KItemListWidgetInformant *KFileItemListWidget::createInformant() bool KFileItemListWidget::isRoleRightAligned(const QByteArray &role) const { - return role == "size"; + return role == "size" || role == "permissions"; } bool KFileItemListWidget::isHidden() const |
