summaryrefslogtreecommitdiffstats
path: root/mybudget/src/widgets/coingraphicwidget.h
blob: 8888f0feb313bc49e64612e198543eecab92e316 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
/****************************************************************************
**
** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: qt-info@nokia.com
**
** This software, including documentation, is protected by copyright
** controlled by Nokia Corporation.  You may use this software in
** accordance with the terms and conditions contained in the Qt Phone
** Demo License Agreement.
**
****************************************************************************/

#ifndef _COINWIDGET_H_
#define _COINWIDGET_H_

#include "pdata.h"

#include <QGraphicsWidget>

class CoinGraphicWidget : public QGraphicsWidget
{
public:
    CoinGraphicWidget(int month, qreal overallSum, qreal maxValue, QPixmap *coin);
    ~CoinGraphicWidget();

    void updateValue(int month, qreal overallSum, qreal maxValue);

    void paint(QPainter *painter, const QStyleOptionGraphicsItem *option,
               QWidget *widget);

private:
    QList<int> offsets;
    int coins;

    QPixmap *coinPixmap;
    QPixmap labelLeft;
    QPixmap labelRight;
    QPixmap labelMiddle;
    QPixmap *graphCache;

    qreal percentValue;
    int labelOffset;
    QFont nokiaFont;
    int maxCoins;

    PData *db;

    int marginForCoins;

    void updateGraphCache(int coins);
};
#endif