Mercurial > trustbridge
view ui/textoverlaybutton.cpp @ 734:f6796ff72b65
Only show overlay if it is not "0"
author | Andre Heinecke <andre.heinecke@intevation.de> |
---|---|
date | Thu, 03 Jul 2014 16:28:35 +0200 |
parents | 0bb54205c55a |
children | c92eb6298dd7 |
line wrap: on
line source
/* Copyright (C) 2014 by Bundesamt für Sicherheit in der Informationstechnik * Software engineering by Intevation GmbH * * This file is Free Software under the GNU GPL (v>=2) * and comes with ABSOLUTELY NO WARRANTY! * See LICENSE.txt for details. */ #include <QPaintEvent> #include <QPainter> #include <QFont> #include <QApplication> #include <QDebug> #include "textoverlaybutton.h" void TextOverlayButton::paintEvent(QPaintEvent *e) { QToolButton::paintEvent(e); if (mOverlay == "0") { return; } QPainter painter(this); QRect myRect = e->rect().translated(26, -29); // circle QLinearGradient gradient(myRect.topLeft(), myRect.bottomRight()); gradient.setColorAt(0, Qt::white); gradient.setColorAt(0.7, Qt::red); QBrush brush(gradient); painter.setBrush(brush); painter.setPen(Qt::white); painter.drawEllipse(75.5, 6, 20, 20); // font QFont font; font.setPixelSize(11); font.setWeight(QFont::Bold); painter.setFont(font); painter.drawText(myRect, Qt::AlignCenter | Qt::AlignVCenter, mOverlay); return; }