From: Peter Penz Date: Sat, 17 Feb 2007 20:04:06 +0000 (+0000) Subject: Improve usability of the viewproperties dialog: use 2 radiobuttons instead of one... X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/commitdiff_plain/13f0a26ccd4c2ac8429a7701b9cbc49f2c855f2d?ds=sidebyside Improve usability of the viewproperties dialog: use 2 radiobuttons instead of one checkbox to make clear where the view properties are applied. Separate the apply-to-group visually from the 'Use as default for new folders' checkbox. svn path=/trunk/KDE/kdebase/apps/; revision=634606 --- diff --git a/src/viewpropertiesdialog.cpp b/src/viewpropertiesdialog.cpp index 48e565a09..8cedb73cb 100644 --- a/src/viewpropertiesdialog.cpp +++ b/src/viewpropertiesdialog.cpp @@ -26,11 +26,13 @@ #include "generalsettings.h" #include "viewproperties.h" +#include + #include #include #include -#include +#include #include #include #include @@ -49,6 +51,7 @@ ViewPropertiesDialog::ViewPropertiesDialog(DolphinView* dolphinView) : m_sortOrder(0), m_showPreview(0), m_showHiddenFiles(0), + m_applyToCurrentFolder(0), m_applyToSubFolders(0), m_useAsDefault(0) { @@ -127,11 +130,28 @@ ViewPropertiesDialog::ViewPropertiesDialog(DolphinView* dolphinView) : // Only show the following settings if the view properties are remembered // for each directory: if (!DolphinSettings::instance().generalSettings()->globalViewProps()) { - m_applyToSubFolders = new QCheckBox(i18n("Apply changes to all sub folders"), main); - m_useAsDefault = new QCheckBox(i18n("Use as default"), main); - topLayout->addWidget(m_applyToSubFolders); + // create 'Apply view properties to:' group + QGroupBox* applyBox = new QGroupBox(i18n("Apply view properties to:"), main); + + m_applyToCurrentFolder = new QRadioButton(i18n("Current folder"), applyBox); + m_applyToCurrentFolder->setChecked(true); + m_applyToSubFolders = new QRadioButton(i18n("Current folder including all sub folders"), applyBox); + + QButtonGroup* applyGroup = new QButtonGroup(this); + applyGroup->addButton(m_applyToCurrentFolder); + applyGroup->addButton(m_applyToSubFolders); + + QVBoxLayout* applyBoxLayout = new QVBoxLayout(applyBox); + applyBoxLayout->addWidget(m_applyToCurrentFolder); + applyBoxLayout->addWidget(m_applyToSubFolders); + + m_useAsDefault = new QCheckBox(i18n("Use as default for new folders"), main); + + topLayout->addWidget(applyBox); topLayout->addWidget(m_useAsDefault); + connect(m_applyToCurrentFolder, SIGNAL(clicked()), + this, SLOT(markAsDirty())); connect(m_applyToSubFolders, SIGNAL(clicked()), this, SLOT(markAsDirty())); connect(m_useAsDefault, SIGNAL(clicked()), diff --git a/src/viewpropertiesdialog.h b/src/viewpropertiesdialog.h index bb8fac9ef..827371935 100644 --- a/src/viewpropertiesdialog.h +++ b/src/viewpropertiesdialog.h @@ -17,6 +17,7 @@ * Free Software Foundation, Inc., * * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA * ***************************************************************************/ + #ifndef VIEWPROPERTIESDIALOG_H #define VIEWPROPERTIESDIALOG_H @@ -31,9 +32,9 @@ class DolphinView; /** * @brief Dialog for changing the current view properties of a directory. * - * It is possible to specify the view mode and whether hidden files - * should be shown. The properties can be assigned to the current folder, - * recursively to all sub folders or to all folders. + * It is possible to specify the view mode, the sorting order, whether hidden files + * and previews should be shown. The properties can be assigned to the current folder, + * or recursively to all sub folders. */ class ViewPropertiesDialog : public KDialog { @@ -63,7 +64,8 @@ private: QComboBox* m_sortOrder; QCheckBox* m_showPreview; QCheckBox* m_showHiddenFiles; - QCheckBox* m_applyToSubFolders; + QRadioButton* m_applyToCurrentFolder; + QRadioButton* m_applyToSubFolders; QCheckBox* m_useAsDefault; void applyViewProperties();