]> git.sur5r.net Git - minitube/blob - src/refinesearchbutton.cpp
Imported Upstream version 1.9
[minitube] / src / refinesearchbutton.cpp
1 #include "refinesearchbutton.h"
2
3 static const int refineButtonSize = 48;
4
5 RefineSearchButton::RefineSearchButton(QWidget *parent) :
6     QPushButton(parent) {
7
8     hovered = false;
9
10     setMinimumSize(refineButtonSize, refineButtonSize);
11     setMaximumSize(refineButtonSize, refineButtonSize);
12     setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed);
13     setStyleSheet(
14                 "background: red url(:/images/refine-search.png) no-repeat center;"
15                 "border: 0;"
16                 );
17 }
18
19 void RefineSearchButton::paintBackground() const {
20
21 }
22
23 void RefineSearchButton::paintEvent(QPaintEvent *event) {
24     // QPushButton::paintEvent(event);
25     QPainter painter(this);
26     painter.setRenderHints(QPainter::Antialiasing, true);
27     painter.setBrush(QColor(0,0,0, hovered ? 192 : 170));
28     QPen pen(Qt::white);
29     pen.setWidth(2);
30     painter.setPen(pen);
31     painter.drawEllipse(QPoint(width(), height()), width()-2, height()-2);
32
33     QPixmap icon = QPixmap(":/images/refine-search.png");
34     painter.drawPixmap(width() - icon.width() - 6, height() - icon.height() - 6,
35                        icon.width(), icon.height(),
36                        icon);
37 }
38
39 void RefineSearchButton::enterEvent(QEvent *) {
40     hovered = true;
41     update();
42 }
43
44 void RefineSearchButton::leaveEvent(QEvent *) {
45     hovered = false;
46     update();
47 }