X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/ad2facc493dbed42a22385d5a26b1f960d06c1f6..d6488887ecf69d7f192b94de8dce34fae0b7eb76:/src/viewproperties.cpp diff --git a/src/viewproperties.cpp b/src/viewproperties.cpp index 319a06bc2..30346a862 100644 --- a/src/viewproperties.cpp +++ b/src/viewproperties.cpp @@ -197,17 +197,65 @@ Qt::SortOrder ViewProperties::sortOrder() const return static_cast(m_node->sortOrder()); } -void ViewProperties::setAdditionalInfo(KFileItemDelegate::AdditionalInformation info) +void ViewProperties::setAdditionalInfo(KFileItemDelegate::InformationList list) { + int info = NoInfo; + foreach (KFileItemDelegate::Information currentInfo, list) { + switch (currentInfo) { + case KFileItemDelegate::Size: + info = info | SizeInfo; + break; + case KFileItemDelegate::ModificationTime: + info = info | DateInfo; + break; + case KFileItemDelegate::Permissions: + info = info | PermissionsInfo; + break; + case KFileItemDelegate::Owner: + info = info | OwnerInfo; + break; + case KFileItemDelegate::OwnerAndGroup: + info = info | GroupInfo; + break; + case KFileItemDelegate::FriendlyMimeType: + info = info | TypeInfo; + break; + default: + break; + } + } + if (m_node->additionalInfo() != info) { m_node->setAdditionalInfo(info); updateTimeStamp(); } } -KFileItemDelegate::AdditionalInformation ViewProperties::additionalInfo() const +KFileItemDelegate::InformationList ViewProperties::additionalInfo() const { - return static_cast(m_node->additionalInfo()); + const int info = m_node->additionalInfo(); + + KFileItemDelegate::InformationList list; + if (info & SizeInfo) { + list.append(KFileItemDelegate::Size); + } + if (info & DateInfo) { + list.append(KFileItemDelegate::ModificationTime); + } + if (info & PermissionsInfo) { + list.append(KFileItemDelegate::Permissions); + } + if (info & OwnerInfo) { + list.append(KFileItemDelegate::Owner); + } + if (info & GroupInfo) { + list.append(KFileItemDelegate::OwnerAndGroup); + } + if (info & TypeInfo) { + list.append(KFileItemDelegate::FriendlyMimeType); + } + + return list; }