┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src/views/additionalinfoaccessor.cpp
diff options
context:
space:
mode:
authorPeter Penz <[email protected]>2012-03-11 19:02:45 +0100
committerPeter Penz <[email protected]>2012-03-11 19:05:56 +0100
commit2ba5c2cfc2cea534cccd860f94a7198530b83594 (patch)
tree787ee40d007b243a01ba581e778fc67aa179e361 /src/views/additionalinfoaccessor.cpp
parentd28081338577bfe0104f42c20e167bb0ce70e094 (diff)
First step to introduce dynamic roles
Currently Dolphin is only capable of showing a fixed number of roles (e.g. name, size, date, owner, ...). Dolphin 2.1 should support also other roles like rating, tags, comments or other meta-information of images or audio-files. To support this the sorting-type and additional-type from DolphinView has been replaced by a role-type represented as QByteArray.
Diffstat (limited to 'src/views/additionalinfoaccessor.cpp')
-rw-r--r--src/views/additionalinfoaccessor.cpp118
1 files changed, 0 insertions, 118 deletions
diff --git a/src/views/additionalinfoaccessor.cpp b/src/views/additionalinfoaccessor.cpp
deleted file mode 100644
index b102282a6..000000000
--- a/src/views/additionalinfoaccessor.cpp
+++ /dev/null
@@ -1,118 +0,0 @@
-/***************************************************************************
- * Copyright (C) 2010 by Peter Penz <[email protected]> *
- * *
- * This program is free software; you can redistribute it and/or modify *
- * it under the terms of the GNU General Public License as published by *
- * the Free Software Foundation; either version 2 of the License, or *
- * (at your option) any later version. *
- * *
- * This program is distributed in the hope that it will be useful, *
- * but WITHOUT ANY WARRANTY; without even the implied warranty of *
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
- * GNU General Public License for more details. *
- * *
- * You should have received a copy of the GNU General Public License *
- * along with this program; if not, write to the *
- * Free Software Foundation, Inc., *
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA *
- ***************************************************************************/
-
-#include "additionalinfoaccessor.h"
-
-#include <KGlobal>
-#include <KLocale>
-
-class AdditionalInfoAccessorSingleton
-{
-public:
- AdditionalInfoAccessor instance;
-};
-K_GLOBAL_STATIC(AdditionalInfoAccessorSingleton, s_additionalInfoManager)
-
-AdditionalInfoAccessor& AdditionalInfoAccessor::instance()
-{
- return s_additionalInfoManager->instance;
-}
-
-QList<DolphinView::AdditionalInfo> AdditionalInfoAccessor::keys() const
-{
- return m_map.keys();
-}
-
-QByteArray AdditionalInfoAccessor::role(DolphinView::AdditionalInfo info) const
-{
- return m_map[info]->role;
-}
-
-DolphinView::AdditionalInfo AdditionalInfoAccessor::additionalInfo(const QByteArray& role) const
-{
- return m_infoForRole.value(role);
-}
-
-QString AdditionalInfoAccessor::actionCollectionName(DolphinView::AdditionalInfo info,
- ActionCollectionType type) const
-{
- QString name;
- switch (type) {
- case SortByType:
- name = QLatin1String("sort_by_") + QLatin1String(m_map[info]->role);
- break;
-
- case AdditionalInfoType:
- name = QLatin1String("show_") + QLatin1String(m_map[info]->role);
- break;
- }
-
- return name;
-}
-
-QString AdditionalInfoAccessor::translation(DolphinView::AdditionalInfo info) const
-{
- return i18nc(m_map[info]->roleTranslationContext, m_map[info]->roleTranslation);
-}
-
-QString AdditionalInfoAccessor::value(DolphinView::AdditionalInfo info) const
-{
- return m_map[info]->value;
-}
-
-DolphinView::Sorting AdditionalInfoAccessor::sorting(DolphinView::AdditionalInfo info) const
-{
- return m_map[info]->sorting;
-}
-
-AdditionalInfoAccessor::AdditionalInfoAccessor() :
- m_map(),
- m_infoForRole()
-{
- static const AdditionalInfoAccessor::AdditionalInfo additionalInfo[] = {
- // role roleTranslationContext roleTranslation value sorting
- { "size", I18N_NOOP2_NOSTRIP("@label", "Size"), "Size", DolphinView::SortBySize},
- { "date", I18N_NOOP2_NOSTRIP("@label", "Date"), "Date", DolphinView::SortByDate},
- { "permissions", I18N_NOOP2_NOSTRIP("@label", "Permissions"), "Permissions", DolphinView::SortByPermissions},
- { "owner", I18N_NOOP2_NOSTRIP("@label", "Owner"), "Owner", DolphinView::SortByOwner},
- { "group", I18N_NOOP2_NOSTRIP("@label", "Group"), "Group", DolphinView::SortByGroup},
- { "type", I18N_NOOP2_NOSTRIP("@label", "Type"), "Type", DolphinView::SortByType},
- { "destination", I18N_NOOP2_NOSTRIP("@label", "Link Destination"), "LinkDestination", DolphinView::SortByDestination},
- { "path", I18N_NOOP2_NOSTRIP("@label", "Path"), "Path", DolphinView::SortByPath}
- };
-
- m_map.insert(DolphinView::SizeInfo, &additionalInfo[0]);
- m_map.insert(DolphinView::DateInfo, &additionalInfo[1]);
- m_map.insert(DolphinView::PermissionsInfo, &additionalInfo[2]);
- m_map.insert(DolphinView::OwnerInfo, &additionalInfo[3]);
- m_map.insert(DolphinView::GroupInfo, &additionalInfo[4]);
- m_map.insert(DolphinView::TypeInfo, &additionalInfo[5]);
- m_map.insert(DolphinView::DestinationInfo, &additionalInfo[6]);
- m_map.insert(DolphinView::PathInfo, &additionalInfo[7]);
-
- QMapIterator<DolphinView::AdditionalInfo, const AdditionalInfo*> it(m_map);
- while (it.hasNext()) {
- it.next();
- m_infoForRole.insert(it.value()->role, it.key());
- }
-}
-
-AdditionalInfoAccessor::~AdditionalInfoAccessor()
-{
-}