X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/2f045c60109e0a5811f68bcce617236e3478e402..48b58f830a585b773435c9af5ee2fe8f0c7c641d:/src/settings/general/previewssettingspage.cpp?ds=sidebyside diff --git a/src/settings/general/previewssettingspage.cpp b/src/settings/general/previewssettingspage.cpp index dbae987d1..1d6e922c8 100644 --- a/src/settings/general/previewssettingspage.cpp +++ b/src/settings/general/previewssettingspage.cpp @@ -21,42 +21,31 @@ #include "dolphin_generalsettings.h" #include "configurepreviewplugindialog.h" +#include "settings/serviceitemdelegate.h" +#include "settings/servicemodel.h" -#include -#include -#include -#include -#include +#include +#include #include -#include -#include -#include - -#include -#include #include #include #include #include -#include -#include -#include #include -#include +#include // default settings namespace { - const bool UseThumbnails = true; const int MaxRemotePreviewSize = 0; // 0 MB } PreviewsSettingsPage::PreviewsSettingsPage(QWidget* parent) : SettingsPageBase(parent), m_initialized(false), - m_listView(0), + m_listView(nullptr), m_enabledPreviewPlugins(), - m_remoteFileSizeBox(0) + m_remoteFileSizeBox(nullptr) { QVBoxLayout* topLayout = new QVBoxLayout(this); @@ -65,8 +54,8 @@ PreviewsSettingsPage::PreviewsSettingsPage(QWidget* parent) : m_listView = new QListView(this); ServiceItemDelegate* delegate = new ServiceItemDelegate(m_listView, m_listView); - connect(delegate, SIGNAL(requestServiceConfiguration(QModelIndex)), - this, SLOT(configureService(QModelIndex))); + connect(delegate, &ServiceItemDelegate::requestServiceConfiguration, + this, &PreviewsSettingsPage::configureService); ServiceModel* serviceModel = new ServiceModel(this); QSortFilterProxyModel* proxyModel = new QSortFilterProxyModel(this); @@ -79,24 +68,23 @@ PreviewsSettingsPage::PreviewsSettingsPage(QWidget* parent) : QLabel* remoteFileSizeLabel = new QLabel(i18nc("@label", "Skip previews for remote files above:"), this); - m_remoteFileSizeBox = new KIntSpinBox(this); + m_remoteFileSizeBox = new QSpinBox(this); m_remoteFileSizeBox->setSingleStep(1); - m_remoteFileSizeBox->setSuffix(QLatin1String(" MB")); + m_remoteFileSizeBox->setSuffix(QStringLiteral(" MB")); m_remoteFileSizeBox->setRange(0, 9999999); /* MB */ - QHBoxLayout* fileSizeBoxLayout = new QHBoxLayout(this); + QHBoxLayout* fileSizeBoxLayout = new QHBoxLayout(); fileSizeBoxLayout->addWidget(remoteFileSizeLabel, 0, Qt::AlignRight); fileSizeBoxLayout->addWidget(m_remoteFileSizeBox); - topLayout->addSpacing(KDialog::spacingHint()); topLayout->addWidget(showPreviewsLabel); topLayout->addWidget(m_listView); topLayout->addLayout(fileSizeBoxLayout); loadSettings(); - connect(m_listView, SIGNAL(clicked(QModelIndex)), this, SIGNAL(changed())); - connect(m_remoteFileSizeBox, SIGNAL(valueChanged(int)), this, SIGNAL(changed())); + connect(m_listView, &QListView::clicked, this, &PreviewsSettingsPage::changed); + connect(m_remoteFileSizeBox, static_cast(&QSpinBox::valueChanged), this, &PreviewsSettingsPage::changed); } PreviewsSettingsPage::~PreviewsSettingsPage() @@ -119,7 +107,7 @@ void PreviewsSettingsPage::applySettings() } } - KConfigGroup globalConfig(KGlobal::config(), QLatin1String("PreviewSettings")); + KConfigGroup globalConfig(KSharedConfig::openConfig(), QStringLiteral("PreviewSettings")); globalConfig.writeEntry("Plugins", m_enabledPreviewPlugins); const qulonglong maximumRemoteSize = static_cast(m_remoteFileSizeBox->value()) * 1024 * 1024; @@ -158,9 +146,9 @@ void PreviewsSettingsPage::loadPreviewPlugins() { QAbstractItemModel* model = m_listView->model(); - const KService::List plugins = KServiceTypeTrader::self()->query(QLatin1String("ThumbCreator")); + const KService::List plugins = KServiceTypeTrader::self()->query(QStringLiteral("ThumbCreator")); foreach (const KService::Ptr& service, plugins) { - const bool configurable = service->property("Configurable", QVariant::Bool).toBool(); + const bool configurable = service->property(QStringLiteral("Configurable"), QVariant::Bool).toBool(); const bool show = m_enabledPreviewPlugins.contains(service->desktopEntryName()); model->insertRow(0); @@ -176,24 +164,8 @@ void PreviewsSettingsPage::loadPreviewPlugins() void PreviewsSettingsPage::loadSettings() { - KConfigGroup globalConfig(KGlobal::config(), "PreviewSettings"); - m_enabledPreviewPlugins = globalConfig.readEntry("Plugins", QStringList() - << QLatin1String("directorythumbnail") - << QLatin1String("imagethumbnail") - << QLatin1String("jpegthumbnail")); - - // If the user is upgrading from KDE <= 4.6, we must check if he had the 'jpegrotatedthumbnail' plugin enabled. - // This plugin does not exist any more in KDE >= 4.7, so we have to replace it with the 'jpegthumbnail' plugin. - // - // Note that the upgrade to the correct plugin is done already in KFilePreviewGenerator. However, if Konqueror is - // opened in web browsing mode and the Settings dialog is opened, we might end up here before KFilePreviewGenerator's - // constructor is ever called -> the plugin replacement should be done here as well. - if (m_enabledPreviewPlugins.contains(QLatin1String("jpegrotatedthumbnail"))) { - m_enabledPreviewPlugins.removeAll(QLatin1String("jpegrotatedthumbnail")); - m_enabledPreviewPlugins.append(QLatin1String("jpegthumbnail")); - globalConfig.writeEntry("Plugins", m_enabledPreviewPlugins); - globalConfig.sync(); - } + const KConfigGroup globalConfig(KSharedConfig::openConfig(), QStringLiteral("PreviewSettings")); + m_enabledPreviewPlugins = globalConfig.readEntry("Plugins", KIO::PreviewJob::defaultPlugins()); const qulonglong defaultRemotePreview = static_cast(MaxRemotePreviewSize) * 1024 * 1024; const qulonglong maxRemoteByteSize = globalConfig.readEntry("MaximumRemoteSize", defaultRemotePreview); @@ -201,4 +173,3 @@ void PreviewsSettingsPage::loadSettings() m_remoteFileSizeBox->setValue(maxRemoteMByteSize); } -#include "previewssettingspage.moc"