X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/ed35e27bb70d67cf5ce42d823179e904c03e8728..ec00f379dc42b00a64ab1af25bb4bb1a06bd7449:/src/detailsviewsettingspage.cpp diff --git a/src/detailsviewsettingspage.cpp b/src/detailsviewsettingspage.cpp index 9a9d55093..26a7d7367 100644 --- a/src/detailsviewsettingspage.cpp +++ b/src/detailsviewsettingspage.cpp @@ -26,14 +26,14 @@ #include #include -#include -#include -#include -#include -#include -#include -#include -#include +#include +#include +#include +#include +#include +#include +#include +#include DetailsViewSettingsPage::DetailsViewSettingsPage(DolphinMainWindow* mainWindow, QWidget* parent) : @@ -55,51 +55,30 @@ DetailsViewSettingsPage::DetailsViewSettingsPage(DolphinMainWindow* mainWindow, setSpacing(spacing); setMargin(margin); - DetailsModeSettings* settings = DolphinSettings::instance().detailsModeSettings(); - Q_ASSERT(settings != 0); - // create "Columns" properties - QGroupBox* columnsBox = new QGroupBox(i18n("Columns"), this); + QGroupBox* columnsBox = new QGroupBox(i18nc("@title:group", "Columns"), this); columnsBox->setSizePolicy(sizePolicy); - m_dateBox = new QCheckBox(i18n("Date"), this); - m_dateBox->setChecked(settings->showDate()); - - m_permissionsBox = new QCheckBox(i18n("Permissions"), this); - m_permissionsBox->setChecked(settings->showPermissions()); - - m_ownerBox = new QCheckBox(i18n("Owner"), this); - m_ownerBox->setChecked(settings->showOwner()); - - m_groupBox = new QCheckBox(i18n("Group"), this); - m_groupBox->setChecked(settings->showGroup()); + m_dateBox = new QCheckBox(i18nc("@option:check Columns", "Date"), this); + m_permissionsBox = new QCheckBox(i18nc("@option:check Columns", "Permissions"), this); + m_ownerBox = new QCheckBox(i18nc("@option:check Columns", "Owner"), this); + m_groupBox = new QCheckBox(i18nc("@option:check Columns", "Group"), this); + m_typeBox = new QCheckBox(i18nc("@option:check Columns", "Type"), this); QHBoxLayout* columnsLayout = new QHBoxLayout(columnsBox); columnsLayout->addWidget(m_dateBox); columnsLayout->addWidget(m_permissionsBox); columnsLayout->addWidget(m_ownerBox); columnsLayout->addWidget(m_groupBox); + columnsLayout->addWidget(m_typeBox); // Create "Icon" properties - QGroupBox* iconSizeBox = new QGroupBox(i18n("Icon Size"), this); + QGroupBox* iconSizeBox = new QGroupBox(i18nc("@title:group", "Icon Size"), this); iconSizeBox->setSizePolicy(sizePolicy); - m_smallIconSize = new QRadioButton(i18n("Small"), this); - m_mediumIconSize = new QRadioButton(i18n("Medium"), this); - m_largeIconSize = new QRadioButton(i18n("Large"), this); - switch (settings->iconSize()) { - case K3Icon::SizeLarge: - m_largeIconSize->setChecked(true); - break; - - case K3Icon::SizeMedium: - m_mediumIconSize->setChecked(true); - break; - - case K3Icon::SizeSmall: - default: - m_smallIconSize->setChecked(true); - } + m_smallIconSize = new QRadioButton(i18nc("@option:radio Icon Size", "Small"), this); + m_mediumIconSize = new QRadioButton(i18nc("@option:radio Icon Size", "Medium"), this); + m_largeIconSize = new QRadioButton(i18nc("@option:radio Icon Size", "Large"), this); QButtonGroup* iconSizeGroup = new QButtonGroup(this); iconSizeGroup->addButton(m_smallIconSize); @@ -112,16 +91,11 @@ DetailsViewSettingsPage::DetailsViewSettingsPage(DolphinMainWindow* mainWindow, iconSizeLayout->addWidget(m_largeIconSize); // create "Text" properties - QGroupBox* textBox = new QGroupBox(i18n("Text"), this); + QGroupBox* textBox = new QGroupBox(i18nc("@title:group", "Text"), this); textBox->setSizePolicy(sizePolicy); - QLabel* fontLabel = new QLabel(i18n("Font:"), textBox); + QLabel* fontLabel = new QLabel(i18nc("@label:listbox", "Font:"), textBox); m_fontRequester = new KFontRequester(textBox); - QFont font(settings->fontFamily(), - settings->fontSize()); - font.setItalic(settings->italicFont()); - font.setBold(settings->boldFont()); - m_fontRequester->setFont(font); QHBoxLayout* textLayout = new QHBoxLayout(textBox); textLayout->addWidget(fontLabel); @@ -131,6 +105,8 @@ DetailsViewSettingsPage::DetailsViewSettingsPage(DolphinMainWindow* mainWindow, // a vertical resizing. This assures that the dialog layout // is not stretched vertically. new QWidget(this); + + loadSettings(); } DetailsViewSettingsPage::~DetailsViewSettingsPage() @@ -140,18 +116,17 @@ DetailsViewSettingsPage::~DetailsViewSettingsPage() void DetailsViewSettingsPage::applySettings() { DetailsModeSettings* settings = DolphinSettings::instance().detailsModeSettings(); - Q_ASSERT(settings != 0); settings->setShowDate(m_dateBox->isChecked()); settings->setShowPermissions(m_permissionsBox->isChecked()); settings->setShowOwner(m_ownerBox->isChecked()); settings->setShowGroup(m_groupBox->isChecked()); + settings->setShowType(m_typeBox->isChecked()); int iconSize = K3Icon::SizeSmall; if (m_mediumIconSize->isChecked()) { iconSize = K3Icon::SizeMedium; - } - else if (m_largeIconSize->isChecked()) { + } else if (m_largeIconSize->isChecked()) { iconSize = K3Icon::SizeLarge; } settings->setIconSize(iconSize); @@ -163,4 +138,42 @@ void DetailsViewSettingsPage::applySettings() settings->setBoldFont(font.bold()); } +void DetailsViewSettingsPage::restoreDefaults() +{ + DetailsModeSettings* settings = DolphinSettings::instance().detailsModeSettings(); + settings->setDefaults(); + loadSettings(); +} + +void DetailsViewSettingsPage::loadSettings() +{ + DetailsModeSettings* settings = DolphinSettings::instance().detailsModeSettings(); + + m_dateBox->setChecked(settings->showDate()); + m_permissionsBox->setChecked(settings->showPermissions()); + m_ownerBox->setChecked(settings->showOwner()); + m_groupBox->setChecked(settings->showGroup()); + m_typeBox->setChecked(settings->showType()); + + switch (settings->iconSize()) { + case K3Icon::SizeLarge: + m_largeIconSize->setChecked(true); + break; + + case K3Icon::SizeMedium: + m_mediumIconSize->setChecked(true); + break; + + case K3Icon::SizeSmall: + default: + m_smallIconSize->setChecked(true); + } + + QFont font(settings->fontFamily(), + settings->fontSize()); + font.setItalic(settings->italicFont()); + font.setBold(settings->boldFont()); + m_fontRequester->setFont(font); +} + #include "detailsviewsettingspage.moc"