X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/9aee5d22513f0367febab54b38b3a7dc58d120bb..e9bd295b:/src/settings/navigation/navigationsettingspage.cpp diff --git a/src/settings/navigation/navigationsettingspage.cpp b/src/settings/navigation/navigationsettingspage.cpp index f9c7a4dfc..11bc25f3b 100644 --- a/src/settings/navigation/navigationsettingspage.cpp +++ b/src/settings/navigation/navigationsettingspage.cpp @@ -1,59 +1,53 @@ -/*************************************************************************** - * Copyright (C) 2009 by Peter Penz * - * * - * This program is free software; you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation; either version 2 of the License, or * - * (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program; if not, write to the * - * Free Software Foundation, Inc., * - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA * - ***************************************************************************/ +/* + * SPDX-FileCopyrightText: 2009 Peter Penz + * + * SPDX-License-Identifier: GPL-2.0-or-later + */ #include "navigationsettingspage.h" +#include "global.h" #include "dolphin_generalsettings.h" #include +#include #include +#include +#include #include NavigationSettingsPage::NavigationSettingsPage(QWidget* parent) : SettingsPageBase(parent), - m_openArchivesAsFolder(0), - m_autoExpandFolders(0) + m_openArchivesAsFolder(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->setMargin(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)); - // Add a dummy widget with no restriction regarding - // a vertical resizing. This assures that the dialog layout - // is not stretched vertically. - new QWidget(vBox); - - 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() @@ -65,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(); } @@ -81,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()); }