diff options
author | Wladimir Leuschner <wladimir.leuschner@qt.io> | 2024-01-03 14:20:11 +0100 |
---|---|---|
committer | Wladimir Leuschner <wladimir.leuschner@qt.io> | 2024-03-05 15:43:29 +0100 |
commit | c785d56ae084d01a565aaf0fa2fa86a0682c461d (patch) | |
tree | 81e7bf2e79227a4cdcd649a6c2230b9fead36595 /src | |
parent | 46502f9705634f02626ee1057975463d1c0ae1f8 (diff) |
QWindows11Style: Draw frames HighDPI aware
Draw frames and lines on sub-pixel coordinates to be HighDPI aware.
Pick-to: 6.7
Change-Id: Ie4eed73b3e5780216fad0b6a919cbe18391f2b79
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Diffstat (limited to 'src')
-rw-r--r-- | src/plugins/styles/modernwindows/qwindows11style.cpp | 160 |
1 files changed, 110 insertions, 50 deletions
diff --git a/src/plugins/styles/modernwindows/qwindows11style.cpp b/src/plugins/styles/modernwindows/qwindows11style.cpp index a6814cd4e9..35ce136b36 100644 --- a/src/plugins/styles/modernwindows/qwindows11style.cpp +++ b/src/plugins/styles/modernwindows/qwindows11style.cpp @@ -228,15 +228,15 @@ void QWindows11Style::drawComplexControl(ComplexControl control, const QStyleOpt painter->setClipRegion(clipRegion); QColor lineColor = state & State_HasFocus ? option->palette.accent().color() : QColor(0,0,0); painter->setPen(QPen(lineColor)); - painter->drawLine(option->rect.bottomLeft() + QPoint(6,0), option->rect.bottomRight() + QPoint(-6,0)); - if (state & State_HasFocus) - painter->drawLine(option->rect.bottomLeft() + QPoint(7,1), option->rect.bottomRight() + QPoint(-7,1)); + painter->drawLine(option->rect.bottomLeft() + QPointF(7,-0.5), option->rect.bottomRight() + QPointF(-7,-0.5)); painter->restore(); } + QRectF frameRect = option->rect; + frameRect.adjust(0.5,0.5,-0.5,-0.5); QBrush fillColor = option->palette.brush(QPalette::Base); painter->setBrush(fillColor); painter->setPen(QPen(highContrastTheme == true ? sb->palette.buttonText().color() : WINUI3Colors[colorSchemeIndex][frameColorLight])); - painter->drawRoundedRect(option->rect.adjusted(2,2,-2,-2), secondLevelRoundingRadius, secondLevelRoundingRadius); + painter->drawRoundedRect(frameRect.adjusted(2,2,-2,-2), secondLevelRoundingRadius, secondLevelRoundingRadius); QPoint mousePos = widget ? widget->mapFromGlobal(QCursor::pos()) : QPoint(); QColor hoverColor = WINUI3Colors[colorSchemeIndex][subtleHighlightColor]; if (sub & SC_SpinBoxEditField) { @@ -310,12 +310,17 @@ void QWindows11Style::drawComplexControl(ComplexControl control, const QStyleOpt leftRect = QRect(rect.left(), handlePos.y(), rect.width(), (rect.height() - handlePos.y())); } - painter->setPen(QPen(highContrastTheme == true ? slider->palette.buttonText().color() : WINUI3Colors[colorSchemeIndex][frameColorLight])); + painter->setPen(Qt::NoPen); painter->setBrush(option->palette.accent()); painter->drawRoundedRect(leftRect,1,1); painter->setBrush(QBrush(WINUI3Colors[colorSchemeIndex][controlStrongFill])); painter->drawRoundedRect(rightRect,1,1); + painter->setPen(QPen(highContrastTheme == true ? slider->palette.buttonText().color() : WINUI3Colors[colorSchemeIndex][frameColorLight])); + painter->setBrush(Qt::NoBrush); + painter->drawRoundedRect(leftRect,1.5,1.5); + painter->drawRoundedRect(rightRect,1.5,1.5); + tickreg -= rect.toRect(); } if (sub & SC_SliderTickmarks) { @@ -397,11 +402,16 @@ void QWindows11Style::drawComplexControl(ComplexControl control, const QStyleOpt const qreal outerRadius = qMin(8.0,(slider->orientation == Qt::Horizontal ? rect.height() / 2.0 : rect.width() / 2.0) - 1); const float innerRadius = option->styleObject->property("_q_inner_radius").toFloat(); painter->setRenderHint(QPainter::Antialiasing, true); - painter->setPen(QPen(QBrush(WINUI3Colors[colorSchemeIndex][controlStrokeSecondary]),1)); + painter->setPen(Qt::NoPen); painter->setBrush(QBrush(WINUI3Colors[colorSchemeIndex][controlFillSolid])); painter->drawEllipse(center, outerRadius, outerRadius); painter->setBrush(option->palette.accent()); painter->drawEllipse(center, innerRadius, innerRadius); + + painter->setPen(QPen(WINUI3Colors[colorSchemeIndex][controlStrokeSecondary])); + painter->setBrush(Qt::NoBrush); + painter->drawEllipse(center, outerRadius + 0.5, outerRadius + 0.5); + painter->drawEllipse(center, innerRadius + 0.5, innerRadius + 0.5); } } if (slider->state & State_HasFocus) { @@ -419,6 +429,11 @@ void QWindows11Style::drawComplexControl(ComplexControl control, const QStyleOpt QBrush fillColor = state & State_MouseOver && !(state & State_HasFocus) ? QBrush(WINUI3Colors[colorSchemeIndex][subtleHighlightColor]) : option->palette.brush(QPalette::Base); QRectF rect = option->rect.adjusted(2,2,-2,-2); painter->setBrush(fillColor); + painter->setPen(Qt::NoPen); + painter->drawRoundedRect(rect, secondLevelRoundingRadius, secondLevelRoundingRadius); + + rect.adjust(0.5,0.5,-0.5,-0.5); + painter->setBrush(Qt::NoBrush); painter->setPen(highContrastTheme == true ? combobox->palette.buttonText().color() : WINUI3Colors[colorSchemeIndex][frameColorLight]); painter->drawRoundedRect(rect, secondLevelRoundingRadius, secondLevelRoundingRadius); if (sub & SC_ComboBoxArrow) { @@ -454,8 +469,12 @@ void QWindows11Style::drawComplexControl(ComplexControl control, const QStyleOpt rect.setHeight(rect.height()/2); rect.moveCenter(center); painter->setBrush(scrollbar->palette.base()); - painter->setPen(WINUI3Colors[colorSchemeIndex][frameColorLight]); + painter->setPen(Qt::NoPen); painter->drawRoundedRect(rect, topLevelRoundingRadius, topLevelRoundingRadius); + + painter->setBrush(Qt::NoBrush); + painter->setPen(WINUI3Colors[colorSchemeIndex][frameColorLight]); + painter->drawRoundedRect(rect, topLevelRoundingRadius + 0.5, topLevelRoundingRadius + 0.5); } if (sub & SC_ScrollBarSlider) { QRectF rect = proxy()->subControlRect(CC_ScrollBar, option, SC_ScrollBarSlider, widget); @@ -710,20 +729,32 @@ void QWindows11Style::drawPrimitive(PrimitiveElement element, const QStyleOption switch (element) { case PE_PanelTipLabel: { - painter->setPen(highContrastTheme == true ? option->palette.buttonText().color() : WINUI3Colors[colorSchemeIndex][frameColorLight]); + QRectF tipRect = option->rect.marginsRemoved(QMargins(1,1,1,1)); + painter->setPen(Qt::NoPen); painter->setBrush(option->palette.toolTipBase()); - painter->drawRoundedRect(option->rect.marginsRemoved(QMargins(1,1,1,1)), secondLevelRoundingRadius, secondLevelRoundingRadius); + painter->drawRoundedRect(tipRect, secondLevelRoundingRadius, secondLevelRoundingRadius); + + painter->setPen(highContrastTheme == true ? option->palette.buttonText().color() : WINUI3Colors[colorSchemeIndex][frameColorLight]); + painter->setBrush(Qt::NoBrush); + painter->drawRoundedRect(tipRect.marginsAdded(QMargins(0.5,0.5,0.5,0.5)), secondLevelRoundingRadius, secondLevelRoundingRadius); break; } case PE_FrameTabWidget: if (const QStyleOptionTabWidgetFrame *frame = qstyleoption_cast<const QStyleOptionTabWidgetFrame *>(option)) { - painter->setPen(highContrastTheme == true ? frame->palette.buttonText().color() : WINUI3Colors[colorSchemeIndex][frameColorLight]); + QRectF frameRect = frame->rect.marginsRemoved(QMargins(1,1,1,1)); + painter->setPen(Qt::NoPen); painter->setBrush(frame->palette.base()); - painter->drawRoundedRect(frame->rect.marginsRemoved(QMargins(1,1,1,1)), secondLevelRoundingRadius, secondLevelRoundingRadius); + painter->drawRoundedRect(frameRect, secondLevelRoundingRadius, secondLevelRoundingRadius); + + painter->setPen(highContrastTheme == true ? frame->palette.buttonText().color() : WINUI3Colors[colorSchemeIndex][frameColorLight]); + painter->setBrush(Qt::NoBrush); + painter->drawRoundedRect(frameRect.marginsAdded(QMargins(0.5,0.5,0.5,0.5)), secondLevelRoundingRadius, secondLevelRoundingRadius); } break; case PE_FrameGroupBox: if (const QStyleOptionFrame *frame = qstyleoption_cast<const QStyleOptionFrame *>(option)) { + QRectF frameRect = frame->rect; + frameRect.adjust(0.5,0.5,-0.5,-0.5); painter->setPen(highContrastTheme == true ? frame->palette.buttonText().color() : WINUI3Colors[colorSchemeIndex][frameColorStrong]); painter->setBrush(Qt::NoBrush); if (frame->features & QStyleOptionFrame::Flat) { @@ -732,7 +763,7 @@ void QWindows11Style::drawPrimitive(PrimitiveElement element, const QStyleOption QPoint p2(fr.x() + fr.width(), p1.y()); painter->drawLine(p1,p2); } else { - painter->drawRoundedRect(frame->rect.marginsRemoved(QMargins(1,1,1,1)), secondLevelRoundingRadius, secondLevelRoundingRadius); + painter->drawRoundedRect(frameRect.marginsRemoved(QMargins(1,1,1,1)), secondLevelRoundingRadius, secondLevelRoundingRadius); } } break; @@ -742,7 +773,7 @@ void QWindows11Style::drawPrimitive(PrimitiveElement element, const QStyleOption QFontMetrics fm(assetFont); QRectF rect = option->rect; - auto center = QPoint(rect.x() + rect.width() / 2, rect.y() + rect.height() / 2); + QPointF center = QPointF(rect.x() + rect.width() / 2, rect.y() + rect.height() / 2); rect.setWidth(15); rect.setHeight(15); rect.moveCenter(center); @@ -759,10 +790,14 @@ void QWindows11Style::drawPrimitive(PrimitiveElement element, const QStyleOption fillBrush.setColor(fillBrush.color().lighter(107)); else if (state & State_MouseOver && !(option->state & State_On || option->state & State_NoChange)) fillBrush.setColor(fillBrush.color().darker(107)); - painter->setPen(QPen(highContrastTheme == true ? option->palette.buttonText().color() : WINUI3Colors[colorSchemeIndex][frameColorStrong])); + painter->setPen(Qt::NoPen); painter->setBrush(fillBrush); painter->drawRoundedRect(rect, secondLevelRoundingRadius, secondLevelRoundingRadius, Qt::AbsoluteSize); + painter->setPen(QPen(highContrastTheme == true ? option->palette.buttonText().color() : WINUI3Colors[colorSchemeIndex][frameColorStrong])); + painter->setBrush(Qt::NoBrush); + painter->drawRoundedRect(rect, secondLevelRoundingRadius + 0.5, secondLevelRoundingRadius + 0.5, Qt::AbsoluteSize); + painter->setFont(assetFont); painter->setPen(option->palette.highlightedText().color()); painter->setBrush(option->palette.highlightedText().color()); @@ -784,25 +819,34 @@ void QWindows11Style::drawPrimitive(PrimitiveElement element, const QStyleOption option->styleObject->setProperty("_q_inner_radius", option->styleObject->property("_q_end_radius")); int innerRadius = option->styleObject->property("_q_inner_radius").toFloat(); - QRect rect = option->rect; - auto center = QPoint(rect.x() + rect.width() / 2, rect.y() + rect.height() / 2); + QRectF rect = option->rect; + QPointF center = QPoint(rect.x() + rect.width() / 2, rect.y() + rect.height() / 2); rect.setWidth(15); rect.setHeight(15); rect.moveCenter(center); - QRect innerRect = rect; + QRectF innerRect = rect; innerRect.setWidth(8); innerRect.setHeight(8); innerRect.moveCenter(center); - painter->setPen(QPen(WINUI3Colors[colorSchemeIndex][frameColorStrong])); + painter->setPen(Qt::NoPen); painter->setBrush(option->palette.accent()); if (option->state & State_MouseOver && option->state & State_Enabled) painter->setBrush(QBrush(option->palette.accent().color().lighter(107))); painter->drawEllipse(center, 7, 7); + painter->setPen(QPen(WINUI3Colors[colorSchemeIndex][frameColorStrong])); + painter->setBrush(Qt::NoBrush); + painter->drawEllipse(center, 7.5, 7.5); + + painter->setPen(Qt::NoPen); painter->setBrush(QBrush(option->palette.window())); painter->drawEllipse(center,innerRadius, innerRadius); + painter->setPen(QPen(WINUI3Colors[colorSchemeIndex][frameColorStrong])); + painter->setBrush(Qt::NoBrush); + painter->drawEllipse(center,innerRadius + 0.5, innerRadius + 0.5); + painter->setPen(Qt::NoPen); painter->setBrush(QBrush(option->palette.window())); if (option->state & State_MouseOver && option->state & State_Enabled) @@ -850,7 +894,9 @@ void QWindows11Style::drawPrimitive(PrimitiveElement element, const QStyleOption QBrush fillColor = state & State_MouseOver && !(state & State_HasFocus) ? QBrush(WINUI3Colors[colorSchemeIndex][subtleHighlightColor]) : option->palette.brush(QPalette::Base); painter->setBrush(fillColor); painter->setPen(Qt::NoPen); - painter->drawRoundedRect(option->rect, secondLevelRoundingRadius, secondLevelRoundingRadius); + QRectF frameRect = option->rect; + frameRect.adjust(0.5,0.5,-0.5,-0.5); + painter->drawRoundedRect(frameRect, secondLevelRoundingRadius, secondLevelRoundingRadius); if (panel->lineWidth > 0) proxy()->drawPrimitive(PE_FrameLineEdit, panel, painter, widget); } @@ -864,16 +910,14 @@ void QWindows11Style::drawPrimitive(PrimitiveElement element, const QStyleOption painter->setClipRegion(clipRegion); QColor lineColor = state & State_HasFocus ? option->palette.accent().color() : QColor(0,0,0); painter->setPen(QPen(lineColor)); - painter->drawLine(option->rect.bottomLeft() + QPoint(1,0), option->rect.bottomRight() + QPoint(-1,0)); - if (state & State_HasFocus) - painter->drawLine(option->rect.bottomLeft() + QPoint(2,1), option->rect.bottomRight() + QPoint(-2,1)); + painter->drawLine(option->rect.bottomLeft() + QPointF(1,0.5), option->rect.bottomRight() + QPointF(-1,0.5)); } break; case PE_Frame: { if (const auto *frame = qstyleoption_cast<const QStyleOptionFrame *>(option)) { if (frame->frameShape == QFrame::NoFrame) break; - QRect rect = option->rect.adjusted(2,2,-2,-2); + QRectF rect = option->rect.adjusted(2,2,-2,-2); if (widget && widget->inherits("QComboBoxPrivateContainer")) { painter->setPen(Qt::NoPen); painter->setBrush(WINUI3Colors[colorSchemeIndex][menuPanelFill]); @@ -881,16 +925,18 @@ void QWindows11Style::drawPrimitive(PrimitiveElement element, const QStyleOption } painter->setBrush(option->palette.base()); - painter->setPen(QPen(WINUI3Colors[colorSchemeIndex][frameColorLight])); + painter->setPen(Qt::NoPen); painter->drawRoundedRect(rect, secondLevelRoundingRadius, secondLevelRoundingRadius); + painter->setBrush(Qt::NoBrush); + painter->setPen(QPen(WINUI3Colors[colorSchemeIndex][frameColorLight])); + painter->drawRoundedRect(rect.marginsAdded(QMargins(0.5,0.5,0.5,0.5)), secondLevelRoundingRadius, secondLevelRoundingRadius); + if (widget && widget->inherits("QTextEdit")) { QRegion clipRegion = option->rect; QColor lineColor = state & State_HasFocus ? option->palette.accent().color() : QColor(0,0,0,255); painter->setPen(QPen(lineColor)); - painter->drawLine(rect.bottomLeft() + QPoint(1,1), rect.bottomRight() + QPoint(-1,1)); - if (state & State_HasFocus) - painter->drawLine(rect.bottomLeft() + QPoint(2,2), rect.bottomRight() + QPoint(-2,2)); + painter->drawLine(option->rect.bottomLeft() + QPoint(1,-1), option->rect.bottomRight() + QPoint(-1,-1)); } } break; @@ -1006,22 +1052,22 @@ void QWindows11Style::drawControl(ControlElement element, const QStyleOption *op switch (element) { case QStyle::CE_TabBarTabShape: if (const QStyleOptionTab *tab = qstyleoption_cast<const QStyleOptionTab *>(option)) { - painter->setPen(highContrastTheme == true ? tab->palette.buttonText().color() : WINUI3Colors[colorSchemeIndex][frameColorLight]); + QRectF tabRect = tab->rect.marginsRemoved(QMargins(2,2,0,0)); + painter->setPen(Qt::NoPen); painter->setBrush(tab->palette.base()); if (tab->state & State_MouseOver){ painter->setBrush(WINUI3Colors[colorSchemeIndex][subtleHighlightColor]); - painter->drawRoundedRect(tab->rect.marginsRemoved(QMargins(2,2,0,0)),2,2); - } - else if (tab->state & State_Selected) { - painter->setPen(highContrastTheme == true ? tab->palette.buttonText().color() : WINUI3Colors[colorSchemeIndex][frameColorLight]); + } else if (tab->state & State_Selected) { painter->setBrush(tab->palette.base()); - painter->drawRoundedRect(tab->rect.marginsRemoved(QMargins(2,2,0,0)),2,2); - } - else { - painter->setPen(highContrastTheme == true ? tab->palette.buttonText().color() : WINUI3Colors[colorSchemeIndex][frameColorLight]); + } else { painter->setBrush(tab->palette.window()); - painter->drawRoundedRect(tab->rect.marginsRemoved(QMargins(2,2,0,0)),2,2); } + painter->drawRoundedRect(tabRect,2,2); + + painter->setBrush(Qt::NoBrush); + painter->setPen(highContrastTheme == true ? tab->palette.buttonText().color() : WINUI3Colors[colorSchemeIndex][frameColorLight]); + painter->drawRoundedRect(tabRect.adjusted(0.5,0.5,-0.5,-0.5),2,2); + } break; case CE_ToolButtonLabel: @@ -1290,15 +1336,14 @@ void QWindows11Style::drawControl(ControlElement element, const QStyleOption *op painter->setPen(Qt::NoPen); if (flags & (State_Sunken | State_On)) { painter->setBrush(WINUI3Colors[colorSchemeIndex][subtlePressedColor]); - painter->drawRoundedRect(rect, secondLevelRoundingRadius, secondLevelRoundingRadius); } else if (flags & State_MouseOver) { painter->setBrush(WINUI3Colors[colorSchemeIndex][subtleHighlightColor]); - painter->drawRoundedRect(rect, secondLevelRoundingRadius, secondLevelRoundingRadius); } + painter->drawRoundedRect(rect, secondLevelRoundingRadius, secondLevelRoundingRadius); } else { QRectF rect = btn->rect.marginsRemoved(QMargins(2,2,2,2)); - painter->setPen(btn->features.testFlag(QStyleOptionButton::DefaultButton) ? QPen(option->palette.accent().color()) : QPen(WINUI3Colors[colorSchemeIndex][controlStrokePrimary])); + painter->setPen(Qt::NoPen); if (flags & (State_Sunken)) painter->setBrush(flags & State_On ? option->palette.accent().color().lighter(120) : WINUI3Colors[colorSchemeIndex][controlFillTertiary]); else if (flags & State_MouseOver) @@ -1306,9 +1351,15 @@ void QWindows11Style::drawControl(ControlElement element, const QStyleOption *op else painter->setBrush(flags & State_On ? option->palette.accent() : option->palette.button()); painter->drawRoundedRect(rect, secondLevelRoundingRadius, secondLevelRoundingRadius); + + rect.adjust(0.5,0.5,-0.5,-0.5); + painter->setBrush(Qt::NoBrush); + painter->setPen(btn->features.testFlag(QStyleOptionButton::DefaultButton) ? QPen(option->palette.accent().color()) : QPen(WINUI3Colors[colorSchemeIndex][controlStrokePrimary])); + painter->drawRoundedRect(rect, secondLevelRoundingRadius, secondLevelRoundingRadius); + painter->setPen(btn->features.testFlag(QStyleOptionButton::DefaultButton) ? QPen(WINUI3Colors[colorSchemeIndex][controlStrokeOnAccentSecondary]) : QPen(WINUI3Colors[colorSchemeIndex][controlStrokeSecondary])); if (flags & State_Raised) - painter->drawLine(rect.bottomLeft() + QPointF(4.0,0.5), rect.bottomRight() + QPointF(-4,0.5)); + painter->drawLine(rect.bottomLeft() + QPointF(4.0,0.0), rect.bottomRight() + QPointF(-4,0.0)); } } break; @@ -1506,15 +1557,20 @@ void QWindows11Style::drawControl(ControlElement element, const QStyleOption *op break; } else if (header->position == QStyleOptionHeader::Beginning) { - painter->drawLine(option->rect.topRight(), option->rect.bottomRight()); + painter->drawLine(QPointF(option->rect.topRight()) + QPointF(0.5,0.0), + QPointF(option->rect.bottomRight()) + QPointF(0.5,0.0)); } else if (header->position == QStyleOptionHeader::End) { - painter->drawLine(option->rect.topLeft(), option->rect.bottomLeft()); + painter->drawLine(QPointF(option->rect.topLeft()) - QPointF(0.5,0.0), + QPointF(option->rect.bottomLeft()) - QPointF(0.5,0.0)); } else { - painter->drawLine(option->rect.topRight(), option->rect.bottomRight()); - painter->drawLine(option->rect.topLeft(), option->rect.bottomLeft()); + painter->drawLine(QPointF(option->rect.topRight()) + QPointF(0.5,0.0), + QPointF(option->rect.bottomRight()) + QPointF(0.5,0.0)); + painter->drawLine(QPointF(option->rect.topLeft()) - QPointF(0.5,0.0), + QPointF(option->rect.bottomLeft()) - QPointF(0.5,0.0)); } - painter->drawLine(option->rect.bottomLeft(), option->rect.bottomRight()); + painter->drawLine(QPointF(option->rect.bottomLeft()) + QPointF(0.0,0.5), + QPointF(option->rect.bottomRight()) + QPointF(0.0,0.5)); } break; } @@ -1530,12 +1586,16 @@ void QWindows11Style::drawControl(ControlElement element, const QStyleOption *op painter->setPen(highContrastTheme == true ? vopt->palette.buttonText().color() : WINUI3Colors[colorSchemeIndex][frameColorLight]); if (vopt->viewItemPosition == QStyleOptionViewItem::OnlyOne || vopt->viewItemPosition == QStyleOptionViewItem::Invalid) { } else if (vopt->viewItemPosition == QStyleOptionViewItem::Beginning) { - painter->drawLine(option->rect.topRight(), option->rect.bottomRight()); + painter->drawLine(QPointF(option->rect.topRight()) + QPointF(0.5,0.0), + QPointF(option->rect.bottomRight()) + QPointF(0.5,0.0)); } else if (vopt->viewItemPosition == QStyleOptionViewItem::End) { - painter->drawLine(option->rect.topLeft(), option->rect.bottomLeft()); + painter->drawLine(QPointF(option->rect.topLeft()) - QPointF(0.5,0.0), + QPointF(option->rect.bottomLeft()) - QPointF(0.5,0.0)); } else { - painter->drawLine(option->rect.topRight(), option->rect.bottomRight()); - painter->drawLine(option->rect.topLeft(), option->rect.bottomLeft()); + painter->drawLine(QPointF(option->rect.topRight()) + QPointF(0.5,0.0), + QPointF(option->rect.bottomRight()) + QPointF(0.5,0.0)); + painter->drawLine(QPointF(option->rect.topLeft()) - QPointF(0.5,0.0), + QPointF(option->rect.bottomLeft()) - QPointF(0.5,0.0)); } painter->setPen(QPen(option->palette.buttonText().color())); |