]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/generalsettingspage.cpp
SVN_SILENT made messages (.desktop file)
[dolphin.git] / src / generalsettingspage.cpp
index 04863c0379ea350a07af4a8dcdbc194e77c8cd01..68193b4e41b73d8733bb61fe35c51803c9b5621d 100644 (file)
 
 GeneralSettingsPage::GeneralSettingsPage(DolphinMainWindow* mainWin, QWidget* parent) :
     SettingsPageBase(parent),
-    m_showDeleteCommand(0),
     m_confirmMoveToTrash(0),
     m_confirmDelete(0),
-    m_browseThroughArchives(0)
+    m_showDeleteCommand(0),
+    m_showCopyMoveMenu(0),
+    m_showZoomSlider(0),
+    m_showSpaceInfo(0),
+    m_browseThroughArchives(0),
+    m_renameInline(0),
+    m_autoExpandFolders(0)
 {
     Q_UNUSED(mainWin);
 
@@ -52,17 +57,48 @@ GeneralSettingsPage::GeneralSettingsPage(DolphinMainWindow* mainWin, QWidget* pa
     QGroupBox* confirmBox = new QGroupBox(i18nc("@title:group", "Ask For Confirmation When"), vBox);
     m_confirmMoveToTrash = new QCheckBox(i18nc("@option:check Ask for Confirmation When",
                                                "Moving files or folders to trash"), confirmBox);
+    connect(m_confirmMoveToTrash, SIGNAL(toggled(bool)), this, SIGNAL(changed()));
     m_confirmDelete = new QCheckBox(i18nc("@option:check Ask for Confirmation When",
                                           "Deleting files or folders"), confirmBox);
+    connect(m_confirmDelete, SIGNAL(toggled(bool)), this, SIGNAL(changed()));
 
     QVBoxLayout* confirmBoxLayout = new QVBoxLayout(confirmBox);
     confirmBoxLayout->addWidget(m_confirmMoveToTrash);
     confirmBoxLayout->addWidget(m_confirmDelete);
 
+    QGroupBox* contextMenuBox = new QGroupBox(i18nc("@title:group", "Context Menu"), vBox);
+
     // create 'Show the command 'Delete' in context menu' checkbox
-    m_showDeleteCommand = new QCheckBox(i18nc("@option:check", "Show 'Delete' command in context menu"), vBox);
+    m_showDeleteCommand = new QCheckBox(i18nc("@option:check", "Show 'Delete' command"), contextMenuBox);
+    connect(m_showDeleteCommand, SIGNAL(toggled(bool)), this, SIGNAL(changed()));
+
+    m_showCopyMoveMenu = new QCheckBox(i18nc("@option:check", "Show 'Copy To' and 'Move To' commands"), contextMenuBox);
+    connect(m_showCopyMoveMenu, SIGNAL(toggled(bool)), this, SIGNAL(changed()));
+
+    QVBoxLayout* contextMenuBoxLayout = new QVBoxLayout(contextMenuBox);
+    contextMenuBoxLayout->addWidget(m_showDeleteCommand);
+    contextMenuBoxLayout->addWidget(m_showCopyMoveMenu);
+
+    QGroupBox* statusBarBox = new QGroupBox(i18nc("@title:group", "Status Bar"), vBox);
+
+    m_showZoomSlider = new QCheckBox(i18nc("@option:check", "Show zoom slider"), statusBarBox);
+    connect(m_showZoomSlider, SIGNAL(toggled(bool)), this, SIGNAL(changed()));
+
+    m_showSpaceInfo = new QCheckBox(i18nc("@option:check", "Show space information"), statusBarBox);
+    connect(m_showSpaceInfo, SIGNAL(toggled(bool)), this, SIGNAL(changed()));
+
+    QVBoxLayout* statusBarBoxLayout = new QVBoxLayout(statusBarBox);
+    statusBarBoxLayout->addWidget(m_showZoomSlider);
+    statusBarBoxLayout->addWidget(m_showSpaceInfo);
+
+    m_browseThroughArchives = new QCheckBox(i18nc("@option:check", "Browse through archives"), vBox);
+    connect(m_browseThroughArchives, SIGNAL(toggled(bool)), this, SIGNAL(changed()));
+
+    m_renameInline = new QCheckBox(i18nc("@option:check", "Rename inline"), vBox);
+    connect(m_renameInline, SIGNAL(toggled(bool)), this, SIGNAL(changed()));
 
-    m_browseThroughArchives = new QCheckBox(i18nc("option:check", "Browse through archives"), vBox);
+    m_autoExpandFolders = new QCheckBox(i18nc("option:check", "Open folders during drag operations"), vBox);
+    connect(m_autoExpandFolders, SIGNAL(toggled(bool)), this, SIGNAL(changed()));
 
     // Add a dummy widget with no restriction regarding
     // a vertical resizing. This assures that the dialog layout
@@ -82,17 +118,23 @@ void GeneralSettingsPage::applySettings()
 {
     GeneralSettings* settings = DolphinSettings::instance().generalSettings();
 
-    KSharedConfig::Ptr konqConfig = KSharedConfig::openConfig("konquerorrc", KConfig::IncludeGlobals);
-    KConfigGroup trashConfig(konqConfig, "Trash");
-    trashConfig.writeEntry("ConfirmTrash", m_confirmMoveToTrash->isChecked());
-    trashConfig.writeEntry("ConfirmDelete", m_confirmDelete->isChecked());
-    trashConfig.sync();
+    KSharedConfig::Ptr kioConfig = KSharedConfig::openConfig("kiorc", KConfig::NoGlobals);
+    KConfigGroup confirmationGroup(kioConfig, "Confirmations");
+    confirmationGroup.writeEntry("ConfirmTrash", m_confirmMoveToTrash->isChecked());
+    confirmationGroup.writeEntry("ConfirmDelete", m_confirmDelete->isChecked());
+    confirmationGroup.sync();
 
-    KConfigGroup kdeConfig(KGlobal::config(), "KDE");
-    kdeConfig.writeEntry("ShowDeleteCommand", m_showDeleteCommand->isChecked());
-    kdeConfig.sync();
+    KSharedConfig::Ptr globalConfig = KSharedConfig::openConfig("kdeglobals", KConfig::NoGlobals);
+    KConfigGroup configGroup(globalConfig, "KDE");
+    configGroup.writeEntry("ShowDeleteCommand", m_showDeleteCommand->isChecked());
+    configGroup.sync();
 
+    settings->setShowCopyMoveMenu(m_showCopyMoveMenu->isChecked());
+    settings->setShowZoomSlider(m_showZoomSlider->isChecked());
+    settings->setShowSpaceInfo(m_showSpaceInfo->isChecked());
     settings->setBrowseThroughArchives(m_browseThroughArchives->isChecked());
+    settings->setRenameInline(m_renameInline->isChecked());
+    settings->setAutoExpandFolders(m_autoExpandFolders->isChecked());
 }
 
 void GeneralSettingsPage::restoreDefaults()
@@ -107,16 +149,22 @@ void GeneralSettingsPage::restoreDefaults()
 
 void GeneralSettingsPage::loadSettings()
 {
-    KSharedConfig::Ptr konqConfig = KSharedConfig::openConfig("konquerorrc", KConfig::IncludeGlobals);
-    const KConfigGroup trashConfig(konqConfig, "Trash");
-    m_confirmMoveToTrash->setChecked(trashConfig.readEntry("ConfirmTrash", false));
-    m_confirmDelete->setChecked(trashConfig.readEntry("ConfirmDelete", true));
+    KSharedConfig::Ptr kioConfig = KSharedConfig::openConfig("kiorc", KConfig::IncludeGlobals);
+    const KConfigGroup confirmationGroup(kioConfig, "Confirmations");
+    m_confirmMoveToTrash->setChecked(confirmationGroup.readEntry("ConfirmTrash", false));
+    m_confirmDelete->setChecked(confirmationGroup.readEntry("ConfirmDelete", true));
 
-    const KConfigGroup kdeConfig(KGlobal::config(), "KDE");
-    m_showDeleteCommand->setChecked(kdeConfig.readEntry("ShowDeleteCommand", false));
+    KSharedConfig::Ptr globalConfig = KSharedConfig::openConfig("kdeglobals", KConfig::IncludeGlobals);
+    KConfigGroup configGroup(globalConfig, "KDE");
+    m_showDeleteCommand->setChecked(configGroup.readEntry("ShowDeleteCommand", false));
 
     GeneralSettings* settings = DolphinSettings::instance().generalSettings();
+    m_showCopyMoveMenu->setChecked(settings->showCopyMoveMenu());
+    m_showZoomSlider->setChecked(settings->showZoomSlider());
+    m_showSpaceInfo->setChecked(settings->showSpaceInfo());
     m_browseThroughArchives->setChecked(settings->browseThroughArchives());
+    m_renameInline->setChecked(settings->renameInline());
+    m_autoExpandFolders->setChecked(settings->autoExpandFolders());
 }
 
 #include "generalsettingspage.moc"