From 14e12bee5e23cb564116349c8c77af6c58586a87 Mon Sep 17 00:00:00 2001 From: johanneshilden Date: Wed, 4 Oct 2017 12:40:30 +0300 Subject: [PATCH] Make ScrollBar look more like Progress --- components/qtmaterialscrollbar.cpp | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/components/qtmaterialscrollbar.cpp b/components/qtmaterialscrollbar.cpp index 77953d1..53ae3db 100644 --- a/components/qtmaterialscrollbar.cpp +++ b/components/qtmaterialscrollbar.cpp @@ -170,6 +170,8 @@ void QtMaterialScrollBar::paintEvent(QPaintEvent *event) Q_D(QtMaterialScrollBar); QPainter painter(this); + painter.setRenderHint(QPainter::Antialiasing); + painter.fillRect(rect(), canvasColor()); int x, y, w, h; @@ -187,7 +189,13 @@ void QtMaterialScrollBar::paintEvent(QPaintEvent *event) painter.setOpacity(d->stateMachine->opacity()); } - painter.drawRect(rect().marginsRemoved(margins)); + QRect trimmed(rect().marginsRemoved(margins)); + + QPainterPath path; + path.addRoundedRect(trimmed, 3, 3); + painter.setClipPath(path); + + painter.drawRect(trimmed); const qreal q = h / static_cast(maximum()-minimum()+pageStep()-1); @@ -198,5 +206,5 @@ void QtMaterialScrollBar::paintEvent(QPaintEvent *event) brush.setColor(sliderColor()); painter.setBrush(brush); - painter.drawRect(handle.marginsRemoved(margins)); + painter.drawRect(handle); }