diff ui/textoverlaybutton.cpp @ 722:b0929968562a

(Issue31) Add textoverlaybutton to show a text in the button.
author Andre Heinecke <andre.heinecke@intevation.de>
date Wed, 02 Jul 2014 18:35:30 +0200
parents
children 0bb54205c55a
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ui/textoverlaybutton.cpp	Wed Jul 02 18:35:30 2014 +0200
@@ -0,0 +1,37 @@
+/* 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);
+    QPainter painter(this);
+    QFont font;
+    QRect myRect = e->rect().translated(0, 10);
+
+    //font.setFamily("Comic Sans MS");
+
+    font.setPixelSize(14);
+    font.setWeight(QFont::DemiBold);
+    painter.setFont(font);
+
+    //painter.setPen(Qt::white);
+    //painter.drawText(myRect.translated(1,1), Qt::AlignCenter, "20");
+    painter.setPen(qApp->palette().color(QPalette::ButtonText));
+    painter.drawText(myRect, Qt::AlignCenter | Qt::AlignVCenter, mOverlay);
+
+    return;
+}

http://wald.intevation.org/projects/trustbridge/