1 | /* |
2 | * Copyright 2007-2009 Parker Coates <coates@kde.org> |
3 | * |
4 | * This file is part of Killbots. |
5 | * |
6 | * Killbots is free software: you can redistribute it and/or modify |
7 | * it under the terms of the GNU General Public License as published by |
8 | * the Free Software Foundation, either version 2 of the License, or |
9 | * (at your option) any later version. |
10 | * |
11 | * Killbots is distributed in the hope that it will be useful, |
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
14 | * GNU General Public License for more details. |
15 | * |
16 | * You should have received a copy of the GNU General Public License |
17 | * along with Killbots. If not, see <http://www.gnu.org/licenses/>. |
18 | */ |
19 | |
20 | #ifndef KILLBOTS_NUMERICDISPLAYITEM_H |
21 | #define KILLBOTS_NUMERICDISPLAYITEM_H |
22 | |
23 | #include <KGameRenderedItem> |
24 | |
25 | #include <QtGui/QFont> |
26 | |
27 | namespace Killbots |
28 | { |
29 | |
30 | class NumericDisplayItem : public QObject, public KGameRenderedItem |
31 | { |
32 | Q_OBJECT |
33 | |
34 | public: // functions |
35 | explicit NumericDisplayItem( const QString & label = QString(), QGraphicsItem * parent = 0 ); |
36 | virtual ~NumericDisplayItem(); |
37 | |
38 | int value() const; |
39 | QString label() const; |
40 | int digits() const; |
41 | QFont font() const; |
42 | QSize preferredSize(); |
43 | |
44 | virtual void paint( QPainter * p, const QStyleOptionGraphicsItem * option, QWidget * widget = 0 ); |
45 | |
46 | public slots: |
47 | void setValue( int value ); |
48 | void setLabel( const QString & label ); |
49 | void setDigits( int digits ); |
50 | void setFont( const QFont & font ); |
51 | |
52 | private: // data members |
53 | QString m_label; |
54 | int m_value; |
55 | int m_digits; |
56 | |
57 | int m_margin; |
58 | |
59 | QFont m_font; |
60 | QFont m_boldFont; |
61 | }; |
62 | } |
63 | |
64 | #endif |
65 | |