~jocave/checkbox/hybrid-amd-gpu-mods

« back to all changes in this revision

Viewing changes to checkbox-old/qt/frontend/step.cpp

  • Committer: Tarmac
  • Author(s): Brendan Donegan
  • Date: 2013-06-03 11:12:58 UTC
  • mfrom: (2154.2.1 bug1185759)
  • Revision ID: tarmac-20130603111258-1b3m5ydvkf1accts
"[r=zkrynicki][bug=1185759][author=brendan-donegan] automatic merge by tarmac"

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#include <QHBoxLayout>
 
2
#include <QGraphicsScene>
 
3
#include <QGraphicsEllipseItem>
 
4
#include <QGraphicsView>
 
5
#include <QGraphicsTextItem>
 
6
#include <QLabel>
 
7
 
 
8
#include "step.h"
 
9
 
 
10
#define STEP_COLOR "#DD4814"
 
11
#define BORDER_COLOR "#000000"
 
12
#define TEXT_COLOR "#FFFFFF"
 
13
 
 
14
Step::Step(QWidget *parent, QString text, QString index)
 
15
{
 
16
    setParent(parent);
 
17
    setFixedWidth(470);
 
18
    QHBoxLayout *layout = new QHBoxLayout(this);
 
19
 
 
20
    if (index != "") {
 
21
        QGraphicsScene *scene = new QGraphicsScene(0, 0, 25, 25);
 
22
        QGraphicsEllipseItem *item = new QGraphicsEllipseItem(0, 0, 20, 20);
 
23
        item->setBrush(QBrush(STEP_COLOR));
 
24
        QPen pen;
 
25
        pen.setColor(BORDER_COLOR);
 
26
        pen.setWidthF(1.5);
 
27
        item->setPen(pen);
 
28
        item->setPos(1,1);
 
29
        scene->addItem(item);
 
30
        item->setPos(1,1);
 
31
        QGraphicsView *view = new QGraphicsView(scene);
 
32
        view->setRenderHint(QPainter::Antialiasing, true);
 
33
        view->setRenderHint(QPainter::TextAntialiasing, true);
 
34
        view->setFrameShape(QFrame::NoFrame);
 
35
        view->setBackgroundRole(QPalette::NoRole);
 
36
        view->setFixedSize(25, 25);
 
37
        QGraphicsTextItem *text = new QGraphicsTextItem(item, scene);
 
38
        text->setHtml("<center>"+index+"</center>");
 
39
        text->setPos(1,-3);
 
40
        text->setTextWidth(18);
 
41
        text->setDefaultTextColor(TEXT_COLOR);
 
42
        QFont boldFont;
 
43
        boldFont.setWeight(QFont::Bold);
 
44
        text->setFont(boldFont);
 
45
        layout->addWidget(view);
 
46
    } else {
 
47
        QWidget *widget = new QWidget(this);
 
48
        widget->setFixedWidth(50);
 
49
        layout->addWidget(widget);
 
50
    }
 
51
 
 
52
    QLabel *label = new QLabel(text);
 
53
    label->setWordWrap(true);
 
54
    label->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Maximum);
 
55
    layout->addWidget(label);
 
56
    show();
 
57
 
 
58
}
 
59
 
 
60
Step::~Step() {
 
61
    hide();
 
62
}