┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src/settings
diff options
context:
space:
mode:
Diffstat (limited to 'src/settings')
-rw-r--r--src/settings/additionalinfodialog.cpp12
-rw-r--r--src/settings/additionalinfodialog.h8
-rw-r--r--src/settings/applyviewpropsjob.cpp4
-rw-r--r--src/settings/dolphin_columnmodesettings.kcfgc4
-rw-r--r--src/settings/dolphin_compactmodesettings.kcfg (renamed from src/settings/dolphin_columnmodesettings.kcfg)22
-rw-r--r--src/settings/dolphin_compactmodesettings.kcfgc4
-rw-r--r--src/settings/dolphin_detailsmodesettings.kcfg4
-rw-r--r--src/settings/dolphin_detailsmodesettings.kcfgc2
-rw-r--r--src/settings/dolphin_directoryviewpropertysettings.kcfg21
-rw-r--r--src/settings/dolphin_iconsmodesettings.kcfg34
-rw-r--r--src/settings/dolphin_iconsmodesettings.kcfgc2
-rw-r--r--src/settings/dolphinsettings.cpp16
-rw-r--r--src/settings/dolphinsettings.h26
-rw-r--r--src/settings/kcm/kcmdolphinviewmodes.cpp11
-rw-r--r--src/settings/viewmodes/columnviewsettingspage.cpp158
-rw-r--r--src/settings/viewmodes/columnviewsettingspage.h66
-rw-r--r--src/settings/viewmodes/detailsviewsettingspage.cpp54
-rw-r--r--src/settings/viewmodes/detailsviewsettingspage.h2
-rw-r--r--src/settings/viewmodes/iconsviewsettingspage.cpp137
-rw-r--r--src/settings/viewmodes/iconsviewsettingspage.h18
-rw-r--r--src/settings/viewmodes/viewsettingspage.cpp11
-rw-r--r--src/settings/viewpropertiesdialog.cpp57
-rw-r--r--src/settings/viewpropertiesdialog.h2
23 files changed, 114 insertions, 561 deletions
diff --git a/src/settings/additionalinfodialog.cpp b/src/settings/additionalinfodialog.cpp
index 2e7d33cb3..9b47e928f 100644
--- a/src/settings/additionalinfodialog.cpp
+++ b/src/settings/additionalinfodialog.cpp
@@ -28,7 +28,7 @@
#include "views/additionalinfoaccessor.h"
AdditionalInfoDialog::AdditionalInfoDialog(QWidget* parent,
- KFileItemDelegate::InformationList infoList) :
+ const QList<DolphinView::AdditionalInfo>& infoList) :
KDialog(parent),
m_infoList(infoList),
m_checkBoxes()
@@ -49,8 +49,8 @@ AdditionalInfoDialog::AdditionalInfoDialog(QWidget* parent,
// Add checkboxes
const AdditionalInfoAccessor& infoAccessor = AdditionalInfoAccessor::instance();
- const KFileItemDelegate::InformationList keys = infoAccessor.keys();
- foreach (const KFileItemDelegate::Information info, keys) {
+ const QList<DolphinView::AdditionalInfo> keys = infoAccessor.keys();
+ foreach (DolphinView::AdditionalInfo info, keys) {
QCheckBox* checkBox = new QCheckBox(infoAccessor.translation(info), mainWidget);
checkBox->setChecked(infoList.contains(info));
layout->addWidget(checkBox);
@@ -75,7 +75,7 @@ AdditionalInfoDialog::~AdditionalInfoDialog()
saveDialogSize(dialogConfig, KConfigBase::Persistent);
}
-KFileItemDelegate::InformationList AdditionalInfoDialog::informationList() const
+QList<DolphinView::AdditionalInfo> AdditionalInfoDialog::informationList() const
{
return m_infoList;
}
@@ -84,9 +84,9 @@ void AdditionalInfoDialog::slotOk()
{
m_infoList.clear();
- const KFileItemDelegate::InformationList keys = AdditionalInfoAccessor::instance().keys();
+ const QList<DolphinView::AdditionalInfo> keys = AdditionalInfoAccessor::instance().keys();
int index = 0;
- foreach (const KFileItemDelegate::Information info, keys) {
+ foreach (DolphinView::AdditionalInfo info, keys) {
if (m_checkBoxes[index]->isChecked()) {
m_infoList.append(info);
}
diff --git a/src/settings/additionalinfodialog.h b/src/settings/additionalinfodialog.h
index eca2c86c6..6f38f617c 100644
--- a/src/settings/additionalinfodialog.h
+++ b/src/settings/additionalinfodialog.h
@@ -20,8 +20,8 @@
#ifndef ADDITIONALINFODIALOG_H
#define ADDITIONALINFODIALOG_H
+#include <views/dolphinview.h>
#include <KDialog>
-#include <KFileItemDelegate>
#include <QList>
class QCheckBox;
@@ -34,15 +34,15 @@ class AdditionalInfoDialog : public KDialog
Q_OBJECT
public:
- AdditionalInfoDialog(QWidget* parent, KFileItemDelegate::InformationList infoList);
+ AdditionalInfoDialog(QWidget* parent, const QList<DolphinView::AdditionalInfo>& infoList);
virtual ~AdditionalInfoDialog();
- KFileItemDelegate::InformationList informationList() const;
+ QList<DolphinView::AdditionalInfo> informationList() const;
private slots:
void slotOk();
private:
- KFileItemDelegate::InformationList m_infoList;
+ QList<DolphinView::AdditionalInfo> m_infoList;
QList<QCheckBox*> m_checkBoxes;
};
diff --git a/src/settings/applyviewpropsjob.cpp b/src/settings/applyviewpropsjob.cpp
index 4010ab477..dd9788851 100644
--- a/src/settings/applyviewpropsjob.cpp
+++ b/src/settings/applyviewpropsjob.cpp
@@ -32,8 +32,8 @@ ApplyViewPropsJob::ApplyViewPropsJob(const KUrl& dir,
{
m_viewProps = new ViewProperties(dir);
m_viewProps->setViewMode(viewProps.viewMode());
- m_viewProps->setShowPreview(viewProps.showPreview());
- m_viewProps->setShowHiddenFiles(viewProps.showHiddenFiles());
+ m_viewProps->setPreviewsShown(viewProps.previewsShown());
+ m_viewProps->setHiddenFilesShown(viewProps.hiddenFilesShown());
m_viewProps->setSorting(viewProps.sorting());
m_viewProps->setSortOrder(viewProps.sortOrder());
diff --git a/src/settings/dolphin_columnmodesettings.kcfgc b/src/settings/dolphin_columnmodesettings.kcfgc
deleted file mode 100644
index 55134335a..000000000
--- a/src/settings/dolphin_columnmodesettings.kcfgc
+++ /dev/null
@@ -1,4 +0,0 @@
-File=dolphin_columnmodesettings.kcfg
-ClassName=ColumnModeSettings
-Singleton=false
-Mutators=true
diff --git a/src/settings/dolphin_columnmodesettings.kcfg b/src/settings/dolphin_compactmodesettings.kcfg
index 963d326cc..bb050d480 100644
--- a/src/settings/dolphin_columnmodesettings.kcfg
+++ b/src/settings/dolphin_compactmodesettings.kcfg
@@ -3,19 +3,19 @@
<kcfg xmlns="http://www.kde.org/standards/kcfg/1.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.kde.org/standards/kcfg/1.0
- http://www.kde.org/standards/kcfg/1.0/kcfg.xsd" >
- <include>kiconloader.h</include>
+ http://www.kde.org/standards/kcfg/1.0/kcfg.xsd">
<include>kglobalsettings.h</include>
+ <include>kiconloader.h</include>
<kcfgfile name="dolphinrc"/>
- <group name="ColumnMode">
- <entry name="FontFamily" type="String">
- <label>Font family</label>
- <default code="true">KGlobalSettings::generalFont().family()</default>
- </entry>
+ <group name="CompactMode">
<entry name="UseSystemFont" type="Bool">
<label>Use system font</label>
<default>true</default>
</entry>
+ <entry name="FontFamily" type="String">
+ <label>Font family</label>
+ <default code="true">KGlobalSettings::generalFont().family()</default>
+ </entry>
<entry name="FontSize" type="Double">
<label>Font size</label>
<default code="true">KGlobalSettings::generalFont().pointSizeF()</default>
@@ -30,15 +30,11 @@
</entry>
<entry name="IconSize" type="Int">
<label>Icon size</label>
- <default code="true">KIconLoader::SizeSmall</default>
+ <default code="true">KIconLoader::SizeMedium</default>
</entry>
<entry name="PreviewSize" type="Int">
<label>Preview size</label>
- <default code="true">KIconLoader::SizeLarge</default>
- </entry>
- <entry name="ColumnWidth" type="Int">
- <label>Column width</label>
- <default>250</default>
+ <default code="true">KIconLoader::SizeHuge</default>
</entry>
</group>
</kcfg>
diff --git a/src/settings/dolphin_compactmodesettings.kcfgc b/src/settings/dolphin_compactmodesettings.kcfgc
new file mode 100644
index 000000000..8341185fa
--- /dev/null
+++ b/src/settings/dolphin_compactmodesettings.kcfgc
@@ -0,0 +1,4 @@
+File=dolphin_compactmodesettings.kcfg
+ClassName=CompactModeSettings
+Singleton=yes
+Mutators=true
diff --git a/src/settings/dolphin_detailsmodesettings.kcfg b/src/settings/dolphin_detailsmodesettings.kcfg
index d58e03809..0fb1bf0b5 100644
--- a/src/settings/dolphin_detailsmodesettings.kcfg
+++ b/src/settings/dolphin_detailsmodesettings.kcfg
@@ -36,10 +36,6 @@
<label>Preview size</label>
<default code="true">KIconLoader::SizeLarge</default>
</entry>
- <entry name="ExpandableFolders" type="Bool">
- <label>Expandable folders</label>
- <default>false</default>
- </entry>
<entry name="ColumnPositions" type="IntList">
<label>Position of columns</label>
<default>0,1,2,3,4,5,6,7,8</default>
diff --git a/src/settings/dolphin_detailsmodesettings.kcfgc b/src/settings/dolphin_detailsmodesettings.kcfgc
index 06da2e9e0..7acfa3c7d 100644
--- a/src/settings/dolphin_detailsmodesettings.kcfgc
+++ b/src/settings/dolphin_detailsmodesettings.kcfgc
@@ -1,4 +1,4 @@
File=dolphin_detailsmodesettings.kcfg
ClassName=DetailsModeSettings
-Singleton=false
+Singleton=yes
Mutators=true
diff --git a/src/settings/dolphin_directoryviewpropertysettings.kcfg b/src/settings/dolphin_directoryviewpropertysettings.kcfg
index 004152063..7e62267a9 100644
--- a/src/settings/dolphin_directoryviewpropertysettings.kcfg
+++ b/src/settings/dolphin_directoryviewpropertysettings.kcfg
@@ -7,8 +7,8 @@
<kcfgfile arg="true" />
<group name="Settings">
- <entry name="ShowHiddenFiles" key="ShowDotFiles" type="Bool" >
- <label context="@label">Show hidden files</label>
+ <entry name="HiddenFilesShown" type="Bool" >
+ <label context="@label">Hidden files shown</label>
<whatsthis context="@info:whatsthis">When this option is enabled hidden files, such as those starting with a '.', will be shown in the file view.</whatsthis>
<default>false</default>
</entry>
@@ -18,7 +18,7 @@
<entry name="Version" type="Int" >
<label context="@label">Version</label>
<whatsthis context="@info:whatsthis">This option defines the used version of the view properties.</whatsthis>
- <default>1</default>
+ <default>2</default>
<min>1</min>
</entry>
@@ -26,12 +26,10 @@
<label context="@label">View Mode</label>
<whatsthis context="@info:whatsthis">This option controls the style of the view. Currently supported values include icons (0), details (1) and column (2) views.</whatsthis>
<default>DolphinView::IconsView</default>
- <min>0</min>
- <max code="true">DolphinView::MaxModeEnum</max>
</entry>
- <entry name="ShowPreview" type="Bool" >
- <label context="@label">Show preview</label>
+ <entry name="PreviewsShown" type="Bool" >
+ <label context="@label">Previews shown</label>
<whatsthis context="@info:whatsthis">When this option is enabled, a preview of the file content is shown as an icon.</whatsthis>
<default>false</default>
</entry>
@@ -46,8 +44,6 @@
<label context="@label">Sort files by</label>
<whatsthis context="@info:whatsthis">This option defines which attribute (name, size, date, etc.) sorting is performed on.</whatsthis>
<default code="true">DolphinView::SortByName</default>
- <min>0</min>
- <max code="true">DolphinView::MaxSortingEnum</max>
</entry>
<entry name="SortOrder" type="Int" >
@@ -62,12 +58,7 @@
<default>true</default>
</entry>
- <entry name="AdditionalInfo" type="Int">
- <label context="@label">Additional information (deprecated, use AdditionInfoV2 instead)</label>
- <default>0</default>
- </entry>
-
- <entry name="AdditionalInfoV2" type="StringList">
+ <entry name="AdditionalInfo" type="StringList">
<label context="@label">Additional information</label>
<default></default>
</entry>
diff --git a/src/settings/dolphin_iconsmodesettings.kcfg b/src/settings/dolphin_iconsmodesettings.kcfg
index f50ab3ead..fb01a8c65 100644
--- a/src/settings/dolphin_iconsmodesettings.kcfg
+++ b/src/settings/dolphin_iconsmodesettings.kcfg
@@ -6,13 +6,8 @@
http://www.kde.org/standards/kcfg/1.0/kcfg.xsd">
<include>kglobalsettings.h</include>
<include>kiconloader.h</include>
- <include>QListView</include>
<kcfgfile name="dolphinrc"/>
<group name="IconsMode">
- <entry name="Arrangement" type="Int">
- <label>Arrangement</label>
- <default code="true">QListView::TopToBottom</default>
- </entry>
<entry name="UseSystemFont" type="Bool">
<label>Use system font</label>
<default>true</default>
@@ -33,38 +28,17 @@
<label>Font weight</label>
<default>0</default>
</entry>
- <entry name="ItemHeight" type="Int">
- <label>Item height</label>
- <!--
- check 'void IconsViewSettingsPage::applySettings()' as reference (iconsviewsettingspage.cpp):
- itemHeight += fontHeight * numberOfTextlines + 10;
- /-->
- <default code="true">KIconLoader::SizeMedium + QFontMetrics(KGlobalSettings::generalFont()).height() * 2 + 10</default>
- </entry>
- <entry name="ItemWidth" type="Int">
- <label>Item width</label>
- <!--
- check 'void IconsViewSettingsPage::applySettings()' as reference (iconsviewsettingspage.cpp):
- itemWidth = TopToBottomBase + textSizeIndex * TopToBottomInc;
- /-->
- <default>96</default>
- </entry>
- <entry name="GridSpacing" type="Int">
- <label>Grid spacing</label>
- <default>8</default>
- </entry>
<entry name="IconSize" type="Int">
<label>Icon size</label>
<default code="true">KIconLoader::SizeMedium</default>
</entry>
- <entry name="NumberOfTextlines" type="Int">
- <label>Number of textlines</label>
- <!-- don't forget adjusting the "ItemHeight" too when changing this value /-->
- <default>2</default>
- </entry>
<entry name="PreviewSize" type="Int">
<label>Preview size</label>
<default code="true">KIconLoader::SizeHuge</default>
</entry>
+ <entry name="TextWidthIndex" type="Int">
+ <label>Text width index</label>
+ <default>1</default>
+ </entry>
</group>
</kcfg>
diff --git a/src/settings/dolphin_iconsmodesettings.kcfgc b/src/settings/dolphin_iconsmodesettings.kcfgc
index 9987ce938..9ab145bc2 100644
--- a/src/settings/dolphin_iconsmodesettings.kcfgc
+++ b/src/settings/dolphin_iconsmodesettings.kcfgc
@@ -1,4 +1,4 @@
File=dolphin_iconsmodesettings.kcfg
ClassName=IconsModeSettings
-Singleton=false
+Singleton=yes
Mutators=true
diff --git a/src/settings/dolphinsettings.cpp b/src/settings/dolphinsettings.cpp
index 7f160b141..9fc0cea3d 100644
--- a/src/settings/dolphinsettings.cpp
+++ b/src/settings/dolphinsettings.cpp
@@ -25,7 +25,6 @@
#include <KLocale>
#include <KStandardDirs>
-#include "dolphin_columnmodesettings.h"
#include "dolphin_detailsmodesettings.h"
#include "dolphin_generalsettings.h"
#include "dolphin_iconsmodesettings.h"
@@ -45,17 +44,11 @@ DolphinSettings& DolphinSettings::instance()
void DolphinSettings::save()
{
m_generalSettings->writeConfig();
- m_iconsModeSettings->writeConfig();
- m_detailsModeSettings->writeConfig();
- m_columnModeSettings->writeConfig();
}
DolphinSettings::DolphinSettings()
{
m_generalSettings = new GeneralSettings();
- m_iconsModeSettings = new IconsModeSettings();
- m_detailsModeSettings = new DetailsModeSettings();
- m_columnModeSettings = new ColumnModeSettings();
m_placesModel = new KFilePlacesModel();
}
@@ -64,15 +57,6 @@ DolphinSettings::~DolphinSettings()
delete m_generalSettings;
m_generalSettings = 0;
- delete m_iconsModeSettings;
- m_iconsModeSettings = 0;
-
- delete m_detailsModeSettings;
- m_detailsModeSettings = 0;
-
- delete m_columnModeSettings;
- m_columnModeSettings = 0;
-
delete m_placesModel;
m_placesModel = 0;
}
diff --git a/src/settings/dolphinsettings.h b/src/settings/dolphinsettings.h
index 54141ad3e..88e1d2905 100644
--- a/src/settings/dolphinsettings.h
+++ b/src/settings/dolphinsettings.h
@@ -23,12 +23,11 @@
#include <libdolphin_export.h>
-class ColumnModeSettings;
-class DetailsModeSettings;
class GeneralSettings;
-class IconsModeSettings;
class KFilePlacesModel;
+// TODO: Remove this class completely and just work with the settings directly instead
+
/**
* @brief Manages and stores all settings from Dolphin.
*
@@ -46,9 +45,6 @@ public:
static DolphinSettings& instance();
GeneralSettings* generalSettings() const;
- IconsModeSettings* iconsModeSettings() const;
- DetailsModeSettings* detailsModeSettings() const;
- ColumnModeSettings* columnModeSettings() const;
KFilePlacesModel* placesModel() const;
virtual void save();
@@ -59,9 +55,6 @@ protected:
private:
GeneralSettings* m_generalSettings;
- IconsModeSettings* m_iconsModeSettings;
- DetailsModeSettings* m_detailsModeSettings;
- ColumnModeSettings* m_columnModeSettings;
KFilePlacesModel* m_placesModel;
};
@@ -70,21 +63,6 @@ inline GeneralSettings* DolphinSettings::generalSettings() const
return m_generalSettings;
}
-inline IconsModeSettings* DolphinSettings::iconsModeSettings() const
-{
- return m_iconsModeSettings;
-}
-
-inline DetailsModeSettings* DolphinSettings::detailsModeSettings() const
-{
- return m_detailsModeSettings;
-}
-
-inline ColumnModeSettings* DolphinSettings::columnModeSettings() const
-{
- return m_columnModeSettings;
-}
-
inline KFilePlacesModel* DolphinSettings::placesModel() const
{
return m_placesModel;
diff --git a/src/settings/kcm/kcmdolphinviewmodes.cpp b/src/settings/kcm/kcmdolphinviewmodes.cpp
index b5ed44f63..4e49257ce 100644
--- a/src/settings/kcm/kcmdolphinviewmodes.cpp
+++ b/src/settings/kcm/kcmdolphinviewmodes.cpp
@@ -25,7 +25,6 @@
#include <KPluginFactory>
#include <KPluginLoader>
-#include <settings/viewmodes/columnviewsettingspage.h>
#include <settings/viewmodes/detailsviewsettingspage.h>
#include <settings/viewmodes/iconsviewsettingspage.h>
@@ -59,19 +58,15 @@ DolphinViewModesConfigModule::DolphinViewModesConfigModule(QWidget* parent, cons
tabWidget->addTab(iconsPage, KIcon("view-list-icons"), i18nc("@title:tab", "Icons"));
connect(iconsPage, SIGNAL(changed()), this, SLOT(changed()));
+ // TODO: initialize 'Compact' tab
+
// initialize 'Details' tab
DetailsViewSettingsPage* detailsPage = new DetailsViewSettingsPage(tabWidget);
- tabWidget->addTab(detailsPage, KIcon("view-list-details"), i18nc("@title:tab", "Details"));
+ tabWidget->addTab(detailsPage, KIcon("view-list-text"), i18nc("@title:tab", "Details"));
connect(detailsPage, SIGNAL(changed()), this, SLOT(changed()));
- // initialize 'Column' tab
- ColumnViewSettingsPage* columnPage = new ColumnViewSettingsPage(tabWidget);
- tabWidget->addTab(columnPage, KIcon("view-file-columns"), i18nc("@title:tab", "Column"));
- connect(columnPage, SIGNAL(changed()), this, SLOT(changed()));
-
m_pages.append(iconsPage);
m_pages.append(detailsPage);
- m_pages.append(columnPage);
topLayout->addWidget(tabWidget, 0, 0);
}
diff --git a/src/settings/viewmodes/columnviewsettingspage.cpp b/src/settings/viewmodes/columnviewsettingspage.cpp
deleted file mode 100644
index 888e35d4b..000000000
--- a/src/settings/viewmodes/columnviewsettingspage.cpp
+++ /dev/null
@@ -1,158 +0,0 @@
-/***************************************************************************
- * Copyright (C) 2006 by Peter Penz <[email protected]> *
- * *
- * This program is free software; you can redistribute it and/or modify *
- * it under the terms of the GNU General Public License as published by *
- * the Free Software Foundation; either version 2 of the License, or *
- * (at your option) any later version. *
- * *
- * This program is distributed in the hope that it will be useful, *
- * but WITHOUT ANY WARRANTY; without even the implied warranty of *
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
- * GNU General Public License for more details. *
- * *
- * You should have received a copy of the GNU General Public License *
- * along with this program; if not, write to the *
- * Free Software Foundation, Inc., *
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA *
- ***************************************************************************/
-
-#include "columnviewsettingspage.h"
-
-#include "dolphinfontrequester.h"
-#include <dolphin_columnmodesettings.h>
-#include "iconsizegroupbox.h"
-
-#include <KDialog>
-#include <KLocale>
-#include <KComboBox>
-
-#include <settings/dolphinsettings.h>
-
-#include <QButtonGroup>
-#include <QCheckBox>
-#include <QGroupBox>
-#include <QHBoxLayout>
-#include <QLabel>
-#include <QSlider>
-#include <QRadioButton>
-
-#include <views/zoomlevelinfo.h>
-
-ColumnViewSettingsPage::ColumnViewSettingsPage(QWidget* parent) :
- ViewSettingsPageBase(parent),
- m_iconSizeGroupBox(0),
- m_fontRequester(0),
- m_textWidthBox(0)
-{
- const int spacing = KDialog::spacingHint();
- const int margin = KDialog::marginHint();
- const QSizePolicy sizePolicy(QSizePolicy::Preferred, QSizePolicy::Fixed);
-
- setSpacing(spacing);
- setMargin(margin);
-
- // Create "Icon" properties
- m_iconSizeGroupBox = new IconSizeGroupBox(this);
- m_iconSizeGroupBox->setSizePolicy(sizePolicy);
-
- const int min = ZoomLevelInfo::minimumLevel();
- const int max = ZoomLevelInfo::maximumLevel();
- m_iconSizeGroupBox->setDefaultSizeRange(min, max);
- m_iconSizeGroupBox->setPreviewSizeRange(min, max);
-
- // create "Text" properties
- QGroupBox* textGroup = new QGroupBox(i18nc("@title:group", "Text"), this);
- textGroup->setSizePolicy(sizePolicy);
-
- QLabel* fontLabel = new QLabel(i18nc("@label:listbox", "Font:"), textGroup);
- m_fontRequester = new DolphinFontRequester(textGroup);
-
- QLabel* textWidthLabel = new QLabel(i18nc("@label:listbox", "Text width:"), textGroup);
- m_textWidthBox = new KComboBox(textGroup);
- m_textWidthBox->addItem(i18nc("@item:inlistbox Text width", "Small"));
- m_textWidthBox->addItem(i18nc("@item:inlistbox Text width", "Medium"));
- m_textWidthBox->addItem(i18nc("@item:inlistbox Text width", "Large"));
- m_textWidthBox->addItem(i18nc("@item:inlistbox Text width", "Huge"));
-
- QGridLayout* textGroupLayout = new QGridLayout(textGroup);
- textGroupLayout->addWidget(fontLabel, 0, 0, Qt::AlignRight);
- textGroupLayout->addWidget(m_fontRequester, 0, 1);
- textGroupLayout->addWidget(textWidthLabel, 1, 0, Qt::AlignRight);
- textGroupLayout->addWidget(m_textWidthBox, 1, 1);
-
- // Add a dummy widget with no restriction regarding
- // a vertical resizing. This assures that the dialog layout
- // is not stretched vertically.
- new QWidget(this);
-
- loadSettings();
-
- connect(m_iconSizeGroupBox, SIGNAL(defaultSizeChanged(int)), this, SIGNAL(changed()));
- connect(m_iconSizeGroupBox, SIGNAL(previewSizeChanged(int)), this, SIGNAL(changed()));
- connect(m_fontRequester, SIGNAL(changed()), this, SIGNAL(changed()));
- connect(m_textWidthBox, SIGNAL(currentIndexChanged(int)), this, SIGNAL(changed()));
-}
-
-ColumnViewSettingsPage::~ColumnViewSettingsPage()
-{
-}
-
-void ColumnViewSettingsPage::applySettings()
-{
- ColumnModeSettings* settings = DolphinSettings::instance().columnModeSettings();
-
- const int iconSize = ZoomLevelInfo::iconSizeForZoomLevel(m_iconSizeGroupBox->defaultSizeValue());
- const int previewSize = ZoomLevelInfo::iconSizeForZoomLevel(m_iconSizeGroupBox->previewSizeValue());
- settings->setIconSize(iconSize);
- settings->setPreviewSize(previewSize);
-
- const QFont font = m_fontRequester->font();
- settings->setUseSystemFont(m_fontRequester->mode() == DolphinFontRequester::SystemFont);
- settings->setFontFamily(font.family());
- settings->setFontSize(font.pointSizeF());
- settings->setItalicFont(font.italic());
- settings->setFontWeight(font.weight());
-
- const int columnWidth = BaseTextWidth + (m_textWidthBox->currentIndex() * TextInc);
- settings->setColumnWidth(columnWidth);
-
- settings->writeConfig();
-}
-
-void ColumnViewSettingsPage::restoreDefaults()
-{
- ColumnModeSettings* settings = DolphinSettings::instance().columnModeSettings();
- settings->useDefaults(true);
- loadSettings();
- settings->useDefaults(false);
-}
-
-void ColumnViewSettingsPage::loadSettings()
-{
- ColumnModeSettings* settings = DolphinSettings::instance().columnModeSettings();
-
- const QSize iconSize(settings->iconSize(), settings->iconSize());
- const int iconSizeValue = ZoomLevelInfo::zoomLevelForIconSize(iconSize);
- m_iconSizeGroupBox->setDefaultSizeValue(iconSizeValue);
-
- const QSize previewSize(settings->previewSize(), settings->previewSize());
- const int previewSizeValue = ZoomLevelInfo::zoomLevelForIconSize(previewSize);
- m_iconSizeGroupBox->setPreviewSizeValue(previewSizeValue);
-
- if (settings->useSystemFont()) {
- m_fontRequester->setMode(DolphinFontRequester::SystemFont);
- } else {
- QFont font(settings->fontFamily(),
- qRound(settings->fontSize()));
- font.setItalic(settings->italicFont());
- font.setWeight(settings->fontWeight());
- font.setPointSizeF(settings->fontSize());
- m_fontRequester->setMode(DolphinFontRequester::CustomFont);
- m_fontRequester->setCustomFont(font);
- }
-
- m_textWidthBox->setCurrentIndex((settings->columnWidth() - BaseTextWidth) / TextInc);
-}
-
-#include "columnviewsettingspage.moc"
diff --git a/src/settings/viewmodes/columnviewsettingspage.h b/src/settings/viewmodes/columnviewsettingspage.h
deleted file mode 100644
index 2635e71f8..000000000
--- a/src/settings/viewmodes/columnviewsettingspage.h
+++ /dev/null
@@ -1,66 +0,0 @@
-/***************************************************************************
- * Copyright (C) 2006 by Peter Penz <[email protected]> *
- * *
- * This program is free software; you can redistribute it and/or modify *
- * it under the terms of the GNU General Public License as published by *
- * the Free Software Foundation; either version 2 of the License, or *
- * (at your option) any later version. *
- * *
- * This program is distributed in the hope that it will be useful, *
- * but WITHOUT ANY WARRANTY; without even the implied warranty of *
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
- * GNU General Public License for more details. *
- * *
- * You should have received a copy of the GNU General Public License *
- * along with this program; if not, write to the *
- * Free Software Foundation, Inc., *
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA *
- ***************************************************************************/
-
-#ifndef COLUMNVIEWSETTINGSPAGE_H
-#define COLUMNVIEWSETTINGSPAGE_H
-
-#include "viewsettingspagebase.h"
-
-class DolphinFontRequester;
-class IconSizeGroupBox;
-class KComboBox;
-
-/**
- * @brief Represents the page from the Dolphin Settings which allows
- * to modify the settings for the details view.
- */
-class ColumnViewSettingsPage : public ViewSettingsPageBase
-{
- Q_OBJECT
-
-public:
- ColumnViewSettingsPage(QWidget* parent);
- virtual ~ColumnViewSettingsPage();
-
- /**
- * Applies the settings for the details view.
- * The settings are persisted automatically when
- * closing Dolphin.
- */
- virtual void applySettings();
-
- /** Restores the settings to default values. */
- virtual void restoreDefaults();
-
-private:
- void loadSettings();
-
-private:
- enum
- {
- BaseTextWidth = 200,
- TextInc = 50
- };
-
- IconSizeGroupBox* m_iconSizeGroupBox;
- DolphinFontRequester* m_fontRequester;
- KComboBox* m_textWidthBox;
-};
-
-#endif
diff --git a/src/settings/viewmodes/detailsviewsettingspage.cpp b/src/settings/viewmodes/detailsviewsettingspage.cpp
index fbf26902f..b2338dc9b 100644
--- a/src/settings/viewmodes/detailsviewsettingspage.cpp
+++ b/src/settings/viewmodes/detailsviewsettingspage.cpp
@@ -26,8 +26,6 @@
#include <KDialog>
#include <KLocale>
-#include <settings/dolphinsettings.h>
-
#include <QButtonGroup>
#include <QCheckBox>
#include <QComboBox>
@@ -42,8 +40,7 @@
DetailsViewSettingsPage::DetailsViewSettingsPage(QWidget* parent) :
ViewSettingsPageBase(parent),
m_iconSizeGroupBox(0),
- m_fontRequester(0),
- m_expandableFolders(0)
+ m_fontRequester(0)
{
const int spacing = KDialog::spacingHint();
const int margin = KDialog::marginHint();
@@ -72,9 +69,6 @@ DetailsViewSettingsPage::DetailsViewSettingsPage(QWidget* parent) :
textLayout->addWidget(fontLabel, 0, Qt::AlignRight);
textLayout->addWidget(m_fontRequester);
- // create "Expandable Folders" checkbox
- m_expandableFolders = new QCheckBox(i18nc("@option:check", "Expandable folders"), this);
-
// Add a dummy widget with no restriction regarding
// a vertical resizing. This assures that the dialog layout
// is not stretched vertically.
@@ -85,7 +79,6 @@ DetailsViewSettingsPage::DetailsViewSettingsPage(QWidget* parent) :
connect(m_iconSizeGroupBox, SIGNAL(defaultSizeChanged(int)), this, SIGNAL(changed()));
connect(m_iconSizeGroupBox, SIGNAL(previewSizeChanged(int)), this, SIGNAL(changed()));
connect(m_fontRequester, SIGNAL(changed()), this, SIGNAL(changed()));
- connect(m_expandableFolders, SIGNAL(toggled(bool)), this, SIGNAL(changed()));
}
DetailsViewSettingsPage::~DetailsViewSettingsPage()
@@ -94,58 +87,49 @@ DetailsViewSettingsPage::~DetailsViewSettingsPage()
void DetailsViewSettingsPage::applySettings()
{
- DetailsModeSettings* settings = DolphinSettings::instance().detailsModeSettings();
-
const int iconSize = ZoomLevelInfo::iconSizeForZoomLevel(m_iconSizeGroupBox->defaultSizeValue());
const int previewSize = ZoomLevelInfo::iconSizeForZoomLevel(m_iconSizeGroupBox->previewSizeValue());
- settings->setIconSize(iconSize);
- settings->setPreviewSize(previewSize);
+ DetailsModeSettings::setIconSize(iconSize);
+ DetailsModeSettings::setPreviewSize(previewSize);
const QFont font = m_fontRequester->font();
- settings->setUseSystemFont(m_fontRequester->mode() == DolphinFontRequester::SystemFont);
- settings->setFontFamily(font.family());
- settings->setFontSize(font.pointSizeF());
- settings->setItalicFont(font.italic());
- settings->setFontWeight(font.weight());
+ DetailsModeSettings::setUseSystemFont(m_fontRequester->mode() == DolphinFontRequester::SystemFont);
+ DetailsModeSettings::setFontFamily(font.family());
+ DetailsModeSettings::setFontSize(font.pointSizeF());
+ DetailsModeSettings::setItalicFont(font.italic());
+ DetailsModeSettings::setFontWeight(font.weight());
- settings->setExpandableFolders(m_expandableFolders->isChecked());
-
- settings->writeConfig();
+ DetailsModeSettings::self()->writeConfig();
}
void DetailsViewSettingsPage::restoreDefaults()
{
- DetailsModeSettings* settings = DolphinSettings::instance().detailsModeSettings();
- settings->useDefaults(true);
+ DetailsModeSettings::self()->useDefaults(true);
loadSettings();
- settings->useDefaults(false);
+ DetailsModeSettings::self()->useDefaults(false);
}
void DetailsViewSettingsPage::loadSettings()
{
- DetailsModeSettings* settings = DolphinSettings::instance().detailsModeSettings();
-
- const QSize iconSize(settings->iconSize(), settings->iconSize());
+ const QSize iconSize(DetailsModeSettings::iconSize(), DetailsModeSettings::iconSize());
const int iconSizeValue = ZoomLevelInfo::zoomLevelForIconSize(iconSize);
m_iconSizeGroupBox->setDefaultSizeValue(iconSizeValue);
- const QSize previewSize(settings->previewSize(), settings->previewSize());
+ const QSize previewSize(DetailsModeSettings::previewSize(), DetailsModeSettings::previewSize());
const int previewSizeValue = ZoomLevelInfo::zoomLevelForIconSize(previewSize);
m_iconSizeGroupBox->setPreviewSizeValue(previewSizeValue);
- if (settings->useSystemFont()) {
+ if (DetailsModeSettings::useSystemFont()) {
m_fontRequester->setMode(DolphinFontRequester::SystemFont);
} else {
- QFont font(settings->fontFamily(),
- qRound(settings->fontSize()));
- font.setItalic(settings->italicFont());
- font.setWeight(settings->fontWeight());
- font.setPointSizeF(settings->fontSize());
+ QFont font(DetailsModeSettings::fontFamily(),
+ qRound(DetailsModeSettings::fontSize()));
+ font.setItalic(DetailsModeSettings::italicFont());
+ font.setWeight(DetailsModeSettings::fontWeight());
+ font.setPointSizeF(DetailsModeSettings::fontSize());
m_fontRequester->setMode(DolphinFontRequester::CustomFont);
m_fontRequester->setCustomFont(font);
}
-
- m_expandableFolders->setChecked(settings->expandableFolders());
}
#include "detailsviewsettingspage.moc"
diff --git a/src/settings/viewmodes/detailsviewsettingspage.h b/src/settings/viewmodes/detailsviewsettingspage.h
index 73d911a32..9532241aa 100644
--- a/src/settings/viewmodes/detailsviewsettingspage.h
+++ b/src/settings/viewmodes/detailsviewsettingspage.h
@@ -24,7 +24,6 @@
class DolphinFontRequester;
class IconSizeGroupBox;
-class QCheckBox;
/**
* @brief Represents the page from the Dolphin Settings which allows
@@ -54,7 +53,6 @@ private:
private:
IconSizeGroupBox* m_iconSizeGroupBox;
DolphinFontRequester* m_fontRequester;
- QCheckBox* m_expandableFolders;
};
#endif
diff --git a/src/settings/viewmodes/iconsviewsettingspage.cpp b/src/settings/viewmodes/iconsviewsettingspage.cpp
index 91ca738a1..41438fb22 100644
--- a/src/settings/viewmodes/iconsviewsettingspage.cpp
+++ b/src/settings/viewmodes/iconsviewsettingspage.cpp
@@ -20,7 +20,6 @@
#include "iconsviewsettingspage.h"
#include "dolphinfontrequester.h"
-#include "settings/dolphinsettings.h"
#include "iconsizegroupbox.h"
#include "dolphin_iconsmodesettings.h"
@@ -35,10 +34,8 @@
#include <QCheckBox>
#include <QGroupBox>
#include <QLabel>
-#include <QListView>
#include <QPushButton>
#include <QGridLayout>
-#include <QVBoxLayout>
#include <views/zoomlevelinfo.h>
@@ -46,10 +43,7 @@ IconsViewSettingsPage::IconsViewSettingsPage(QWidget* parent) :
ViewSettingsPageBase(parent),
m_iconSizeGroupBox(0),
m_textWidthBox(0),
- m_fontRequester(0),
- m_textlinesCountBox(0),
- m_arrangementBox(0),
- m_gridSpacingBox(0)
+ m_fontRequester(0)
{
const int spacing = KDialog::spacingHint();
const int margin = KDialog::marginHint();
@@ -67,7 +61,7 @@ IconsViewSettingsPage::IconsViewSettingsPage(QWidget* parent) :
m_iconSizeGroupBox->setDefaultSizeRange(min, max);
m_iconSizeGroupBox->setPreviewSizeRange(min, max);
- // create 'Text' group for selecting the font, the number of lines
+ // Create 'Text' group for selecting the font, the number of lines
// and the text width
QGroupBox* textGroup = new QGroupBox(i18nc("@title:group", "Text"), this);
textGroup->setSizePolicy(sizePolicy);
@@ -75,11 +69,6 @@ IconsViewSettingsPage::IconsViewSettingsPage(QWidget* parent) :
QLabel* fontLabel = new QLabel(i18nc("@label:listbox", "Font:"), textGroup);
m_fontRequester = new DolphinFontRequester(textGroup);
- QLabel* textlinesCountLabel = new QLabel(i18nc("@label:textbox", "Number of lines:"), textGroup);
- m_textlinesCountBox = new KIntSpinBox(textGroup);
- m_textlinesCountBox->setMinimum(1);
- m_textlinesCountBox->setMaximum(5);
-
QLabel* textWidthLabel = new QLabel(i18nc("@label:listbox", "Text width:"), textGroup);
m_textWidthBox = new KComboBox(textGroup);
m_textWidthBox->addItem(i18nc("@item:inlistbox Text width", "Small"));
@@ -90,33 +79,9 @@ IconsViewSettingsPage::IconsViewSettingsPage(QWidget* parent) :
QGridLayout* textGroupLayout = new QGridLayout(textGroup);
textGroupLayout->addWidget(fontLabel, 0, 0, Qt::AlignRight);
textGroupLayout->addWidget(m_fontRequester, 0, 1);
- textGroupLayout->addWidget(textlinesCountLabel, 1, 0, Qt::AlignRight);
- textGroupLayout->addWidget(m_textlinesCountBox, 1, 1);
textGroupLayout->addWidget(textWidthLabel, 2, 0, Qt::AlignRight);
textGroupLayout->addWidget(m_textWidthBox, 2, 1);
- // create the 'Grid' group for selecting the arrangement and the grid spacing
- QGroupBox* gridGroup = new QGroupBox(i18nc("@title:group", "Grid"), this);
- gridGroup->setSizePolicy(sizePolicy);
-
- QLabel* arrangementLabel = new QLabel(i18nc("@label:listbox", "Arrangement:"), gridGroup);
- m_arrangementBox = new KComboBox(gridGroup);
- m_arrangementBox->addItem(i18nc("@item:inlistbox Arrangement", "Columns"));
- m_arrangementBox->addItem(i18nc("@item:inlistbox Arrangement", "Rows"));
-
- QLabel* gridSpacingLabel = new QLabel(i18nc("@label:listbox", "Grid spacing:"), gridGroup);
- m_gridSpacingBox = new KComboBox(gridGroup);
- m_gridSpacingBox->addItem(i18nc("@item:inlistbox Grid spacing", "None"));
- m_gridSpacingBox->addItem(i18nc("@item:inlistbox Grid spacing", "Small"));
- m_gridSpacingBox->addItem(i18nc("@item:inlistbox Grid spacing", "Medium"));
- m_gridSpacingBox->addItem(i18nc("@item:inlistbox Grid spacing", "Large"));
-
- QGridLayout* gridGroupLayout = new QGridLayout(gridGroup);
- gridGroupLayout->addWidget(arrangementLabel, 0, 0, Qt::AlignRight);
- gridGroupLayout->addWidget(m_arrangementBox, 0, 1);
- gridGroupLayout->addWidget(gridSpacingLabel, 1, 0, Qt::AlignRight);
- gridGroupLayout->addWidget(m_gridSpacingBox, 1, 1);
-
// Add a dummy widget with no restriction regarding
// a vertical resizing. This assures that the dialog layout
// is not stretched vertically.
@@ -127,10 +92,7 @@ IconsViewSettingsPage::IconsViewSettingsPage(QWidget* parent) :
connect(m_iconSizeGroupBox, SIGNAL(defaultSizeChanged(int)), this, SIGNAL(changed()));
connect(m_iconSizeGroupBox, SIGNAL(previewSizeChanged(int)), this, SIGNAL(changed()));
connect(m_fontRequester, SIGNAL(changed()), this, SIGNAL(changed()));
- connect(m_textlinesCountBox, SIGNAL(valueChanged(int)), this, SIGNAL(changed()));
connect(m_textWidthBox, SIGNAL(currentIndexChanged(int)), this, SIGNAL(changed()));
- connect(m_arrangementBox, SIGNAL(currentIndexChanged(int)), this, SIGNAL(changed()));
- connect(m_gridSpacingBox, SIGNAL(currentIndexChanged(int)), this, SIGNAL(changed()));
}
IconsViewSettingsPage::~IconsViewSettingsPage()
@@ -139,108 +101,53 @@ IconsViewSettingsPage::~IconsViewSettingsPage()
void IconsViewSettingsPage::applySettings()
{
- IconsModeSettings* settings = DolphinSettings::instance().iconsModeSettings();
-
const int iconSize = ZoomLevelInfo::iconSizeForZoomLevel(m_iconSizeGroupBox->defaultSizeValue());
const int previewSize = ZoomLevelInfo::iconSizeForZoomLevel(m_iconSizeGroupBox->previewSizeValue());
- settings->setIconSize(iconSize);
- settings->setPreviewSize(previewSize);
+ IconsModeSettings::setIconSize(iconSize);
+ IconsModeSettings::setPreviewSize(previewSize);
const QFont font = m_fontRequester->font();
- const int fontHeight = QFontMetrics(font).height();
-
- const int arrangement = (m_arrangementBox->currentIndex() == 0) ?
- QListView::LeftToRight :
- QListView::TopToBottom;
- settings->setArrangement(arrangement);
-
- const int numberOfTextlines = m_textlinesCountBox->value();
-
- const int defaultSize = settings->iconSize();
- int itemWidth = defaultSize;
- int itemHeight = defaultSize;
- const int textSizeIndex = m_textWidthBox->currentIndex();
- if (arrangement == QListView::TopToBottom) {
- itemWidth += TopToBottomBase + textSizeIndex * TopToBottomInc;
- itemHeight += fontHeight * numberOfTextlines + 10;
- } else {
- itemWidth += LeftToRightBase + textSizeIndex * LeftToRightInc;
- }
+ IconsModeSettings::setUseSystemFont(m_fontRequester->mode() == DolphinFontRequester::SystemFont);
+ IconsModeSettings::setFontFamily(font.family());
+ IconsModeSettings::setFontSize(font.pointSizeF());
+ IconsModeSettings::setItalicFont(font.italic());
+ IconsModeSettings::setFontWeight(font.weight());
- settings->setItemWidth(itemWidth);
- settings->setItemHeight(itemHeight);
+ IconsModeSettings::setTextWidthIndex(m_textWidthBox->currentIndex());
- settings->setUseSystemFont(m_fontRequester->mode() == DolphinFontRequester::SystemFont);
- settings->setFontFamily(font.family());
- settings->setFontSize(font.pointSizeF());
- settings->setItalicFont(font.italic());
- settings->setFontWeight(font.weight());
-
- settings->setNumberOfTextlines(numberOfTextlines);
-
- const int index = m_gridSpacingBox->currentIndex();
- if (index == 0) {
- // No grid spacing
- settings->setGridSpacing(0);
- } else {
- settings->setGridSpacing(GridSpacingBase + (index - 1) * GridSpacingInc);
- }
-
- settings->writeConfig();
+ IconsModeSettings::self()->writeConfig();
}
void IconsViewSettingsPage::restoreDefaults()
{
- IconsModeSettings* settings = DolphinSettings::instance().iconsModeSettings();
- settings->useDefaults(true);
+ IconsModeSettings::self()->useDefaults(true);
loadSettings();
- settings->useDefaults(false);
+ IconsModeSettings::self()->useDefaults(false);
}
void IconsViewSettingsPage::loadSettings()
{
- IconsModeSettings* settings = DolphinSettings::instance().iconsModeSettings();
-
- const QSize iconSize(settings->iconSize(), settings->iconSize());
+ const QSize iconSize(IconsModeSettings::iconSize(), IconsModeSettings::iconSize());
const int iconSizeValue = ZoomLevelInfo::zoomLevelForIconSize(iconSize);
m_iconSizeGroupBox->setDefaultSizeValue(iconSizeValue);
- const QSize previewSize(settings->previewSize(), settings->previewSize());
+ const QSize previewSize(IconsModeSettings::previewSize(), IconsModeSettings::previewSize());
const int previewSizeValue = ZoomLevelInfo::zoomLevelForIconSize(previewSize);
m_iconSizeGroupBox->setPreviewSizeValue(previewSizeValue);
- if (settings->useSystemFont()) {
+ if (IconsModeSettings::useSystemFont()) {
m_fontRequester->setMode(DolphinFontRequester::SystemFont);
} else {
- QFont font(settings->fontFamily(),
- qRound(settings->fontSize()));
- font.setItalic(settings->italicFont());
- font.setWeight(settings->fontWeight());
- font.setPointSizeF(settings->fontSize());
+ QFont font(IconsModeSettings::fontFamily(),
+ qRound(IconsModeSettings::fontSize()));
+ font.setItalic(IconsModeSettings::italicFont());
+ font.setWeight(IconsModeSettings::fontWeight());
+ font.setPointSizeF(IconsModeSettings::fontSize());
m_fontRequester->setMode(DolphinFontRequester::CustomFont);
m_fontRequester->setCustomFont(font);
}
- m_textlinesCountBox->setValue(settings->numberOfTextlines());
-
- const bool leftToRightArrangement = (settings->arrangement() == QListView::LeftToRight);
- int textWidthIndex = 0;
- const int remainingWidth = settings->itemWidth() - settings->iconSize();
- if (leftToRightArrangement) {
- textWidthIndex = (remainingWidth - LeftToRightBase) / LeftToRightInc;
- } else {
- textWidthIndex = (remainingWidth - TopToBottomBase) / TopToBottomInc;
- }
- // ensure that chosen index is always valid
- textWidthIndex = qMax(textWidthIndex, 0);
- textWidthIndex = qMin(textWidthIndex, m_textWidthBox->count() - 1);
-
- m_textWidthBox->setCurrentIndex(textWidthIndex);
- m_arrangementBox->setCurrentIndex(leftToRightArrangement ? 0 : 1);
-
- const int spacing = settings->gridSpacing();
- const int index = (spacing <= 0) ? 0 : 1 + (spacing - GridSpacingBase) / GridSpacingInc;
- m_gridSpacingBox->setCurrentIndex(index);
+ m_textWidthBox->setCurrentIndex(IconsModeSettings::textWidthIndex());
}
#include "iconsviewsettingspage.moc"
diff --git a/src/settings/viewmodes/iconsviewsettingspage.h b/src/settings/viewmodes/iconsviewsettingspage.h
index 3b60cdf7f..ad829f131 100644
--- a/src/settings/viewmodes/iconsviewsettingspage.h
+++ b/src/settings/viewmodes/iconsviewsettingspage.h
@@ -20,7 +20,6 @@
#ifndef ICONSVIEWSETTINGSPAGE_H
#define ICONSVIEWSETTINGSPAGE_H
-#include <views/dolphiniconsview.h>
#include "viewsettingspagebase.h"
class DolphinFontRequester;
@@ -36,10 +35,7 @@ class KIntSpinBox;
* - icon size
* - preview size
* - text width
- * - grid spacing
* - font
- * - number of text lines
- * - arrangement
*
* @see DolphinIconsViewSettings
*/
@@ -65,23 +61,9 @@ private:
void loadSettings();
private:
- enum
- {
- GridSpacingBase = 8,
- GridSpacingInc = 12,
- LeftToRightBase = 128,
- LeftToRightInc = 64,
- TopToBottomBase = 32,
- TopToBottomInc = 32
- };
-
IconSizeGroupBox* m_iconSizeGroupBox;
KComboBox* m_textWidthBox;
DolphinFontRequester* m_fontRequester;
- KIntSpinBox* m_textlinesCountBox;
-
- KComboBox* m_arrangementBox;
- KComboBox* m_gridSpacingBox;
};
#endif
diff --git a/src/settings/viewmodes/viewsettingspage.cpp b/src/settings/viewmodes/viewsettingspage.cpp
index 4530d866d..ac4ed9296 100644
--- a/src/settings/viewmodes/viewsettingspage.cpp
+++ b/src/settings/viewmodes/viewsettingspage.cpp
@@ -20,7 +20,6 @@
#include "viewsettingspage.h"
-#include "columnviewsettingspage.h"
#include "iconsviewsettingspage.h"
#include "detailsviewsettingspage.h"
@@ -46,19 +45,15 @@ ViewSettingsPage::ViewSettingsPage(QWidget* parent) :
tabWidget->addTab(iconsPage, KIcon("view-list-icons"), i18nc("@title:tab", "Icons"));
connect(iconsPage, SIGNAL(changed()), this, SIGNAL(changed()));
+ // TODO: initialize 'Compact' tab
+
// initialize 'Details' tab
DetailsViewSettingsPage* detailsPage = new DetailsViewSettingsPage(tabWidget);
- tabWidget->addTab(detailsPage, KIcon("view-list-details"), i18nc("@title:tab", "Details"));
+ tabWidget->addTab(detailsPage, KIcon("view-list-text"), i18nc("@title:tab", "Details"));
connect(detailsPage, SIGNAL(changed()), this, SIGNAL(changed()));
- // initialize 'Column' tab
- ColumnViewSettingsPage* columnPage = new ColumnViewSettingsPage(tabWidget);
- tabWidget->addTab(columnPage, KIcon("view-file-columns"), i18nc("@title:tab", "Column"));
- connect(columnPage, SIGNAL(changed()), this, SIGNAL(changed()));
-
m_pages.append(iconsPage);
m_pages.append(detailsPage);
- m_pages.append(columnPage);
topLayout->addWidget(tabWidget, 0, 0);
}
diff --git a/src/settings/viewpropertiesdialog.cpp b/src/settings/viewpropertiesdialog.cpp
index 2a35f7eb8..5f57d6eb4 100644
--- a/src/settings/viewpropertiesdialog.cpp
+++ b/src/settings/viewpropertiesdialog.cpp
@@ -52,7 +52,6 @@
#include <QRadioButton>
#include <QBoxLayout>
-#include <views/dolphinsortfilterproxymodel.h>
#include <views/viewproperties.h>
ViewPropertiesDialog::ViewPropertiesDialog(DolphinView* dolphinView) :
@@ -64,7 +63,7 @@ ViewPropertiesDialog::ViewPropertiesDialog(DolphinView* dolphinView) :
m_sortOrder(0),
m_sorting(0),
m_sortFoldersFirst(0),
- m_showPreview(0),
+ m_previewsShown(0),
m_showInGroups(0),
m_showHiddenFiles(0),
m_additionalInfo(0),
@@ -97,8 +96,8 @@ ViewPropertiesDialog::ViewPropertiesDialog(DolphinView* dolphinView) :
QLabel* viewModeLabel = new QLabel(i18nc("@label:listbox", "View mode:"), propsGrid);
m_viewMode = new KComboBox(propsGrid);
m_viewMode->addItem(KIcon("view-list-icons"), i18nc("@item:inlistbox", "Icons"));
- m_viewMode->addItem(KIcon("view-list-details"), i18nc("@item:inlistbox", "Details"));
- m_viewMode->addItem(KIcon("view-file-columns"), i18nc("@item:inlistbox", "Column"));
+ m_viewMode->addItem(KIcon("feffi"), i18nc("@item:inlistbox", "Compact")); // TODO: adjust icons
+ m_viewMode->addItem(KIcon("view-list-text"), i18nc("@item:inlistbox", "Details"));
QLabel* sortingLabel = new QLabel(i18nc("@label:listbox", "Sorting:"), propsGrid);
QWidget* sortingBox = new QWidget(propsGrid);
@@ -125,7 +124,7 @@ ViewPropertiesDialog::ViewPropertiesDialog(DolphinView* dolphinView) :
// }
#endif
m_sortFoldersFirst = new QCheckBox(i18nc("@option:check", "Show folders first"));
- m_showPreview = new QCheckBox(i18nc("@option:check", "Show preview"));
+ m_previewsShown = new QCheckBox(i18nc("@option:check", "Show preview"));
m_showInGroups = new QCheckBox(i18nc("@option:check", "Show in groups"));
m_showHiddenFiles = new QCheckBox(i18nc("@option:check", "Show hidden files"));
@@ -146,7 +145,7 @@ ViewPropertiesDialog::ViewPropertiesDialog(DolphinView* dolphinView) :
QVBoxLayout* propsBoxLayout = new QVBoxLayout(propsBox);
propsBoxLayout->addWidget(propsGrid);
propsBoxLayout->addWidget(m_sortFoldersFirst);
- propsBoxLayout->addWidget(m_showPreview);
+ propsBoxLayout->addWidget(m_previewsShown);
propsBoxLayout->addWidget(m_showInGroups);
propsBoxLayout->addWidget(m_showHiddenFiles);
propsBoxLayout->addWidget(m_additionalInfo);
@@ -163,7 +162,7 @@ ViewPropertiesDialog::ViewPropertiesDialog(DolphinView* dolphinView) :
this, SLOT(configureAdditionalInfo()));
connect(m_sortFoldersFirst, SIGNAL(clicked()),
this, SLOT(slotSortFoldersFirstChanged()));
- connect(m_showPreview, SIGNAL(clicked()),
+ connect(m_previewsShown, SIGNAL(clicked()),
this, SLOT(slotShowPreviewChanged()));
connect(m_showInGroups, SIGNAL(clicked()),
this, SLOT(slotCategorizedSortingChanged()));
@@ -249,17 +248,15 @@ void ViewPropertiesDialog::slotViewModeChanged(int index)
{
m_viewProps->setViewMode(static_cast<DolphinView::Mode>(index));
markAsDirty(true);
-
- const DolphinView::Mode mode = m_viewProps->viewMode();
- m_showInGroups->setEnabled(mode == DolphinView::IconsView);
- m_additionalInfo->setEnabled(mode != DolphinView::ColumnView);
}
void ViewPropertiesDialog::slotSortingChanged(int index)
{
- const DolphinView::Sorting sorting = DolphinSortFilterProxyModel::sortingForColumn(index);
- m_viewProps->setSorting(sorting);
- markAsDirty(true);
+ Q_UNUSED(index);
+ Q_ASSERT(false);
+ //const DolphinView::Sorting sorting = DolphinSortFilterProxyModel::sortingForColumn(index);
+ //m_viewProps->setSorting(sorting);
+ //markAsDirty(true);
}
void ViewPropertiesDialog::slotSortOrderChanged(int index)
@@ -284,15 +281,15 @@ void ViewPropertiesDialog::slotSortFoldersFirstChanged()
void ViewPropertiesDialog::slotShowPreviewChanged()
{
- const bool show = m_showPreview->isChecked();
- m_viewProps->setShowPreview(show);
+ const bool show = m_previewsShown->isChecked();
+ m_viewProps->setPreviewsShown(show);
markAsDirty(true);
}
void ViewPropertiesDialog::slotShowHiddenFilesChanged()
{
const bool show = m_showHiddenFiles->isChecked();
- m_viewProps->setShowHiddenFiles(show);
+ m_viewProps->setHiddenFilesShown(show);
markAsDirty(true);
}
@@ -304,22 +301,22 @@ void ViewPropertiesDialog::markAsDirty(bool isDirty)
void ViewPropertiesDialog::configureAdditionalInfo()
{
- KFileItemDelegate::InformationList info = m_viewProps->additionalInfo();
+ QList<DolphinView::AdditionalInfo> infoList = m_viewProps->additionalInfoList();
const bool useDefaultInfo = (m_viewProps->viewMode() == DolphinView::DetailsView) &&
- (info.isEmpty() || info.contains(KFileItemDelegate::NoInformation));
+ (infoList.isEmpty() || infoList.contains(DolphinView::NoInfo));
if (useDefaultInfo) {
// Using the details view without any additional information (-> additional column)
// makes no sense and leads to a usability problem as no viewport area is available
// anymore. Hence as fallback provide at least a size and date column.
- info.clear();
- info.append(KFileItemDelegate::Size);
- info.append(KFileItemDelegate::ModificationTime);
- m_viewProps->setAdditionalInfo(info);
+ infoList.clear();
+ infoList.append(DolphinView::SizeInfo);
+ infoList.append(DolphinView::DateInfo);
+ m_viewProps->setAdditionalInfoList(infoList);
}
- QPointer<AdditionalInfoDialog> dialog = new AdditionalInfoDialog(this, info);
+ QPointer<AdditionalInfoDialog> dialog = new AdditionalInfoDialog(this, infoList);
if (dialog->exec() == QDialog::Accepted) {
- m_viewProps->setAdditionalInfo(dialog->informationList());
+ m_viewProps->setAdditionalInfoList(dialog->informationList());
markAsDirty(true);
}
delete dialog;
@@ -383,9 +380,9 @@ void ViewPropertiesDialog::applyViewProperties()
m_dolphinView->setSortOrder(m_viewProps->sortOrder());
m_dolphinView->setSortFoldersFirst(m_viewProps->sortFoldersFirst());
m_dolphinView->setCategorizedSorting(m_viewProps->categorizedSorting());
- m_dolphinView->setAdditionalInfo(m_viewProps->additionalInfo());
- m_dolphinView->setShowPreview(m_viewProps->showPreview());
- m_dolphinView->setShowHiddenFiles(m_viewProps->showHiddenFiles());
+ m_dolphinView->setAdditionalInfoList(m_viewProps->additionalInfoList());
+ m_dolphinView->setPreviewsShown(m_viewProps->previewsShown());
+ m_dolphinView->setHiddenFilesShown(m_viewProps->hiddenFilesShown());
m_viewProps->save();
@@ -409,12 +406,12 @@ void ViewPropertiesDialog::loadSettings()
m_sortFoldersFirst->setChecked(m_viewProps->sortFoldersFirst());
// load show preview, show in groups and show hidden files settings
- m_showPreview->setChecked(m_viewProps->showPreview());
+ m_previewsShown->setChecked(m_viewProps->previewsShown());
m_showInGroups->setChecked(m_viewProps->categorizedSorting());
m_showInGroups->setEnabled(index == DolphinView::IconsView); // only the icons view supports categorized sorting
- m_showHiddenFiles->setChecked(m_viewProps->showHiddenFiles());
+ m_showHiddenFiles->setChecked(m_viewProps->hiddenFilesShown());
markAsDirty(false);
}
diff --git a/src/settings/viewpropertiesdialog.h b/src/settings/viewpropertiesdialog.h
index d2170f331..694cffe88 100644
--- a/src/settings/viewpropertiesdialog.h
+++ b/src/settings/viewpropertiesdialog.h
@@ -73,7 +73,7 @@ private:
KComboBox* m_sortOrder;
KComboBox* m_sorting;
QCheckBox* m_sortFoldersFirst;
- QCheckBox* m_showPreview;
+ QCheckBox* m_previewsShown;
QCheckBox* m_showInGroups;
QCheckBox* m_showHiddenFiles;
QPushButton* m_additionalInfo;