StyleHelper: Add setter for "panelwidget[_singlerow]"

20 string duplications warrant a centralized setter. A couple more of
them will come with the upcoming toolbar changes.

Change-Id: Ide8c680da21d5be09f968bcc0a774e062c6f0260
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
This commit is contained in:
Alessandro Portale
2023-04-21 22:10:24 +02:00
parent 963ae0a192
commit 3821683647
12 changed files with 51 additions and 28 deletions

View File

@@ -3,6 +3,8 @@
#include "styledbar.h"
#include "stylehelper.h"
#include <QPainter>
#include <QStyleOption>
@@ -11,14 +13,14 @@ using namespace Utils;
StyledBar::StyledBar(QWidget *parent)
: QWidget(parent)
{
setProperty("panelwidget", true);
setProperty("panelwidget_singlerow", true);
StyleHelper::setPanelWidget(this);
StyleHelper::setPanelWidgetSingleRow(this);
setProperty("lightColored", false);
}
void StyledBar::setSingleRow(bool singleRow)
{
setProperty("panelwidget_singlerow", singleRow);
StyleHelper::setPanelWidgetSingleRow(this, singleRow);
}
bool StyledBar::isSingleRow() const

View File

@@ -634,6 +634,16 @@ QLinearGradient StyleHelper::statusBarGradient(const QRect &statusBarRect)
return grad;
}
void StyleHelper::setPanelWidget(QWidget *widget, bool value)
{
widget->setProperty("panelwidget", value);
}
void StyleHelper::setPanelWidgetSingleRow(QWidget *widget, bool value)
{
widget->setProperty("panelwidget_singlerow", value);
}
bool StyleHelper::isQDSTheme()
{
return creatorTheme() ? creatorTheme()->flag(Theme::QDSTheme) : false;

View File

@@ -72,6 +72,8 @@ public:
static void tintImage(QImage &img, const QColor &tintColor);
static QLinearGradient statusBarGradient(const QRect &statusBarRect);
static void setPanelWidget(QWidget *widget, bool value = true);
static void setPanelWidgetSingleRow(QWidget *widget, bool value = true);
static bool isQDSTheme();

View File

@@ -162,13 +162,13 @@ DebuggerMainWindowPrivate::DebuggerMainWindowPrivate(DebuggerMainWindow *parent)
{
m_centralWidgetStack = new QStackedWidget;
m_statusLabel = new Utils::StatusLabel;
m_statusLabel->setProperty("panelwidget", true);
StyleHelper::setPanelWidget(m_statusLabel);
m_statusLabel->setIndent(2 * QFontMetrics(q->font()).horizontalAdvance(QChar('x')));
m_editorPlaceHolder = new EditorManagerPlaceHolder;
m_perspectiveChooser = new QComboBox;
m_perspectiveChooser->setObjectName("PerspectiveChooser");
m_perspectiveChooser->setProperty("panelwidget", true);
StyleHelper::setPanelWidget(m_perspectiveChooser);
m_perspectiveChooser->setSizeAdjustPolicy(QComboBox::AdjustToContents);
connect(m_perspectiveChooser, &QComboBox::activated, this, [this](int item) {
Perspective *perspective = Perspective::findPerspective(m_perspectiveChooser->itemData(item).toString());
@@ -507,7 +507,7 @@ QWidget *DebuggerMainWindow::centralWidgetStack()
void DebuggerMainWindow::addSubPerspectiveSwitcher(QWidget *widget)
{
widget->setVisible(false);
widget->setProperty("panelwidget", true);
StyleHelper::setPanelWidget(widget);
d->m_subPerspectiveSwitcherLayout->addWidget(widget);
}
@@ -810,7 +810,7 @@ QToolButton *PerspectivePrivate::setupToolButton(QAction *action)
{
QTC_ASSERT(action, return nullptr);
auto toolButton = new QToolButton(m_innerToolBar);
toolButton->setProperty("panelwidget", true);
StyleHelper::setPanelWidget(toolButton);
toolButton->setDefaultAction(action);
toolButton->setToolTip(action->toolTip());
m_innerToolBarLayout->addWidget(toolButton);
@@ -833,7 +833,7 @@ void Perspective::addToolBarWidget(QWidget *widget)
{
QTC_ASSERT(widget, return);
// QStyle::polish is called before it is added to the toolbar, explicitly make it a panel widget
widget->setProperty("panelwidget", true);
StyleHelper::setPanelWidget(widget);
widget->setParent(d->m_innerToolBar);
d->m_innerToolBarLayout->addWidget(widget);
}

View File

@@ -34,6 +34,7 @@
#include <utils/algorithm.h>
#include <utils/fancymainwindow.h>
#include <utils/stylehelper.h>
#include <utils/utilsicons.h>
#include <QFileDialog>
@@ -151,9 +152,9 @@ PerfProfilerTool::PerfProfilerTool()
m_filterMenu = new QMenu(m_filterButton);
m_aggregateButton = new QToolButton;
m_recordedLabel = new QLabel;
m_recordedLabel->setProperty("panelwidget", true);
StyleHelper::setPanelWidget(m_recordedLabel);
m_delayLabel = new QLabel;
m_delayLabel->setProperty("panelwidget", true);
StyleHelper::setPanelWidget(m_delayLabel);
m_objectsToDelete << m_recordButton << m_clearButton << m_filterButton << m_aggregateButton
<< m_recordedLabel << m_delayLabel;

View File

@@ -653,7 +653,7 @@ MiniProjectTargetSelector::MiniProjectTargetSelector(QAction *targetSelectorActi
QWidget(parent),
m_projectAction(targetSelectorAction)
{
setProperty("panelwidget", true);
StyleHelper::setPanelWidget(this);
setContentsMargins(QMargins(0, 1, 1, 8));
setWindowFlags(Qt::Popup);

View File

@@ -8,7 +8,9 @@
#include "coreplugin/actionmanager/actionmanager.h"
#include "coreplugin/icontext.h"
#include "theme.h"
#include "utils/id.h"
#include <utils/id.h>
#include <utils/stylehelper.h>
#include <QAction>
#include <QHBoxLayout>
@@ -154,8 +156,8 @@ CurveEditorToolBar::CurveEditorToolBar(CurveEditorModel *model, QWidget* parent)
m_zoomSlider = new QSlider(Qt::Horizontal);
m_zoomSlider->setRange(0, 100);
m_zoomSlider->setProperty("panelwidget", true);
m_zoomSlider->setProperty("panelwidget_singlerow", true);
Utils::StyleHelper::setPanelWidget(m_zoomSlider);
Utils::StyleHelper::setPanelWidgetSingleRow(m_zoomSlider);
m_zoomSlider->setFixedWidth(120);
connect(m_zoomSlider, &QSlider::valueChanged, [this](int value) {

View File

@@ -4,6 +4,7 @@
#include "seekerslider.h"
#include <utils/icon.h>
#include <utils/stylehelper.h>
#include <QMouseEvent>
#include <QStyleOption>
@@ -15,8 +16,8 @@ namespace QmlDesigner {
SeekerSlider::SeekerSlider(QWidget *parent)
: QSlider(parent)
{
setProperty("panelwidget", true);
setProperty("panelwidget_singlerow", true);
Utils::StyleHelper::setPanelWidget(this);
Utils::StyleHelper::setPanelWidgetSingleRow(this);
setOrientation(Qt::Horizontal);
setFixedWidth(120);
setMaxValue(30);

View File

@@ -5,6 +5,8 @@
#include <theme.h>
#include <utils/stylehelper.h>
#include <QToolBar>
#include <QHBoxLayout>
#include <QDebug>
@@ -17,7 +19,7 @@ ToolBox::ToolBox(QWidget *parentWidget)
, m_leftToolBar(new QToolBar(QLatin1String("LeftSidebar"), this))
, m_rightToolBar(new QToolBar(QLatin1String("RightSidebar"), this))
{
setProperty("panelwidget", false);
Utils::StyleHelper::setPanelWidget(this, false);
m_leftToolBar->setFloatable(true);
m_leftToolBar->setMovable(true);
@@ -29,18 +31,18 @@ ToolBox::ToolBox(QWidget *parentWidget)
setFixedHeight(Theme::toolbarSize());
m_leftToolBar->setProperty("panelwidget", false);
m_leftToolBar->setProperty("panelwidget_singlerow", false);
Utils::StyleHelper::setPanelWidget(m_leftToolBar, false);
Utils::StyleHelper::setPanelWidgetSingleRow(m_leftToolBar, false);
m_leftToolBar->setFixedHeight(Theme::toolbarSize());
m_rightToolBar->setProperty("panelwidget", false);
m_rightToolBar->setProperty("panelwidget_singlerow", false);
Utils::StyleHelper::setPanelWidget(m_rightToolBar, false);
Utils::StyleHelper::setPanelWidgetSingleRow(m_rightToolBar, false);
m_rightToolBar->setFixedHeight(Theme::toolbarSize());
m_rightToolBar->setSizePolicy(QSizePolicy::Maximum, QSizePolicy::Expanding);
auto stretchToolbar = new QToolBar(this);
stretchToolbar->setProperty("panelwidget", false);
stretchToolbar->setProperty("panelwidget_singlerow", false);
Utils::StyleHelper::setPanelWidget(stretchToolbar, false);
Utils::StyleHelper::setPanelWidgetSingleRow(stretchToolbar, false);
stretchToolbar->setSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::MinimumExpanding);
m_rightToolBar->setOrientation(Qt::Horizontal);

View File

@@ -22,6 +22,7 @@
#include <coreplugin/icore.h>
#include <utils/algorithm.h>
#include <utils/stylehelper.h>
#include <QApplication>
#include <QIntValidator>
@@ -430,8 +431,8 @@ void TimelineToolBar::createRightControls()
m_scale = new QSlider(this);
m_scale->setOrientation(Qt::Horizontal);
m_scale->setProperty("panelwidget", true);
m_scale->setProperty("panelwidget_singlerow", true);
Utils::StyleHelper::setPanelWidget(m_scale);
Utils::StyleHelper::setPanelWidgetSingleRow(m_scale);
m_scale->setMaximumWidth(200);
m_scale->setMinimumWidth(100);
m_scale->setMinimum(0);

View File

@@ -23,6 +23,7 @@
#include <coreplugin/icore.h>
#include <utils/algorithm.h>
#include <utils/stylehelper.h>
#include <QApplication>
#include <QComboBox>
@@ -249,8 +250,8 @@ void TransitionEditorToolBar::createRightControls()
addSpacing(10);
m_scale = new QSlider(this);
m_scale->setProperty("panelwidget", true);
m_scale->setProperty("panelwidget_singlerow", true);
Utils::StyleHelper::setPanelWidget(m_scale);
Utils::StyleHelper::setPanelWidgetSingleRow(m_scale);
m_scale->setOrientation(Qt::Horizontal);
m_scale->setMaximumWidth(200);
m_scale->setMinimumWidth(100);

View File

@@ -49,6 +49,7 @@
#include <utils/fancymainwindow.h>
#include <utils/fileinprojectfinder.h>
#include <utils/qtcassert.h>
#include <utils/stylehelper.h>
#include <utils/url.h>
#include <utils/utilsicons.h>
@@ -197,7 +198,7 @@ QmlProfilerTool::QmlProfilerTool()
this, &QmlProfilerTool::toggleVisibleFeature);
d->m_timeLabel = new QLabel();
d->m_timeLabel->setProperty("panelwidget", true);
StyleHelper::setPanelWidget(d->m_timeLabel);
d->m_timeLabel->setIndent(10);
updateTimeDisplay();
connect(d->m_timeLabel, &QObject::destroyed, &d->m_recordingTimer, &QTimer::stop);