X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/3fa4d31152a36dee3dadee9eaaac12c39f2d3ac8..a20edc49bd7c53ed1931a7c5145524e372ca6ed3:/src/settings/viewpropertiesdialog.cpp diff --git a/src/settings/viewpropertiesdialog.cpp b/src/settings/viewpropertiesdialog.cpp index f407f7c90..39d9cc786 100644 --- a/src/settings/viewpropertiesdialog.cpp +++ b/src/settings/viewpropertiesdialog.cpp @@ -62,6 +62,7 @@ ViewPropertiesDialog::ViewPropertiesDialog(DolphinView* dolphinView) : m_viewMode(0), m_sortOrder(0), m_sorting(0), + m_sortFoldersFirst(0), m_showPreview(0), m_showInGroups(0), m_showHiddenFiles(0), @@ -122,6 +123,7 @@ ViewPropertiesDialog::ViewPropertiesDialog(DolphinView* dolphinView) : // m_sorting->addItem(i18nc("@item:inlistbox Sort", "By Tags")); // } #endif + m_sortFoldersFirst = new QCheckBox(i18nc("@option:check", "Show folders first")); m_showPreview = 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")); @@ -142,6 +144,7 @@ ViewPropertiesDialog::ViewPropertiesDialog(DolphinView* dolphinView) : QVBoxLayout* propsBoxLayout = new QVBoxLayout(propsBox); propsBoxLayout->addWidget(propsGrid); + propsBoxLayout->addWidget(m_sortFoldersFirst); propsBoxLayout->addWidget(m_showPreview); propsBoxLayout->addWidget(m_showInGroups); propsBoxLayout->addWidget(m_showHiddenFiles); @@ -157,6 +160,8 @@ ViewPropertiesDialog::ViewPropertiesDialog(DolphinView* dolphinView) : this, SLOT(slotSortOrderChanged(int))); connect(m_additionalInfo, SIGNAL(clicked()), this, SLOT(configureAdditionalInfo())); + connect(m_sortFoldersFirst, SIGNAL(clicked()), + this, SLOT(slotSortFoldersFirstChanged())); connect(m_showPreview, SIGNAL(clicked()), this, SLOT(slotShowPreviewChanged())); connect(m_showInGroups, SIGNAL(clicked()), @@ -177,7 +182,7 @@ ViewPropertiesDialog::ViewPropertiesDialog(DolphinView* dolphinView) : "Current folder"), applyBox); m_applyToCurrentFolder->setChecked(true); m_applyToSubFolders = new QRadioButton(i18nc("@option:radio Apply View Properties To", - "Current folder including all sub folders"), applyBox); + "Current folder including all sub-folders"), applyBox); m_applyToAllFolders = new QRadioButton(i18nc("@option:radio Apply View Properties To", "All folders"), applyBox); @@ -191,7 +196,7 @@ ViewPropertiesDialog::ViewPropertiesDialog(DolphinView* dolphinView) : applyBoxLayout->addWidget(m_applyToSubFolders); applyBoxLayout->addWidget(m_applyToAllFolders); - m_useAsDefault = new QCheckBox(i18nc("@option:check", "Use as default for new folders"), main); + m_useAsDefault = new QCheckBox(i18nc("@option:check", "Use these view properties as default"), main); topLayout->addWidget(applyBox); topLayout->addWidget(m_useAsDefault); @@ -269,6 +274,13 @@ void ViewPropertiesDialog::slotCategorizedSortingChanged() markAsDirty(true); } +void ViewPropertiesDialog::slotSortFoldersFirstChanged() +{ + const bool foldersFirst = m_sortFoldersFirst->isChecked(); + m_viewProps->setSortFoldersFirst(foldersFirst); + markAsDirty(true); +} + void ViewPropertiesDialog::slotShowPreviewChanged() { const bool show = m_showPreview->isChecked(); @@ -304,11 +316,12 @@ void ViewPropertiesDialog::configureAdditionalInfo() m_viewProps->setAdditionalInfo(info); } - AdditionalInfoDialog dialog(this, info); - if (dialog.exec() == QDialog::Accepted) { - m_viewProps->setAdditionalInfo(dialog.additionalInfo()); + QPointer dialog = new AdditionalInfoDialog(this, info); + if (dialog->exec() == QDialog::Accepted) { + m_viewProps->setAdditionalInfo(dialog->additionalInfo()); markAsDirty(true); } + delete dialog; } void ViewPropertiesDialog::applyViewProperties() @@ -321,7 +334,7 @@ void ViewPropertiesDialog::applyViewProperties() const bool applyToSubFolders = (m_applyToSubFolders != 0) && m_applyToSubFolders->isChecked(); if (applyToSubFolders) { - const QString text(i18nc("@info", "The view properties of all sub folders will be changed. Do you want to continue?")); + const QString text(i18nc("@info", "The view properties of all sub-folders will be changed. Do you want to continue?")); if (KMessageBox::questionYesNo(this, text) == KMessageBox::No) { return; } @@ -370,6 +383,7 @@ void ViewPropertiesDialog::applyViewProperties() m_dolphinView->setMode(m_viewProps->viewMode()); m_dolphinView->setSorting(m_viewProps->sorting()); 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()); @@ -395,6 +409,7 @@ void ViewPropertiesDialog::loadSettings() (index == DolphinView::IconsView); m_additionalInfo->setEnabled(enabled); + m_sortFoldersFirst->setChecked(m_viewProps->sortFoldersFirst()); // load show preview, show in groups and show hidden files settings m_showPreview->setChecked(m_viewProps->showPreview());