diff options
Diffstat (limited to 'src/settings/interface')
| -rw-r--r-- | src/settings/interface/folderstabssettingspage.cpp | 18 | ||||
| -rw-r--r-- | src/settings/interface/folderstabssettingspage.h | 3 |
2 files changed, 21 insertions, 0 deletions
diff --git a/src/settings/interface/folderstabssettingspage.cpp b/src/settings/interface/folderstabssettingspage.cpp index 5f7cbe76a..547241d0d 100644 --- a/src/settings/interface/folderstabssettingspage.cpp +++ b/src/settings/interface/folderstabssettingspage.cpp @@ -38,6 +38,8 @@ FoldersTabsSettingsPage::FoldersTabsSettingsPage(QWidget *parent) , m_rememberOpenedTabsRadioButton(nullptr) , m_alwaysShowTabBar(nullptr) , m_showCloseButtonOnTabs(nullptr) + , m_tabStyleFullWidth(nullptr) + , m_tabStyleFixed(nullptr) , m_openNewTabAfterLastTab(nullptr) , m_openNewTabAfterCurrentTab(nullptr) , m_splitView(nullptr) @@ -124,6 +126,14 @@ FoldersTabsSettingsPage::FoldersTabsSettingsPage(QWidget *parent) m_showCloseButtonOnTabs = new QCheckBox(i18nc("@option:check", "Show close button on tabs")); topLayout->addRow(QString(), m_showCloseButtonOnTabs); + m_tabStyleFullWidth = new QRadioButton(i18nc("@option:radio width as in tab width", "Tabs span the available width")); + m_tabStyleFixed = new QRadioButton(i18nc("@option:radio size as in tab size", "Tabs have all the same fixed size")); + QButtonGroup *tabStyleGroup = new QButtonGroup(this); + tabStyleGroup->addButton(m_tabStyleFullWidth); + tabStyleGroup->addButton(m_tabStyleFixed); + topLayout->addRow(i18nc("@title:group", "Tab style: "), m_tabStyleFullWidth); + topLayout->addRow(QString(), m_tabStyleFixed); + m_openNewTabAfterCurrentTab = new QRadioButton(i18nc("option:radio", "After current tab")); m_openNewTabAfterLastTab = new QRadioButton(i18nc("option:radio", "At end of tab bar")); QButtonGroup *tabsBehaviorGroup = new QButtonGroup(this); @@ -177,6 +187,9 @@ FoldersTabsSettingsPage::FoldersTabsSettingsPage(QWidget *parent) connect(m_openNewTabAfterCurrentTab, &QRadioButton::toggled, this, &FoldersTabsSettingsPage::changed); connect(m_openNewTabAfterLastTab, &QRadioButton::toggled, this, &FoldersTabsSettingsPage::changed); + + connect(m_tabStyleFixed, &QRadioButton::toggled, this, &FoldersTabsSettingsPage::slotSettingsChanged); + connect(m_tabStyleFullWidth, &QRadioButton::toggled, this, &FoldersTabsSettingsPage::slotSettingsChanged); } FoldersTabsSettingsPage::~FoldersTabsSettingsPage() = default; @@ -222,6 +235,8 @@ void FoldersTabsSettingsPage::applySettings() settings->setOpenNewTabAfterLastTab(m_openNewTabAfterLastTab->isChecked()); + settings->setTabStyle(m_tabStyleFullWidth->isChecked() ? GeneralSettings::EnumTabStyle::FullWidth : GeneralSettings::EnumTabStyle::FixedSize); + settings->save(); } @@ -305,6 +320,9 @@ void FoldersTabsSettingsPage::loadSettings() m_openNewTabAfterLastTab->setChecked(GeneralSettings::openNewTabAfterLastTab()); m_openNewTabAfterCurrentTab->setChecked(!m_openNewTabAfterLastTab->isChecked()); + + m_tabStyleFixed->setChecked(GeneralSettings::tabStyle() == GeneralSettings::EnumTabStyle::FixedSize); + m_tabStyleFullWidth->setChecked(!m_tabStyleFixed->isChecked()); } void FoldersTabsSettingsPage::showSetDefaultDirectoryError() diff --git a/src/settings/interface/folderstabssettingspage.h b/src/settings/interface/folderstabssettingspage.h index 894d69898..54cdceda6 100644 --- a/src/settings/interface/folderstabssettingspage.h +++ b/src/settings/interface/folderstabssettingspage.h @@ -59,6 +59,9 @@ private: QCheckBox* m_alwaysShowTabBar; QCheckBox* m_showCloseButtonOnTabs; + QRadioButton *m_tabStyleFullWidth; + QRadioButton *m_tabStyleFixed; + QRadioButton *m_openNewTabAfterLastTab; QRadioButton *m_openNewTabAfterCurrentTab; |
