From e1dde0669fa9c8fb36d6e420a93354c5e78f42b6 Mon Sep 17 00:00:00 2001 From: Sebastian Trueg Date: Sat, 17 Oct 2009 13:16:45 +0000 Subject: [PATCH] Use the magic QFlags I love so much. svn path=/trunk/KDE/kdebase/apps/; revision=1036578 --- src/panels/information/metadataconfigurationdialog.cpp | 7 +++---- src/panels/information/metadatawidget.cpp | 10 +++++----- src/panels/information/metadatawidget.h | 10 +++++++--- 3 files changed, 15 insertions(+), 12 deletions(-) diff --git a/src/panels/information/metadataconfigurationdialog.cpp b/src/panels/information/metadataconfigurationdialog.cpp index 2fb7b7699d..a53eaa339e 100644 --- a/src/panels/information/metadataconfigurationdialog.cpp +++ b/src/panels/information/metadataconfigurationdialog.cpp @@ -254,7 +254,7 @@ void MetaDataConfigurationDialog::slotButtonClicked(int button) if (button == KDialog::Ok) { KConfig config("kmetainformationrc", KConfig::NoGlobals); KConfigGroup showGroup = config.group("Show"); - + const int count = d->m_metaDataList->count(); for (int i = 0; i < count; ++i) { QListWidgetItem* item = d->m_metaDataList->item(i); @@ -262,13 +262,12 @@ void MetaDataConfigurationDialog::slotButtonClicked(int button) const QString key = item->data(Qt::UserRole).toString(); showGroup.writeEntry(key, show); } - + showGroup.sync(); if (d->m_metaDataWidget != 0) { // trigger an update - const int data = d->m_metaDataWidget->hiddenData(); - d->m_metaDataWidget->setHiddenData(data); + d->m_metaDataWidget->setHiddenData(d->m_metaDataWidget->hiddenData()); } accept(); } else { diff --git a/src/panels/information/metadatawidget.cpp b/src/panels/information/metadatawidget.cpp index 9a4f5ea26d..abd36e4f69 100644 --- a/src/panels/information/metadatawidget.cpp +++ b/src/panels/information/metadatawidget.cpp @@ -96,7 +96,7 @@ public: */ void startChangeDataJob(KJob* job); - int m_hiddenData; + MetaDataTypes m_hiddenData; QList m_fileItems; QList m_rows; @@ -169,7 +169,7 @@ private: }; MetaDataWidget::Private::Private(MetaDataWidget* parent) : - m_hiddenData(0), + m_hiddenData(None), m_fileItems(), m_rows(), m_gridLayout(0), @@ -314,7 +314,7 @@ void MetaDataWidget::Private::initMetaInfoSettings() } void MetaDataWidget::Private::updateRowsVisibility() -{ +{ KConfig config("kmetainformationrc", KConfig::NoGlobals); KConfigGroup settings = config.group("Show"); setRowVisible(m_typeInfo, @@ -653,13 +653,13 @@ KFileItemList MetaDataWidget::items() const return d->m_fileItems; } -void MetaDataWidget::setHiddenData(int data) +void MetaDataWidget::setHiddenData(MetaDataTypes data) { d->m_hiddenData = data; d->updateRowsVisibility(); } -int MetaDataWidget::hiddenData() const +MetaDataWidget::MetaDataTypes MetaDataWidget::hiddenData() const { return d->m_hiddenData; } diff --git a/src/panels/information/metadatawidget.h b/src/panels/information/metadatawidget.h index cbd77fc129..ac6e58edda 100644 --- a/src/panels/information/metadatawidget.h +++ b/src/panels/information/metadatawidget.h @@ -61,8 +61,9 @@ public: * @see MetaDataWidget::setHiddenData() * @see MetaDataWidget::hiddenData() */ - enum Data + enum MetaDataType { + None = 0, TypeData = 1, SizeData= 2, ModifiedData = 4, @@ -72,6 +73,7 @@ public: TagsData = 64, CommentData = 128 }; + Q_DECLARE_FLAGS( MetaDataTypes, MetaDataType ) explicit MetaDataWidget(QWidget* parent = 0); virtual ~MetaDataWidget(); @@ -115,13 +117,13 @@ public: * Example: metaDataWidget->setHiddenData(MetaDataWidget::TypeData | ModifiedData); * Per default no data is hidden. */ - void setHiddenData(int data); + void setHiddenData(MetaDataTypes data); /** * Returns which kind of data is hidden (@see MetaDataWidget::Data). * Example: if (metaDataWidget->hiddenData() & MetaDataWidget::TypeData) ... */ - int hiddenData() const; + MetaDataTypes hiddenData() const; /** * Returns the rating for the currently set item(s). It is required @@ -195,4 +197,6 @@ private: Q_PRIVATE_SLOT(d, void slotMetaDataUpdateDone()) }; +Q_DECLARE_OPERATORS_FOR_FLAGS(MetaDataWidget::MetaDataTypes) + #endif