From d64c87a9209b1ec46e137d1df81d0557b2ac04c2 Mon Sep 17 00:00:00 2001 From: Yimgo Date: Thu, 6 Sep 2012 09:32:23 +0200 Subject: [PATCH] Filled aristo tool brush. --- src/board/UBBoardView.cpp | 1 + src/tools/UBGraphicsAristo.cpp | 13 ++++++++++++- src/tools/UBGraphicsAristo.h | 2 +- 3 files changed, 14 insertions(+), 2 deletions(-) diff --git a/src/board/UBBoardView.cpp b/src/board/UBBoardView.cpp index 4786c9d0..a0e2940c 100644 --- a/src/board/UBBoardView.cpp +++ b/src/board/UBBoardView.cpp @@ -59,6 +59,7 @@ #include "tools/UBGraphicsCache.h" #include "tools/UBGraphicsTriangle.h" #include "tools/UBGraphicsProtractor.h" +#include "tools/UBGraphicsAristo.h" #include "core/memcheck.h" diff --git a/src/tools/UBGraphicsAristo.cpp b/src/tools/UBGraphicsAristo.cpp index 0cdeb69f..617bc6a9 100644 --- a/src/tools/UBGraphicsAristo.cpp +++ b/src/tools/UBGraphicsAristo.cpp @@ -132,7 +132,7 @@ void UBGraphicsAristo::paint(QPainter *painter, const QStyleOptionGraphicsItem * { QPolygonF polygon; - painter->setBrush(Qt::NoBrush); + painter->setBrush(fillBrush()); painter->setPen(drawColor()); polygon << A << B << C; @@ -390,6 +390,17 @@ void UBGraphicsAristo::paintProtractorGraduations(QPainter* painter) painter->restore(); } +QBrush UBGraphicsAristo::fillBrush() const +{ + QColor fillColor = edgeFillColor();// scene()->isDarkBackground() ? sDarkBackgroundFillColor : sFillColor; + QColor fillColorCenter = middleFillColor();//scene()->isDarkBackground() ? sDarkBackgroundFillColorCenter : sFillColorCenter; + QColor transparentWhite = Qt::white; + transparentWhite.setAlpha(scene()->isDarkBackground() ? sDrawTransparency : sFillTransparency); + QRadialGradient radialGradient(rect().center(), radius(), rect().center()); + radialGradient.setColorAt(0, fillColorCenter); + radialGradient.setColorAt(1, fillColor); + return radialGradient; +} void UBGraphicsAristo::rotateAroundCenter(qreal angle) { diff --git a/src/tools/UBGraphicsAristo.h b/src/tools/UBGraphicsAristo.h index ee791d74..2dbfc53f 100644 --- a/src/tools/UBGraphicsAristo.h +++ b/src/tools/UBGraphicsAristo.h @@ -147,7 +147,7 @@ class UBGraphicsAristo : public UBAbstractDrawRuler, public QGraphicsPolygonItem { return sqrt(((B.x() - A.x())*(B.x() - A.x()))+((B.y() - A.y())*(B.y() - A.y()))) * 9 / 16 - 20; } - + QBrush fillBrush() const; UBGraphicsAristoOrientation mOrientation;