summaryrefslogtreecommitdiffstats
path: root/src/widgets/styles
diff options
context:
space:
mode:
authorYulong Bai <yulong.bai@qt.io>2018-10-15 15:37:41 +0200
committerYulong Bai <yulong.bai@qt.io>2019-07-09 13:49:22 +0200
commit211830b2337aad4776c5c97ffc9bca7a73a26af7 (patch)
tree9fcb0defe52c93fa090a41c2dab6e964d6320ab1 /src/widgets/styles
parent17ac9f8ced6ed351b52966739558abf9e44e1069 (diff)
QFusionStyle: fix excessive top margin of groupbox
The users voted for smaller top margin while there was neither title nor checkbox. Task-number: QTBUG-44056 Change-Id: I5bd5cabb094c9cdec379f20e206196f1b5432182 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
Diffstat (limited to 'src/widgets/styles')
-rw-r--r--src/widgets/styles/qfusionstyle.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/widgets/styles/qfusionstyle.cpp b/src/widgets/styles/qfusionstyle.cpp
index 34cc3c93db..e21ff4bec8 100644
--- a/src/widgets/styles/qfusionstyle.cpp
+++ b/src/widgets/styles/qfusionstyle.cpp
@@ -469,7 +469,14 @@ void QFusionStyle::drawPrimitive(PrimitiveElement elem,
case PE_FrameGroupBox:
{
QPixmap pixmap(QLatin1String(":/qt-project.org/styles/commonstyle/images/fusion_groupbox.png"));
- int topMargin = qMax(pixelMetric(PM_ExclusiveIndicatorHeight), option->fontMetrics.height()) + groupBoxTopMargin;
+ int topMargin = 0;
+ auto control = dynamic_cast<const QGroupBox *>(widget);
+ if (control && !control->isCheckable() && control->title().isEmpty()) {
+ // Shrinking the topMargin if Not checkable AND title is empty
+ topMargin = groupBoxTopMargin;
+ } else {
+ topMargin = qMax(pixelMetric(PM_ExclusiveIndicatorHeight), option->fontMetrics.height()) + groupBoxTopMargin;
+ }
QRect frame = option->rect.adjusted(0, topMargin, 0, 0);
qDrawBorderPixmap(painter, frame, QMargins(6, 6, 6, 6), pixmap);
break;