]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/settings/general/previewssettingspage.cpp
Port Dolphin away from KApplication, KCmdLineArgs and K4AboutData
[dolphin.git] / src / settings / general / previewssettingspage.cpp
index c76f4ca24fe323f28d4e5ed4e4edd3d70facc8b7..9e5f18cc734a3c01fc47caf66a64a9c5496d5130 100644 (file)
@@ -23,9 +23,8 @@
 #include "configurepreviewplugindialog.h"
 
 #include <KConfigGroup>
-#include <KDialog>
 #include <KGlobal>
-#include <KLocale>
+#include <KLocalizedString>
 #include <KNumInput>
 #include <KServiceTypeTrader>
 #include <KService>
@@ -65,8 +64,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,7 +78,7 @@ 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->setRange(0, 9999999); /* MB */
@@ -88,15 +87,14 @@ PreviewsSettingsPage::PreviewsSettingsPage(QWidget* parent) :
     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<void(QSpinBox::*)(int)>(&QSpinBox::valueChanged), this, &PreviewsSettingsPage::changed);
 }
 
 PreviewsSettingsPage::~PreviewsSettingsPage()
@@ -119,7 +117,7 @@ void PreviewsSettingsPage::applySettings()
         }
     }
 
-    KConfigGroup globalConfig(KGlobal::config(), QLatin1String("PreviewSettings"));
+    KConfigGroup globalConfig(KSharedConfig::openConfig(), QLatin1String("PreviewSettings"));
     globalConfig.writeEntry("Plugins", m_enabledPreviewPlugins);
 
     const qulonglong maximumRemoteSize = static_cast<qulonglong>(m_remoteFileSizeBox->value()) * 1024 * 1024;
@@ -159,7 +157,7 @@ void PreviewsSettingsPage::loadPreviewPlugins()
     QAbstractItemModel* model = m_listView->model();
 
     const KService::List plugins = KServiceTypeTrader::self()->query(QLatin1String("ThumbCreator"));
-    foreach (const KSharedPtr<KService>& service, plugins) {
+    foreach (const KService::Ptr& service, plugins) {
         const bool configurable = service->property("Configurable", QVariant::Bool).toBool();
         const bool show = m_enabledPreviewPlugins.contains(service->desktopEntryName());
 
@@ -176,29 +174,15 @@ void PreviewsSettingsPage::loadPreviewPlugins()
 
 void PreviewsSettingsPage::loadSettings()
 {
-    KConfigGroup globalConfig(KGlobal::config(), "PreviewSettings");
+    KConfigGroup globalConfig(KSharedConfig::openConfig(), "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 qulonglong defaultRemotePreview = static_cast<qulonglong>(MaxRemotePreviewSize) * 1024 * 1024;
     const qulonglong maxRemoteByteSize = globalConfig.readEntry("MaximumRemoteSize", defaultRemotePreview);
     const int maxRemoteMByteSize = maxRemoteByteSize / (1024 * 1024);
     m_remoteFileSizeBox->setValue(maxRemoteMByteSize);
 }
 
-#include "previewssettingspage.moc"