kchart
KDChartBarPainter.h00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029 #ifndef __KDCHARTBARPAINTER_H__
00030 #define __KDCHARTBARPAINTER_H__
00031
00032 #include "KDChartAxesPainter.h"
00033 #include <KDChartTable.h>
00034
00035 #include <qnamespace.h>
00036
00037 class KDChartParams;
00038
00039 class KDChartBarPainter : public KDChartAxesPainter, public Qt
00040 {
00041 friend class KDChartPainter;
00042 protected:
00043 KDChartBarPainter( KDChartParams* params );
00044 virtual ~KDChartBarPainter();
00045
00046
00047
00048
00049
00050
00051
00052 virtual bool isNormalMode() const;
00053 virtual int clipShiftUp( bool normalMode, double areaWidthP1000 ) const;
00054 virtual void specificPaintData( QPainter* painter,
00055 const QRect& ourClipRect,
00056 KDChartTableDataBase* data,
00057 KDChartDataRegionList* regions,
00058 const KDChartAxisParams* axisPara,
00059 bool bNormalMode,
00060 uint chart,
00061 double logWidth,
00062 double areaWidthP1000,
00063 double logHeight,
00064 double axisYOffset,
00065 double minColumnValue,
00066 double maxColumnValue,
00067 double columnValueDistance,
00068 uint chartDatasetStart,
00069 uint chartDatasetEnd,
00070 uint datasetStart,
00071 uint datasetEnd );
00072 virtual void calculateXFront1_2( bool bNormalMode, bool bIsVeryFirstBar, bool bIsFirstDataset, bool _bThreeDBars,
00073 double xpos, double valueBlockGap, double datasetGap, double frontBarWidth,
00074 int& frontX1, int& frontX2, int& previousFrontX2 );
00075 private:
00076 void initMyPainter( QPainter* painter );
00077 void shiftMyPainter( double dx, double dy );
00078 void shiftMyPainterBack();
00079 QPainter* _myPainter;
00080 double _painterDX;
00081 double _painterDY;
00082 bool _bThreeDBars;
00083 double _areaP1000;
00084 };
00085
00086 #endif
|