+void ViewProperties::setSortFoldersFirst(bool foldersFirst)
+{
+ if (m_node->sortFoldersFirst() != foldersFirst) {
+ m_node->setSortFoldersFirst(foldersFirst);
+ updateTimeStamp();
+ }
+}
+
+bool ViewProperties::sortFoldersFirst() const
+{
+ return m_node->sortFoldersFirst();
+}
+
+void ViewProperties::setAdditionalInfo(const KFileItemDelegate::InformationList& list)
+{
+ AdditionalInfoAccessor& infoAccessor = AdditionalInfoAccessor::instance();
+
+ int infoMask = 0;
+ foreach (KFileItemDelegate::Information currentInfo, list) {
+ infoMask = infoMask | infoAccessor.bitValue(currentInfo);
+ }
+
+ const int encodedInfo = encodedAdditionalInfo(infoMask);
+ if (m_node->additionalInfo() != encodedInfo) {
+ m_node->setAdditionalInfo(encodedInfo);
+ updateTimeStamp();
+ }
+}
+
+KFileItemDelegate::InformationList ViewProperties::additionalInfo() const
+{
+ KFileItemDelegate::InformationList usedInfos;
+
+ const int decodedInfo = decodedAdditionalInfo();
+
+ AdditionalInfoAccessor& infoAccessor = AdditionalInfoAccessor::instance();
+ const KFileItemDelegate::InformationList infos = infoAccessor.keys();
+
+ foreach (const KFileItemDelegate::Information info, infos) {
+ if (decodedInfo & infoAccessor.bitValue(info)) {
+ usedInfos.append(info);
+ }
+ }
+
+ return usedInfos;
+}
+
+