From 38fcc8794386e5857650bb69ebddd463ba7b216c Mon Sep 17 00:00:00 2001 From: baldurk Date: Thu, 24 Aug 2017 16:04:58 +0100 Subject: [PATCH] Add custom RDStyle rendering of view item checkmark indicators --- qrenderdoc/Styles/RDStyle/RDStyle.cpp | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/qrenderdoc/Styles/RDStyle/RDStyle.cpp b/qrenderdoc/Styles/RDStyle/RDStyle.cpp index 66e965219..2cb7ca5fd 100644 --- a/qrenderdoc/Styles/RDStyle/RDStyle.cpp +++ b/qrenderdoc/Styles/RDStyle/RDStyle.cpp @@ -1253,6 +1253,30 @@ void RDStyle::drawPrimitive(PrimitiveElement element, const QStyleOption *opt, Q return; } + else if(element == QStyle::PE_IndicatorViewItemCheck) + { + QRect rect = opt->rect; + + QPen outlinePen(outlineBrush(opt->palette), 1.0); + + p->save(); + p->setRenderHint(QPainter::Antialiasing); + + QPainterPath path; + path.addRoundedRect(rect, 1.0, 1.0); + + p->setPen(outlinePen); + p->drawPath(path.translated(QPointF(0.5, 0.5))); + + rect = rect.adjusted(2, 2, -1, -1); + + if(opt->state & State_On) + p->fillRect(rect, opt->palette.brush(QPalette::ButtonText)); + + p->restore(); + + return; + } RDTweakedNativeStyle::drawPrimitive(element, opt, p, widget); }