]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/dolphinsettings.cpp
consider the protocol and directory capabilities for file actions like Rename, Delete...
[dolphin.git] / src / dolphinsettings.cpp
index 0db0ad2048e6af9f5faa9f56b178e81156ab22ea..5b91001eff8af499b675cc901076298800b12b17 100644 (file)
@@ -20,8 +20,7 @@
 
 #include "dolphinsettings.h"
 
-#include <kbookmark.h>
-#include <kbookmarkmanager.h>
+#include <kfileplacesmodel.h>
 #include <kcomponentdata.h>
 #include <klocale.h>
 #include <kstandarddirs.h>
 #include "dolphin_generalsettings.h"
 #include "dolphin_iconsmodesettings.h"
 
-DolphinSettings& DolphinSettings::instance()
+class DolphinSettingsSingleton
 {
-    static DolphinSettings* instance = 0;
-    if (instance == 0) {
-        instance = new DolphinSettings();
-    }
-    return *instance;
-}
-
-KBookmark DolphinSettings::bookmark(int index) const
-{
-    return bookmarkManager()->findByAddress(QString('/') + QString::number(index));
-}
+public:
+    DolphinSettings instance;
+};
+K_GLOBAL_STATIC(DolphinSettingsSingleton, s_settings)
 
-KBookmarkManager* DolphinSettings::bookmarkManager() const
+DolphinSettings& DolphinSettings::instance()
 {
-    QString basePath = KGlobal::mainComponent().componentName();
-    basePath.append("/bookmarks.xml");
-    const QString file = KStandardDirs::locateLocal("data", basePath);
-
-    return KBookmarkManager::managerForFile(file, "dolphin", false);
+    return s_settings->instance;
 }
 
 void DolphinSettings::save()
@@ -60,13 +48,6 @@ void DolphinSettings::save()
     m_iconsModeSettings->writeConfig();
     m_detailsModeSettings->writeConfig();
     m_columnModeSettings->writeConfig();
-
-    QString basePath = KGlobal::mainComponent().componentName();
-    basePath.append("/bookmarks.xml");
-    const QString file = KStandardDirs::locateLocal( "data", basePath);
-
-    KBookmarkManager* manager = KBookmarkManager::managerForFile(file, "dolphin", false);
-    manager->save(false);
 }
 
 DolphinSettings::DolphinSettings()
@@ -75,6 +56,7 @@ DolphinSettings::DolphinSettings()
     m_iconsModeSettings = new IconsModeSettings();
     m_detailsModeSettings = new DetailsModeSettings();
     m_columnModeSettings = new ColumnModeSettings();
+    m_placesModel = new KFilePlacesModel();
 }
 
 DolphinSettings::~DolphinSettings()
@@ -90,4 +72,7 @@ DolphinSettings::~DolphinSettings()
 
     delete m_columnModeSettings;
     m_columnModeSettings = 0;
+
+    delete m_placesModel;
+    m_placesModel = 0;
 }