summaryrefslogtreecommitdiff
path: root/noncore/apps/checkbook/graph.cpp
Unidiff
Diffstat (limited to 'noncore/apps/checkbook/graph.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/apps/checkbook/graph.cpp112
1 files changed, 112 insertions, 0 deletions
diff --git a/noncore/apps/checkbook/graph.cpp b/noncore/apps/checkbook/graph.cpp
new file mode 100644
index 0000000..bae92da
--- a/dev/null
+++ b/noncore/apps/checkbook/graph.cpp
@@ -0,0 +1,112 @@
1/*
2                This file is part of the OPIE Project
3 =.
4             .=l. Copyright (c) 2002 Dan Williams <williamsdr@acm.org>
5           .>+-=
6 _;:,     .>    :=|. This file is free software; you can
7.> <`_,   >  .   <= redistribute it and/or modify it under
8:`=1 )Y*s>-.--   : the terms of the GNU General Public
9.="- .-=="i,     .._ License as published by the Free Software
10 - .   .-<_>     .<> Foundation; either version 2 of the License,
11     ._= =}       : or (at your option) any later version.
12    .%`+i>       _;_.
13    .i_,=:_.      -<s. This file is distributed in the hope that
14     +  .  -:.       = it will be useful, but WITHOUT ANY WARRANTY;
15    : ..    .:,     . . . without even the implied warranty of
16    =_        +     =;=|` MERCHANTABILITY or FITNESS FOR A
17  _.=:.       :    :=>`: PARTICULAR PURPOSE. See the GNU General
18..}^=.=       =       ; Public License for more details.
19++=   -.     .`     .:
20 :     =  ...= . :.=- You should have received a copy of the GNU
21 -.   .:....=;==+<; General Public License along with this file;
22  -_. . .   )=.  = see the file COPYING. If not, write to the
23    --        :-=` Free Software Foundation, Inc.,
24 59 Temple Place - Suite 330,
25 Boston, MA 02111-1307, USA.
26
27*/
28
29#include "graph.h"
30#include "graphinfo.h"
31
32#include <qpainter.h>
33
34Graph::Graph( QWidget *parent, GraphInfo *d, const QString &name, int flags )
35 : QWidget( parent, name, flags )
36{
37 setBackgroundMode( QWidget::PaletteBase );
38
39 data = d;
40
41 graph.setOptimization( QPixmap::BestOptim );
42}
43
44void Graph::setGraphInfo( GraphInfo *d )
45{
46 data = d;
47}
48
49void Graph::drawGraph( bool regen )
50{
51 if ( regen )
52 {
53 initGraph();
54 }
55 QPainter p( this );
56 p.drawPixmap( 0, 0, graph );
57}
58
59void Graph::paintEvent( QPaintEvent * )
60{
61 drawGraph( FALSE );
62}
63
64void Graph::resizeEvent( QResizeEvent * )
65{
66 drawGraph( TRUE );
67}
68
69void Graph::initGraph()
70{
71 graph.resize( width(), height() );
72 graph.fill( QColor( 255, 255, 255 ) );
73
74 if ( !data )
75 {
76 return;
77 }
78
79 // Any common stuff here (titles, ???)
80
81 switch ( data->graphType() )
82 {
83 case GraphInfo::BarChart :
84 {
85 drawBarChart();
86 }
87 break;
88 case GraphInfo::LineChart :
89 {
90 drawLineChart();
91 }
92 break;
93 case GraphInfo::PieChart :
94 {
95 drawPieChart();
96 }
97 };
98}
99
100void Graph::drawBarChart()
101{
102 //Find max value in GraphInfo->dataPoints() - make function in GraphInfo!!!
103}
104
105void Graph::drawLineChart()
106{
107}
108
109void Graph::drawPieChart()
110{
111}
112