diff options
| author | Peter Penz <[email protected]> | 2012-03-11 19:02:45 +0100 |
|---|---|---|
| committer | Peter Penz <[email protected]> | 2012-03-11 19:05:56 +0100 |
| commit | 2ba5c2cfc2cea534cccd860f94a7198530b83594 (patch) | |
| tree | 787ee40d007b243a01ba581e778fc67aa179e361 /src/settings/additionalinfodialog.cpp | |
| parent | d28081338577bfe0104f42c20e167bb0ce70e094 (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/settings/additionalinfodialog.cpp')
| -rw-r--r-- | src/settings/additionalinfodialog.cpp | 28 |
1 files changed, 14 insertions, 14 deletions
diff --git a/src/settings/additionalinfodialog.cpp b/src/settings/additionalinfodialog.cpp index 9b47e928f..6bcee4a1b 100644 --- a/src/settings/additionalinfodialog.cpp +++ b/src/settings/additionalinfodialog.cpp @@ -25,12 +25,12 @@ #include <QLabel> #include <QVBoxLayout> -#include "views/additionalinfoaccessor.h" +#include "views/rolesaccessor.h" AdditionalInfoDialog::AdditionalInfoDialog(QWidget* parent, - const QList<DolphinView::AdditionalInfo>& infoList) : + const QList<QByteArray>& visibleRoles) : KDialog(parent), - m_infoList(infoList), + m_visibleRoles(visibleRoles), m_checkBoxes() { setCaption(i18nc("@title:window", "Additional Information")); @@ -48,11 +48,11 @@ AdditionalInfoDialog::AdditionalInfoDialog(QWidget* parent, layout->addWidget(header); // Add checkboxes - const AdditionalInfoAccessor& infoAccessor = AdditionalInfoAccessor::instance(); - const QList<DolphinView::AdditionalInfo> keys = infoAccessor.keys(); - foreach (DolphinView::AdditionalInfo info, keys) { - QCheckBox* checkBox = new QCheckBox(infoAccessor.translation(info), mainWidget); - checkBox->setChecked(infoList.contains(info)); + const RolesAccessor& rolesAccessor = RolesAccessor::instance(); + const QList<QByteArray> roles = rolesAccessor.roles(); + foreach (const QByteArray& role, roles) { + QCheckBox* checkBox = new QCheckBox(rolesAccessor.translation(role), mainWidget); + checkBox->setChecked(visibleRoles.contains(role)); layout->addWidget(checkBox); m_checkBoxes.append(checkBox); } @@ -75,20 +75,20 @@ AdditionalInfoDialog::~AdditionalInfoDialog() saveDialogSize(dialogConfig, KConfigBase::Persistent); } -QList<DolphinView::AdditionalInfo> AdditionalInfoDialog::informationList() const +QList<QByteArray> AdditionalInfoDialog::visibleRoles() const { - return m_infoList; + return m_visibleRoles; } void AdditionalInfoDialog::slotOk() { - m_infoList.clear(); + m_visibleRoles.clear(); - const QList<DolphinView::AdditionalInfo> keys = AdditionalInfoAccessor::instance().keys(); + const QList<QByteArray> roles = RolesAccessor::instance().roles(); int index = 0; - foreach (DolphinView::AdditionalInfo info, keys) { + foreach (const QByteArray& role, roles) { if (m_checkBoxes[index]->isChecked()) { - m_infoList.append(info); + m_visibleRoles.append(role); } ++index; } |
