diff options
| author | Anthony Fieroni <[email protected]> | 2020-12-12 15:17:23 +0200 |
|---|---|---|
| committer | Elvis Angelaccio <[email protected]> | 2021-01-10 21:54:45 +0000 |
| commit | a73e81bf6af745623e7e92ba012522e34b2a312a (patch) | |
| tree | 15395b60a09801af77b531c772ea10cdecc10df7 /src/settings/navigation/navigationsettingspage.cpp | |
| parent | eb4b0fb48050ab047eecf01ccabc595a8b34d141 (diff) | |
Open new tab placement option
Signed-off-by: Anthony Fieroni <[email protected]>
Diffstat (limited to 'src/settings/navigation/navigationsettingspage.cpp')
| -rw-r--r-- | src/settings/navigation/navigationsettingspage.cpp | 37 |
1 files changed, 26 insertions, 11 deletions
diff --git a/src/settings/navigation/navigationsettingspage.cpp b/src/settings/navigation/navigationsettingspage.cpp index 41a39a537..11bc25f3b 100644 --- a/src/settings/navigation/navigationsettingspage.cpp +++ b/src/settings/navigation/navigationsettingspage.cpp @@ -6,36 +6,48 @@ #include "navigationsettingspage.h" +#include "global.h" #include "dolphin_generalsettings.h" #include <KLocalizedString> +#include <QButtonGroup> #include <QCheckBox> +#include <QFormLayout> +#include <QRadioButton> #include <QVBoxLayout> NavigationSettingsPage::NavigationSettingsPage(QWidget* parent) : SettingsPageBase(parent), m_openArchivesAsFolder(nullptr), - m_autoExpandFolders(nullptr) + m_autoExpandFolders(nullptr), + m_openNewTabAfterLastTab(nullptr), + m_openNewTabAfterCurrentTab(nullptr) { - QVBoxLayout* topLayout = new QVBoxLayout(this); - QWidget* vBox = new QWidget(this); - QVBoxLayout *vBoxLayout = new QVBoxLayout(vBox); - vBoxLayout->setContentsMargins(0, 0, 0, 0); - vBoxLayout->setAlignment(Qt::AlignTop); + QFormLayout* topLayout = new QFormLayout(this); - m_openArchivesAsFolder = new QCheckBox(i18nc("@option:check", "Open archives as folder"), vBox); - vBoxLayout->addWidget(m_openArchivesAsFolder); + // Tabs properties + 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); + tabsBehaviorGroup->addButton(m_openNewTabAfterCurrentTab); + tabsBehaviorGroup->addButton(m_openNewTabAfterLastTab); + topLayout->addRow(i18nc("@title:group", "Open new tabs: "), m_openNewTabAfterCurrentTab); + topLayout->addRow(QString(), m_openNewTabAfterLastTab); - m_autoExpandFolders = new QCheckBox(i18nc("option:check", "Open folders during drag operations"), vBox); - vBoxLayout->addWidget(m_autoExpandFolders); + topLayout->addItem(new QSpacerItem(0, Dolphin::VERTICAL_SPACER_HEIGHT, QSizePolicy::Fixed, QSizePolicy::Fixed)); - topLayout->addWidget(vBox); + m_openArchivesAsFolder = new QCheckBox(i18nc("@option:check", "Open archives as folder")); + m_autoExpandFolders = new QCheckBox(i18nc("option:check", "Open folders during drag operations")); + topLayout->addRow(i18nc("@title:group", "General: "), m_openArchivesAsFolder); + topLayout->addRow(QString(), m_autoExpandFolders); loadSettings(); connect(m_openArchivesAsFolder, &QCheckBox::toggled, this, &NavigationSettingsPage::changed); connect(m_autoExpandFolders, &QCheckBox::toggled, this, &NavigationSettingsPage::changed); + connect(m_openNewTabAfterCurrentTab, &QRadioButton::toggled, this, &NavigationSettingsPage::changed); + connect(m_openNewTabAfterLastTab, &QRadioButton::toggled, this, &NavigationSettingsPage::changed); } NavigationSettingsPage::~NavigationSettingsPage() @@ -47,6 +59,7 @@ void NavigationSettingsPage::applySettings() GeneralSettings* settings = GeneralSettings::self(); settings->setBrowseThroughArchives(m_openArchivesAsFolder->isChecked()); settings->setAutoExpandFolders(m_autoExpandFolders->isChecked()); + settings->setOpenNewTabAfterLastTab(m_openNewTabAfterLastTab->isChecked()); settings->save(); } @@ -63,5 +76,7 @@ void NavigationSettingsPage::loadSettings() { m_openArchivesAsFolder->setChecked(GeneralSettings::browseThroughArchives()); m_autoExpandFolders->setChecked(GeneralSettings::autoExpandFolders()); + m_openNewTabAfterLastTab->setChecked(GeneralSettings::openNewTabAfterLastTab()); + m_openNewTabAfterCurrentTab->setChecked(!m_openNewTabAfterLastTab->isChecked()); } |
