From: Peter Penz Date: Fri, 6 Nov 2009 17:06:33 +0000 (+0000) Subject: allow to set a custom description for the KMetaDataConfigurationDialog X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/commitdiff_plain/49a1a72d5019ae092461c7d969c800416497ba51 allow to set a custom description for the KMetaDataConfigurationDialog svn path=/trunk/KDE/kdebase/apps/; revision=1045712 --- diff --git a/src/panels/information/informationpanelcontent.cpp b/src/panels/information/informationpanelcontent.cpp index 831a6e78b..40d5c9cbc 100644 --- a/src/panels/information/informationpanelcontent.cpp +++ b/src/panels/information/informationpanelcontent.cpp @@ -38,6 +38,7 @@ #include #include #include +#include #include #include #include @@ -292,8 +293,11 @@ void InformationPanelContent::configureSettings() m_previewSeparator->setVisible(isChecked); InformationPanelSettings::setShowPreview(isChecked); } else if (action == configureAction) { - KMetaDataConfigurationDialog dialog(m_metaDataWidget, this, Qt::Dialog); - dialog.exec(); + QPointer dialog = new KMetaDataConfigurationDialog(m_metaDataWidget, this, Qt::Dialog); + dialog->setDescription(i18nc("@label::textbox", + "Configure which data should be shown in the Information Panel.")); + dialog->exec(); + delete dialog; } if (!m_item.isNull() && m_item.nepomukUri().isValid()) { diff --git a/src/panels/information/kmetadataconfigurationdialog.cpp b/src/panels/information/kmetadataconfigurationdialog.cpp index bbe437139..7a7159297 100644 --- a/src/panels/information/kmetadataconfigurationdialog.cpp +++ b/src/panels/information/kmetadataconfigurationdialog.cpp @@ -44,6 +44,7 @@ public: QString tunedLabel(const QString& label) const; int m_visibleDataTypes; + QLabel* m_descriptionLabel; KMetaDataWidget* m_metaDataWidget; QListWidget* m_metaDataList; @@ -65,14 +66,15 @@ KMetaDataConfigurationDialog::Private::Private(KMetaDataConfigurationDialog* par QWidget* mainWidget = new QWidget(q); QVBoxLayout* topLayout = new QVBoxLayout(mainWidget); - QLabel* label = new QLabel(i18nc("@label:textbox", - "Configure which data should " - "be shown."), q); + m_descriptionLabel = new QLabel(i18nc("@label::textbox", + "Configure which data should" + "be shown"), q); + m_descriptionLabel->setWordWrap(true); m_metaDataList = new QListWidget(q); m_metaDataList->setSelectionMode(QAbstractItemView::NoSelection); - topLayout->addWidget(label); + topLayout->addWidget(m_descriptionLabel); topLayout->addWidget(m_metaDataList); q->setMainWidget(mainWidget); @@ -280,4 +282,14 @@ void KMetaDataConfigurationDialog::slotButtonClicked(int button) } } +void KMetaDataConfigurationDialog::setDescription(const QString& description) +{ + d->m_descriptionLabel->setText(description); +} + +QString KMetaDataConfigurationDialog::description() const +{ + return d->m_descriptionLabel->text(); +} + #include "kmetadataconfigurationdialog.moc" diff --git a/src/panels/information/kmetadataconfigurationdialog.h b/src/panels/information/kmetadataconfigurationdialog.h index 1f0ae2201..02ac11d59 100644 --- a/src/panels/information/kmetadataconfigurationdialog.h +++ b/src/panels/information/kmetadataconfigurationdialog.h @@ -49,6 +49,14 @@ public: QWidget* parent = 0, Qt::WFlags flags = 0); + /** + * Sets the description that is shown above the list + * of meta data. Per default the translated text for + * "Configure which data should be shown." is set. + */ + void setDescription(const QString& description); + QString description() const; + virtual ~KMetaDataConfigurationDialog(); protected slots: diff --git a/src/settings/behaviorsettingspage.cpp b/src/settings/behaviorsettingspage.cpp index fd76f155f..2e558b7cb 100644 --- a/src/settings/behaviorsettingspage.cpp +++ b/src/settings/behaviorsettingspage.cpp @@ -195,6 +195,8 @@ void BehaviorSettingsPage::updateConfigureButton() void BehaviorSettingsPage::configureToolTips() { KMetaDataConfigurationDialog* dialog = new KMetaDataConfigurationDialog(); + dialog->setDescription(i18nc("@label::textbox", + "Configure which data should be shown in the tooltip.")); dialog->setAttribute(Qt::WA_DeleteOnClose); dialog->show(); dialog->raise();