diff options
author | Alessandro Portale <alessandro.portale@qt.io> | 2023-05-23 13:58:49 +0200 |
---|---|---|
committer | Alessandro Portale <alessandro.portale@qt.io> | 2023-05-23 15:24:08 +0000 |
commit | 815a05a94ab1eace8c63e2f08ee89889206367a9 (patch) | |
tree | 8b1e5e1ddd0eeb1d1239c0bc40be439b9352dead | |
parent | d63c57ef47fa7de0f7621a4ac8c41131e01905bc (diff) |
QmlEditorWidgets: Fix color popup for Rectangle widget
The color buttons for background color and border color did not open the
color picker popup. The buttons need to be set checkable, which broke
while "inlining" .ui files.
Amends: 200a66644ef3d02bfb9969f6e9010f35fbec62ae
Fixes: QTCREATORBUG-29195
Change-Id: Icd71df1bcfad6472a90691d2c353f7039b52004e
Reviewed-by: hjk <hjk@qt.io>
-rw-r--r-- | src/libs/qmleditorwidgets/contextpanewidgetrectangle.cpp | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/src/libs/qmleditorwidgets/contextpanewidgetrectangle.cpp b/src/libs/qmleditorwidgets/contextpanewidgetrectangle.cpp index 52afeff187..5da883f426 100644 --- a/src/libs/qmleditorwidgets/contextpanewidgetrectangle.cpp +++ b/src/libs/qmleditorwidgets/contextpanewidgetrectangle.cpp @@ -33,13 +33,19 @@ ContextPaneWidgetRectangle::ContextPaneWidgetRectangle(QWidget *parent) return result; }; + const auto colorButton = [] { + auto result = new ColorButton; + result->setCheckable(true); + result->setShowArrow(false); + return result; + }; + m_gradientLabel = new QLabel(Tr::tr("Gradient")); m_gradientLabel->setAlignment(Qt::AlignBottom); m_gradientLine = new GradientLine; m_gradientLine->setMinimumWidth(240); - m_colorColorButton = new ColorButton; - m_colorColorButton->setShowArrow(false); + m_colorColorButton = colorButton(); m_colorSolid = toolButton("icon_color_solid"); m_colorGradient = toolButton("icon_color_gradient"); m_colorNone = toolButton("icon_color_none"); @@ -48,8 +54,7 @@ ContextPaneWidgetRectangle::ContextPaneWidgetRectangle(QWidget *parent) colorButtons->addButton(m_colorGradient); colorButtons->addButton(m_colorNone); - m_borderColorButton = new ColorButton; - m_borderColorButton->setShowArrow(false); + m_borderColorButton = colorButton(); m_borderSolid = toolButton("icon_color_solid"); m_borderNone = toolButton("icon_color_none"); auto borderButtons = new QButtonGroup(this); |