1
0
mirror of https://invent.kde.org/system/dolphin synced 2024-07-04 17:30:55 +00:00

Instead of having a the 3 view modes "icons", "details" and "previews" only 2 view modes are used now: "icons" and "details". Whether a preview is shown or not is part of the directory view properties. This also means that it will be possible to show previews in the "details" view in future releases.

svn path=/trunk/playground/utils/dolphin/; revision=613029
This commit is contained in:
Peter Penz 2006-12-13 07:41:11 +00:00
parent cb2b58535b
commit 163fa7ce30
26 changed files with 140 additions and 170 deletions

View File

@ -52,8 +52,7 @@ kde4_add_kcfg_files(dolphin_SRCS
directoryviewpropertysettings.kcfgc
generalsettings.kcfgc
iconsmodesettings.kcfgc
detailsmodesettings.kcfgc
previewsmodesettings.kcfgc )
detailsmodesettings.kcfgc )
kde4_add_executable(dolphin ${dolphin_SRCS})
@ -65,7 +64,7 @@ install(TARGETS dolphin DESTINATION ${BIN_INSTALL_DIR})
########### install files ###############
install( FILES dolphin.desktop DESTINATION ${XDG_APPS_DIR} )
install( FILES directoryviewpropertysettings.kcfg generalsettings.kcfg iconsmodesettings.kcfg detailsmodesettings.kcfg previewsmodesettings.kcfg DESTINATION ${KCFG_INSTALL_DIR} )
install( FILES directoryviewpropertysettings.kcfg generalsettings.kcfg iconsmodesettings.kcfg detailsmodesettings.kcfg DESTINATION ${KCFG_INSTALL_DIR} )
install( FILES dolphinui.rc DESTINATION ${DATA_INSTALL_DIR}/dolphin )
kde4_install_icons( ${ICON_INSTALL_DIR} )

View File

@ -34,11 +34,12 @@ ApplyViewPropsJob::ApplyViewPropsJob(const KUrl& dir,
{
m_viewProps = new ViewProperties(dir);
m_viewProps->setViewMode(viewProps.viewMode());
m_viewProps->setShowHiddenFilesEnabled(viewProps.isShowHiddenFilesEnabled());
m_viewProps->setShowPreview(viewProps.showPreview());
m_viewProps->setShowHiddenFiles(viewProps.showHiddenFiles());
m_viewProps->setSorting(viewProps.sorting());
m_viewProps->setSortOrder(viewProps.sortOrder());
startNextJob(dir, viewProps);
startNextJob(dir);
}
ApplyViewPropsJob::~ApplyViewPropsJob()
@ -52,8 +53,7 @@ void ApplyViewPropsJob::processNextItem()
emitResult();
}
void ApplyViewPropsJob::startNextJob(const KUrl& url,
const ViewProperties& viewProps)
void ApplyViewPropsJob::startNextJob(const KUrl& url)
{
KIO::ListJob* listJob = KIO::listRecursive(url, false);
connect(listJob, SIGNAL(entries(KIO::Job*, const KIO::UDSEntryList&)),
@ -76,7 +76,8 @@ void ApplyViewPropsJob::slotEntries(KIO::Job*, const KIO::UDSEntryList& list)
ViewProperties props(url);
props.setViewMode(m_viewProps->viewMode());
props.setShowHiddenFilesEnabled(m_viewProps->isShowHiddenFilesEnabled());
props.setShowPreview(m_viewProps->showPreview());
props.setShowHiddenFiles(m_viewProps->showHiddenFiles());
props.setSorting(m_viewProps->sorting());
props.setSortOrder(m_viewProps->sortOrder());
}

View File

@ -65,7 +65,7 @@ public:
int progress() const { return m_progress; }
private:
void startNextJob(const KUrl & url, const ViewProperties& viewProps);
void startNextJob(const KUrl & url);
private slots:
virtual void slotResult(KJob* job);

View File

@ -16,12 +16,18 @@
<group name="Dolphin">
<entry name="ViewMode" type="Int" >
<label>View Mode</label>
<whatsthis>This option controls the style of the view. Currently supported values include icons (0), details (1) and previews (2) views.</whatsthis>
<default>DolphinView::PreviewsView</default>
<whatsthis>This option controls the style of the view. Currently supported values include icons (0) and details (1) views.</whatsthis>
<default>DolphinView::IconsView</default>
<min>0</min>
<max code="true">DolphinView::MaxModeEnum</max>
</entry>
<entry name="ShowPreview" type="Bool" >
<label>Show preview</label>
<whatsthis>When this option is enabled, a preview of the file content is shown as icon.</whatsthis>
<default>false</default>
</entry>
<entry name="Sorting" type="Int" >
<label>Sort files by</label>
<whatsthis>This option defines which attribute (name, size, date, etc) sorting is performed on.</whatsthis>

View File

@ -220,7 +220,7 @@ void DolphinMainWindow::refreshViews()
m_splitter,
url,
props.viewMode(),
props.isShowHiddenFilesEnabled());
props.showHiddenFiles());
connectViewSignals(i);
m_view[i]->show();
}
@ -242,7 +242,7 @@ void DolphinMainWindow::slotShowHiddenFilesChanged()
{
KToggleAction* showHiddenFilesAction =
static_cast<KToggleAction*>(actionCollection()->action("show_hidden_files"));
showHiddenFilesAction->setChecked(m_activeView->isShowHiddenFilesEnabled());
showHiddenFilesAction->setChecked(m_activeView->showHiddenFiles());
}
void DolphinMainWindow::slotSortingChanged(DolphinView::Sorting sorting)
@ -786,11 +786,6 @@ void DolphinMainWindow::setDetailsView()
m_activeView->setMode(DolphinView::DetailsView);
}
void DolphinMainWindow::setPreviewsView()
{
m_activeView->setMode(DolphinView::PreviewsView);
}
void DolphinMainWindow::sortByName()
{
m_activeView->setSorting(DolphinView::SortByName);
@ -823,7 +818,7 @@ void DolphinMainWindow::toggleSplitView()
0,
m_view[PrimaryIdx]->url(),
m_view[PrimaryIdx]->mode(),
m_view[PrimaryIdx]->isShowHiddenFilesEnabled());
m_view[PrimaryIdx]->showHiddenFiles());
connectViewSignals(SecondaryIdx);
m_splitter->addWidget(m_view[SecondaryIdx]);
m_splitter->setSizes(QList<int>() << newWidth << newWidth);
@ -861,14 +856,18 @@ void DolphinMainWindow::stopLoading()
{
}
void DolphinMainWindow::showHiddenFiles()
void DolphinMainWindow::togglePreview()
{
}
void DolphinMainWindow::toggleShowHiddenFiles()
{
clearStatusBar();
const KToggleAction* showHiddenFilesAction =
static_cast<KToggleAction*>(actionCollection()->action("show_hidden_files"));
const bool show = showHiddenFilesAction->isChecked();
m_activeView->setShowHiddenFilesEnabled(show);
m_activeView->setShowHiddenFiles(show);
}
void DolphinMainWindow::showFilterBar()
@ -1123,7 +1122,7 @@ void DolphinMainWindow::init()
m_splitter,
homeUrl,
props.viewMode(),
props.isShowHiddenFilesEnabled());
props.showHiddenFiles());
connectViewSignals(PrimaryIdx);
m_view[PrimaryIdx]->show();
@ -1247,15 +1246,9 @@ void DolphinMainWindow::setupActions()
detailsView->setIcon(KIcon("view_text"));
connect(detailsView, SIGNAL(triggered()), this, SLOT(setDetailsView()));
KToggleAction* previewsView = new KToggleAction(i18n("Previews"), actionCollection(), "previews");
previewsView->setShortcut(Qt::CTRL | Qt::Key_3);
previewsView->setIcon(KIcon("gvdirpart"));
connect(previewsView, SIGNAL(triggered()), this, SLOT(setPreviewsView()));
QActionGroup* viewModeGroup = new QActionGroup(this);
viewModeGroup->addAction(iconsView);
viewModeGroup->addAction(detailsView);
viewModeGroup->addAction(previewsView);
KToggleAction* sortByName = new KToggleAction(i18n("By Name"), actionCollection(), "by_name");
connect(sortByName, SIGNAL(triggered()), this, SLOT(sortByName()));
@ -1274,9 +1267,13 @@ void DolphinMainWindow::setupActions()
KToggleAction* sortDescending = new KToggleAction(i18n("Descending"), actionCollection(), "descending");
connect(sortDescending, SIGNAL(triggered()), this, SLOT(toggleSortOrder()));
KToggleAction* showPreview = new KToggleAction(i18n("Preview"), actionCollection(), "show_preview");
showPreview->setIcon(KIcon("gvdirpart"));
connect(showPreview, SIGNAL(triggered()), this, SLOT(togglePreview()));
KToggleAction* showHiddenFiles = new KToggleAction(i18n("Show Hidden Files"), actionCollection(), "show_hidden_files");
//showHiddenFiles->setShortcut(Qt::ALT | Qt::Key_ KDE4-TODO: what Qt-Key represents '.'?
connect(showHiddenFiles, SIGNAL(triggered()), this, SLOT(showHiddenFiles()));
connect(showHiddenFiles, SIGNAL(triggered()), this, SLOT(toggleShowHiddenFiles()));
KToggleAction* split = new KToggleAction(i18n("Split View"), actionCollection(), "split_view");
split->setShortcut(Qt::Key_F10);
@ -1530,9 +1527,9 @@ void DolphinMainWindow::updateViewActions()
case DolphinView::DetailsView:
action = actionCollection()->action("details");
break;
case DolphinView::PreviewsView:
action = actionCollection()->action("previews");
break;
//case DolphinView::PreviewsView:
// action = actionCollection()->action("previews");
// break;
default:
break;
}
@ -1551,7 +1548,7 @@ void DolphinMainWindow::updateViewActions()
KToggleAction* showHiddenFilesAction =
static_cast<KToggleAction*>(actionCollection()->action("show_hidden_files"));
showHiddenFilesAction->setChecked(m_activeView->isShowHiddenFilesEnabled());
showHiddenFilesAction->setChecked(m_activeView->showHiddenFiles());
KToggleAction* splitAction = static_cast<KToggleAction*>(actionCollection()->action("split_view"));
splitAction->setChecked(m_view[SecondaryIdx] != 0);

View File

@ -234,9 +234,6 @@ private slots:
/** The current active view is switched to the details mode. */
void setDetailsView();
/** The current active view is switched to the previews mode. */
void setPreviewsView();
/** The sorting of the current view should be done by the name. */
void sortByName();
@ -262,11 +259,14 @@ private slots:
/** Stops the loading process for the current active view. */
void stopLoading();
/** Switches between showing a preview of the file content and showing the icon. */
void togglePreview();
/**
* Switches between showing and hiding of hidden marked files dependent
* from the current state of the 'Show Hidden Files' menu toggle action.
*/
void showHiddenFiles();
void toggleShowHiddenFiles();
/**
* Switches between showing and hiding of the filter bar dependent

View File

@ -32,7 +32,6 @@
#include "generalsettings.h"
#include "iconsmodesettings.h"
#include "previewsmodesettings.h"
#include "detailsmodesettings.h"
#include <Q3IconView>
@ -75,7 +74,6 @@ void DolphinSettings::save()
{
m_generalSettings->writeConfig();
m_iconsModeSettings->writeConfig();
m_previewsModeSettings->writeConfig();
m_detailsModeSettings->writeConfig();
QString basePath = KGlobal::instance()->instanceName();
@ -159,7 +157,6 @@ DolphinSettings::DolphinSettings()
{
m_generalSettings = new GeneralSettings();
m_iconsModeSettings = new IconsModeSettings();
m_previewsModeSettings = new PreviewsModeSettings();
m_detailsModeSettings = new DetailsModeSettings();
}
@ -171,9 +168,6 @@ DolphinSettings::~DolphinSettings()
delete m_iconsModeSettings;
m_iconsModeSettings = 0;
delete m_previewsModeSettings;
m_previewsModeSettings = 0;
delete m_detailsModeSettings;
m_detailsModeSettings = 0;
}

View File

@ -25,7 +25,6 @@ class KBookmark;
class KBookmarkManager;
class GeneralSettings;
class IconsModeSettings;
class PreviewsModeSettings;
class DetailsModeSettings;
/**
@ -45,7 +44,6 @@ public:
GeneralSettings* generalSettings() const { return m_generalSettings; }
IconsModeSettings* iconsModeSettings() const { return m_iconsModeSettings; }
PreviewsModeSettings* previewsModeSettings() const { return m_previewsModeSettings; }
DetailsModeSettings* detailsModeSettings() const { return m_detailsModeSettings; }
KBookmarkManager* bookmarkManager() const;
@ -93,7 +91,6 @@ protected:
private:
GeneralSettings* m_generalSettings;
IconsModeSettings* m_iconsModeSettings;
PreviewsModeSettings* m_previewsModeSettings;
DetailsModeSettings* m_detailsModeSettings;
};

View File

@ -25,7 +25,6 @@
<text>View Mode</text>
<Action name="icons" />
<Action name="details" />
<Action name="previews" />
</Menu>
<Menu name="sort" >
<text>Sort</text>
@ -35,6 +34,7 @@
<Separator/>
<Action name="descending" />
</Menu>
<Action name="show_preview" />
<Action name="show_hidden_files" />
<Separator/>
<Action name="split_view" />
@ -102,8 +102,8 @@
<Separator name="separator_1" />
<Action name="icons" />
<Action name="details" />
<Action name="previews" />
<Separator name="separator_0" />
<Action name="show_preview" />
<Action name="split_view" />
</ToolBar>
<ActionProperties>

View File

@ -176,14 +176,14 @@ DolphinView::Mode DolphinView::mode() const
return m_mode;
}
void DolphinView::setShowHiddenFilesEnabled(bool show)
void DolphinView::setShowHiddenFiles(bool show)
{
if (m_dirLister->showingDotFiles() == show) {
return;
}
ViewProperties props(m_urlNavigator->url());
props.setShowHiddenFilesEnabled(show);
props.setShowHiddenFiles(show);
props.save();
m_dirLister->setShowingDotFiles(show);
@ -193,7 +193,7 @@ void DolphinView::setShowHiddenFilesEnabled(bool show)
reload();
}
bool DolphinView::isShowHiddenFilesEnabled() const
bool DolphinView::showHiddenFiles() const
{
return m_dirLister->showingDotFiles();
}
@ -203,7 +203,7 @@ void DolphinView::setViewProperties(const ViewProperties& props)
setMode(props.viewMode());
setSorting(props.sorting());
setSortOrder(props.sortOrder());
setShowHiddenFilesEnabled(props.isShowHiddenFilesEnabled());
setShowHiddenFiles(props.showHiddenFiles());
}
void DolphinView::renameSelectedItems()
@ -635,8 +635,8 @@ void DolphinView::loadDirectory(const KUrl& url)
const ViewProperties props(url);
setMode(props.viewMode());
const bool showHiddenFiles = props.isShowHiddenFilesEnabled();
setShowHiddenFilesEnabled(showHiddenFiles);
const bool showHiddenFiles = props.showHiddenFiles();
setShowHiddenFiles(showHiddenFiles);
m_dirLister->setShowingDotFiles(showHiddenFiles);
setSorting(props.sorting());
@ -1047,10 +1047,10 @@ void DolphinView::applyModeToView()
m_iconsView->setGridSize(QSize(256, 24));
break;
case PreviewsView:
m_iconsView->setViewMode(QListView::IconMode);
m_iconsView->setGridSize(QSize(128, 128));
break;
//case PreviewsView:
// m_iconsView->setViewMode(QListView::IconMode);
// m_iconsView->setGridSize(QSize(128, 128));
// break;
}
}

View File

@ -97,13 +97,7 @@ public:
* for date, group and permissions.
*/
DetailsView = 1,
/**
* The directory items are shown as preview if possible. As
* fallback the items are shown as icons.
*/
PreviewsView = 2,
MaxModeEnum = PreviewsView
MaxModeEnum = DetailsView
};
/** Defines the sort order for the items of a directory. */
@ -138,8 +132,8 @@ public:
void setMode(Mode mode);
Mode mode() const;
void setShowHiddenFilesEnabled(bool show);
bool isShowHiddenFilesEnabled() const;
void setShowHiddenFiles(bool show);
bool showHiddenFiles() const;
void setViewProperties(const ViewProperties& props);

View File

@ -96,12 +96,10 @@ GeneralSettingsPage::GeneralSettingsPage(DolphinMainWindow* mainWin,QWidget* par
m_iconsView = new QRadioButton(i18n("Icons"), buttonGroup);
m_detailsView = new QRadioButton(i18n("Details"), buttonGroup);
m_previewsView = new QRadioButton(i18n("Previews"), buttonGroup);
switch (settings->defaultViewMode()) {
case DolphinView::IconsView: m_iconsView->setChecked(true); break;
case DolphinView::DetailsView: m_detailsView->setChecked(true); break;
case DolphinView::PreviewsView: m_previewsView->setChecked(true); break;
}
// create 'Start with split view' checkbox
@ -135,13 +133,9 @@ void GeneralSettingsPage::applySettings()
settings->setHomeUrl(url.prettyUrl());
}
DolphinView::Mode viewMode = DolphinView::IconsView;
if (m_detailsView->isChecked()) {
viewMode = DolphinView::DetailsView;
}
else if (m_previewsView->isChecked()) {
viewMode = DolphinView::PreviewsView;
}
const DolphinView::Mode viewMode = m_detailsView->isChecked() ?
DolphinView::DetailsView :
DolphinView::IconsView;
settings->setDefaultViewMode(viewMode);
settings->setSplitView(m_startSplit->isChecked());

View File

@ -56,7 +56,6 @@ private:
QLineEdit* m_homeUrl;
QRadioButton* m_iconsView;
QRadioButton* m_detailsView;
QRadioButton* m_previewsView;
QCheckBox* m_startSplit;
QCheckBox* m_startEditable;
};

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE kcfg SYSTEM "http://www.kde.org/standards/kcfg/1.0/kcfg.dtd">
<kcfg>
<kcfg>
<kcfgfile name="dolphinrc"/>
<include>kiconloader.h</include>
<group name="IconsMode">
@ -35,6 +35,10 @@
<label>Number of textlines</label>
<default>2</default>
</entry>
<entry name="Preview" type="Bool">
<label>Show preview</label>
<default>true</default>
</entry>
<entry name="PreviewSize" type="Int">
<label>Preview size</label>
<default code="true">K3Icon::SizeMedium</default>

View File

@ -39,10 +39,8 @@
#define GRID_SPACING_BASE 8
#define GRID_SPACING_INC 12
IconsViewSettingsPage::IconsViewSettingsPage(/*DolphinIconsView::LayoutMode mode,*/
QWidget* parent) :
IconsViewSettingsPage::IconsViewSettingsPage(QWidget* parent) :
KVBox(parent),
//m_mode(mode),
m_iconSizeSlider(0),
m_previewSizeSlider(0),
m_textWidthBox(0),
@ -89,29 +87,27 @@ IconsViewSettingsPage::IconsViewSettingsPage(/*DolphinIconsView::LayoutMode mode
m_iconSizeViewer->setEraseColor(iconBackgroundColor);
slotIconSizeChanged(m_iconSizeSlider->value());
if (false /*m_mode == DolphinIconsView::Previews*/) {
// create 'Preview Size' group including slider and preview
Q3GroupBox* previewSizeGroup = new Q3GroupBox(2, Qt::Vertical, i18n("Preview Size"), sizesLayout);
previewSizeGroup->setSizePolicy(sizePolicy);
previewSizeGroup->setMargin(margin);
// create 'Preview Size' group including slider and preview
Q3GroupBox* previewSizeGroup = new Q3GroupBox(2, Qt::Vertical, i18n("Preview Size"), sizesLayout);
previewSizeGroup->setSizePolicy(sizePolicy);
previewSizeGroup->setMargin(margin);
KHBox* previewSizeVBox = new KHBox(previewSizeGroup);
previewSizeVBox->setSpacing(spacing);
new QLabel(i18n("Small"), previewSizeVBox);
m_previewSizeSlider = new QSlider(0, 5, 1, 0, Qt::Horizontal, previewSizeVBox);
m_previewSizeSlider->setValue(sliderValue(settings->previewSize()));
m_previewSizeSlider->setTickmarks(QSlider::TicksBelow);
connect(m_previewSizeSlider, SIGNAL(valueChanged(int)),
this, SLOT(slotPreviewSizeChanged(int)));
new QLabel(i18n("Large"), previewSizeVBox);
KHBox* previewSizeVBox = new KHBox(previewSizeGroup);
previewSizeVBox->setSpacing(spacing);
new QLabel(i18n("Small"), previewSizeVBox);
m_previewSizeSlider = new QSlider(0, 5, 1, 0, Qt::Horizontal, previewSizeVBox);
m_previewSizeSlider->setValue(sliderValue(settings->previewSize()));
m_previewSizeSlider->setTickmarks(QSlider::TicksBelow);
connect(m_previewSizeSlider, SIGNAL(valueChanged(int)),
this, SLOT(slotPreviewSizeChanged(int)));
new QLabel(i18n("Large"), previewSizeVBox);
m_previewSizeViewer = new PixmapViewer(previewSizeGroup);
m_previewSizeViewer->setMinimumWidth(K3Icon::SizeEnormous);
m_previewSizeViewer->setFixedHeight(K3Icon::SizeEnormous);
m_previewSizeViewer->setEraseColor(iconBackgroundColor);
m_previewSizeViewer = new PixmapViewer(previewSizeGroup);
m_previewSizeViewer->setMinimumWidth(K3Icon::SizeEnormous);
m_previewSizeViewer->setFixedHeight(K3Icon::SizeEnormous);
m_previewSizeViewer->setEraseColor(iconBackgroundColor);
slotPreviewSizeChanged(m_previewSizeSlider->value());
}
slotPreviewSizeChanged(m_previewSizeSlider->value());
Q3GroupBox* textGroup = new Q3GroupBox(2, Qt::Horizontal, i18n("Text"), this);
textGroup->setSizePolicy(sizePolicy);

View File

@ -55,8 +55,7 @@ class IconsViewSettingsPage : public KVBox
Q_OBJECT
public:
IconsViewSettingsPage(/*DolphinIconsView::LayoutMode mode,*/
QWidget* parent);
IconsViewSettingsPage(QWidget* parent);
virtual ~IconsViewSettingsPage();
/**
@ -71,8 +70,6 @@ private slots:
void slotPreviewSizeChanged(int value);
private:
//DolphinIconsView::LayoutMode m_mode;
QSlider* m_iconSizeSlider;
PixmapViewer* m_iconSizeViewer;
QSlider* m_previewSizeSlider;

View File

@ -178,7 +178,13 @@ void InfoSidebarPage::showItemInfo()
KIO::PreviewJob* job = KIO::filePreview(list,
m_preview->width(),
K3Icon::SizeEnormous);
K3Icon::SizeEnormous,
0,
0,
true,
false);
job->setIgnoreMaximumSize(true);
connect(job, SIGNAL(gotPreview(const KFileItem*, const QPixmap&)),
this, SLOT(gotPreview(const KFileItem*, const QPixmap&)));
connect(job, SIGNAL(failed(const KFileItem*)),

View File

@ -1,41 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE kcfg SYSTEM "http://www.kde.org/standards/kcfg/1.0/kcfg.dtd">
<kcfg>
<kcfgfile name="dolphinrc"/>
<include>kiconloader.h</include>
<group name="PreviewsMode">
<entry name="Arrangement" type="String">
<label>Arrangement</label>
<default>LeftToRight</default>
</entry>
<entry name="FontFamily" type="String">
<label>Font family</label>
<default code="true">KGlobalSettings::generalFont().family()</default>
</entry>
<entry name="FontSize" type="Int">
<label>Font size</label>
<default code="true">KGlobalSettings::generalFont().pointSize()</default>
</entry>
<entry name="GridHeight" type="Int">
<label>Grid height</label>
</entry>
<entry name="GridWidth" type="Int">
<label>Grid width</label>
</entry>
<entry name="GridSpacing" type="Int">
<label>Grid spacing</label>
</entry>
<entry name="IconSize" type="Int">
<label>Icon size</label>
<default code="true">K3Icon::SizeMedium</default>
</entry>
<entry name="NumberOfTexlines" type="Int">
<label>Number of textlines</label>
<default>2</default>
</entry>
<entry name="PreviewSize" type="Int">
<label>Preview size</label>
<default code="true">K3Icon::SizeMedium</default>
</entry>
</group>
</kcfg>

View File

@ -1,4 +0,0 @@
File=previewsmodesettings.kcfg
ClassName=PreviewsModeSettings
Singleton=false
Mutators=true

View File

@ -97,7 +97,21 @@ DolphinView::Mode ViewProperties::viewMode() const
return static_cast<DolphinView::Mode>(m_node->viewMode());
}
void ViewProperties::setShowHiddenFilesEnabled(bool show)
void ViewProperties::setShowPreview(bool show)
{
if (m_node->showPreview() != show) {
m_node->setShowPreview(show);
updateTimeStamp();
}
}
bool ViewProperties::showPreview() const
{
return m_node->showPreview();
}
void ViewProperties::setShowHiddenFiles(bool show)
{
if (m_node->showHiddenFiles() != show) {
m_node->setShowHiddenFiles(show);
@ -105,7 +119,7 @@ void ViewProperties::setShowHiddenFilesEnabled(bool show)
}
}
bool ViewProperties::isShowHiddenFilesEnabled() const
bool ViewProperties::showHiddenFiles() const
{
return m_node->showHiddenFiles();
}

View File

@ -54,8 +54,11 @@ public:
void setViewMode(DolphinView::Mode mode);
DolphinView::Mode viewMode() const;
void setShowHiddenFilesEnabled(bool show);
bool isShowHiddenFilesEnabled() const;
void setShowPreview(bool show);
bool showPreview() const;
void setShowHiddenFiles(bool show);
bool showHiddenFiles() const;
void setSorting(DolphinView::Sorting sorting);
DolphinView::Sorting sorting() const;

View File

@ -40,7 +40,14 @@
ViewPropertiesDialog::ViewPropertiesDialog(DolphinView* dolphinView) :
KDialog(dolphinView),
m_isDirty(false),
m_dolphinView(dolphinView)
m_dolphinView(dolphinView),
m_viewProps(0),
m_viewMode(0),
m_sorting(0),
m_sortOrder(0),
m_showPreview(0),
m_showHiddenFiles(0),
m_applyToSubFolders(0)
{
assert(dolphinView != 0);
@ -61,7 +68,6 @@ ViewPropertiesDialog::ViewPropertiesDialog(DolphinView* dolphinView) :
m_viewMode = new QComboBox(propsBox);
m_viewMode->addItem(SmallIcon("view_icon"), i18n("Icons"));
m_viewMode->addItem(SmallIcon("view_text"), i18n("Details"));
m_viewMode->addItem(SmallIcon("gvdirpart"), i18n("Previews"));
const int index = static_cast<int>(m_viewProps->viewMode());
m_viewMode->setCurrentIndex(index);
@ -86,8 +92,11 @@ ViewPropertiesDialog::ViewPropertiesDialog(DolphinView* dolphinView) :
const int sortOrderIdx = (m_viewProps->sortOrder() == Qt::Ascending) ? 0 : 1;
m_sortOrder->setCurrentIndex(sortOrderIdx);
m_showPreview = new QCheckBox(i18n("Show preview"), propsBox);
m_showPreview->setChecked(m_viewProps->showPreview());
m_showHiddenFiles = new QCheckBox(i18n("Show hidden files"), propsBox);
m_showHiddenFiles->setChecked(m_viewProps->isShowHiddenFilesEnabled());
m_showHiddenFiles->setChecked(m_viewProps->showHiddenFiles());
QGridLayout* propsBoxLayout = new QGridLayout(propsBox);
propsBoxLayout->addWidget(viewModeLabel, 0, 0);
@ -97,7 +106,8 @@ ViewPropertiesDialog::ViewPropertiesDialog(DolphinView* dolphinView) :
propsBoxLayout->addWidget(m_sorting, 1, 1);
propsBoxLayout->addWidget(sortOrderLabel, 2, 0);
propsBoxLayout->addWidget(m_sortOrder, 2, 1);
propsBoxLayout->addWidget(m_showHiddenFiles, 3, 0);
propsBoxLayout->addWidget(m_showPreview, 3, 0);
propsBoxLayout->addWidget(m_showHiddenFiles, 4, 0);
m_applyToSubFolders = new QCheckBox(i18n("Apply changes to all sub folders"), main);
topLayout->addWidget(propsBox);
@ -109,6 +119,8 @@ ViewPropertiesDialog::ViewPropertiesDialog(DolphinView* dolphinView) :
this, SLOT(slotSortingChanged(int)));
connect(m_sortOrder, SIGNAL(activated(int)),
this, SLOT(slotSortOrderChanged(int)));
connect(m_showPreview, SIGNAL(clicked()),
this, SLOT(slotShowPreviewChanged()));
connect(m_showHiddenFiles, SIGNAL(clicked()),
this, SLOT(slotShowHiddenFilesChanged()));
@ -166,10 +178,17 @@ void ViewPropertiesDialog::slotSortOrderChanged(int index)
m_isDirty = true;
}
void ViewPropertiesDialog::slotShowPreviewChanged()
{
const bool show = m_showPreview->isChecked();
m_viewProps->setShowPreview(show);
m_isDirty = true;
}
void ViewPropertiesDialog::slotShowHiddenFilesChanged()
{
const bool show = m_showHiddenFiles->isChecked();
m_viewProps->setShowHiddenFilesEnabled(show);
m_viewProps->setShowHiddenFiles(show);
m_isDirty = true;
}

View File

@ -49,6 +49,7 @@ private slots:
void slotViewModeChanged(int index);
void slotSortingChanged(int index);
void slotSortOrderChanged(int index);
void slotShowPreviewChanged();
void slotShowHiddenFilesChanged();
void markAsDirty();
@ -60,6 +61,7 @@ private:
QComboBox* m_viewMode;
QComboBox* m_sorting;
QComboBox* m_sortOrder;
QCheckBox* m_showPreview;
QCheckBox* m_showHiddenFiles;
QCheckBox* m_applyToSubFolders;

View File

@ -49,7 +49,7 @@ ViewPropsProgressInfo::ViewPropsProgressInfo(QWidget* parent,
m_viewProps = new ViewProperties(dir);
m_viewProps->setViewMode(viewProps.viewMode());
m_viewProps->setShowHiddenFilesEnabled(viewProps.isShowHiddenFilesEnabled());
m_viewProps->setShowHiddenFiles(viewProps.showHiddenFiles());
m_viewProps->setSorting(viewProps.sorting());
m_viewProps->setSortOrder(viewProps.sortOrder());

View File

@ -33,25 +33,20 @@
ViewSettingsPage::ViewSettingsPage(QWidget *parent) :
SettingsPageBase(parent),
m_iconsPage(0),
m_detailsPage(0),
m_previewsPage(0)
m_detailsPage(0)
{
Q3VBoxLayout* topLayout = new Q3VBoxLayout(this, 0, KDialog::spacingHint());
QTabWidget* tabWidget = new QTabWidget(this);
// initialize 'Icons' tab
m_iconsPage = new IconsViewSettingsPage(/*DolphinIconsView::Icons,*/ tabWidget);
m_iconsPage = new IconsViewSettingsPage(tabWidget);
tabWidget->addTab(m_iconsPage, SmallIcon("view_icon"), i18n("Icons"));
// initialize 'Details' tab
m_detailsPage = new DetailsViewSettingsPage(tabWidget);
tabWidget->addTab(m_detailsPage, SmallIcon("view_text"), i18n("Details"));
// initialize 'Previews' tab
m_previewsPage = new IconsViewSettingsPage(/*DolphinIconsView::Previews,*/ tabWidget);
tabWidget->addTab(m_previewsPage, SmallIcon("gvdirpart"), i18n("Previews"));
topLayout->addWidget(tabWidget, 0, 0 );
}
@ -63,7 +58,6 @@ void ViewSettingsPage::applySettings()
{
m_iconsPage->applySettings();
m_detailsPage->applySettings();
m_previewsPage->applySettings();
}
#include "viewsettingspage.moc"

View File

@ -49,7 +49,6 @@ public:
private:
IconsViewSettingsPage* m_iconsPage;
DetailsViewSettingsPage* m_detailsPage;
IconsViewSettingsPage* m_previewsPage;
};
#endif