Files
konsole/src/settings/TabBarSettings.cpp
Mariusz Glebocki a8ec9ad28a Configure Konsole dialog GUI redesign
Summary:
* Use custom dialog and configuraton classes, as counterparts from KF5
  are bugged. The KF5 versions should be fixed and used here.
  * Create new KConfigDialog-like class and use it to show existing
    configuration pages.
  * Create KConfigDialogManager-like class for managing QButtonGroups.

* Remove help button from configuration dialog. There is nothing about
  configuration dialog options in the help.

* Profile Settings:
  * Use QTreeView instead of QTableView - it highlights whole lines,
    aligns header names to the left, etc. Basically it looks like lists
    in file manager or e.g. plugin list in Kate.
  * Use (default) QStyledItemDelegate with checkbox instead of custom
    delegate (tick mark) in favorite/show column.
  * Change default profile item style - it now has italics font and
    "(default)" suffix.
  * Disable "Delete" button when default profile is selected
  * Use slightly extended QKeySequenceEditor. KKeySequenceWidget looks
    heavily out of place in a tree view. New editor supports some
    control keys:
    * Esc key cancels key capture.
    * Del/backspace removes shortcut.
    * Enter confirms shortcut immediately.
    * Tab/backtab commits currently edited shorcut and moves to
      next/previous shortcut.
  * Shortcuts for non visible profiles use disabled text color.
  * Note about visibility and shortcuts

* Rename "File Location" to "Temporary Files"
  * Enable path selector only when "custom" is selected
  * Place paths directly in labels

* Disable all tabbar settings except visibility when visibility is set
  to "Never"

* Minor string changes.

**Screenshots**

{F6893460}
{F6893461}
{F6893462}
{F6893463}

BUG: 404096
FIXED-IN: 19.08.0

Reviewers: #konsole, #vdg, ngraham

Reviewed By: #vdg, ngraham

Subscribers: ngraham, hindenburg, #vdg, konsole-devel, #konsole

Tags: #konsole, #vdg

Differential Revision: https://phabricator.kde.org/D20816
2019-06-15 12:52:43 -04:00

43 lines
1.6 KiB
C++

/*
Copyright 2011 Kurt Hindenburg <kurt.hindenburg@gmail.com>
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) version 3 or any later version
accepted by the membership of KDE e.V. (or its successor appro-
ved by the membership of KDE e.V.), which shall act as a proxy
defined in Section 14 of version 3 of the license.
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, see http://www.gnu.org/licenses/.
*/
// Own
#include "TabBarSettings.h"
using namespace Konsole;
TabBarSettings::TabBarSettings(QWidget* aParent) : QWidget(aParent)
{
setupUi(this);
// Enable CSS file selector only when tabbar is visible and custom css is active
const auto updateStyleSheetFileEnable = [this](bool) {
kcfg_TabBarUserStyleSheetFile->setEnabled(kcfg_TabBarUseUserStyleSheet->isChecked()
&& !AlwaysHideTabBar->isChecked());
};
connect(kcfg_TabBarUseUserStyleSheet, &QAbstractButton::toggled,
this, updateStyleSheetFileEnable);
connect(AlwaysHideTabBar, &QAbstractButton::toggled,
this, updateStyleSheetFileEnable);
}
TabBarSettings::~TabBarSettings() = default;