00001
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
00030 #ifndef KDCHARTPOLARDIAGRAM_H
00031 #define KDCHARTPOLARDIAGRAM_H
00032
00033
00034 #include "KDChartPosition.h"
00035 #include "KDChartAbstractPolarDiagram.h"
00036
00037
00038 class QPolygonF;
00039
00040
00041 namespace KDChart {
00042
00043 class KDCHART_EXPORT PolarDiagram : public AbstractPolarDiagram
00044 {
00045 Q_OBJECT
00046
00047 Q_DISABLE_COPY( PolarDiagram )
00048 KDCHART_DECLARE_DERIVED_DIAGRAM( PolarDiagram, PolarCoordinatePlane )
00049
00050 public:
00051 explicit PolarDiagram(
00052 QWidget* parent = 0, PolarCoordinatePlane* plane = 0 );
00053 virtual ~PolarDiagram();
00054
00055 protected:
00056
00058 virtual void paint ( PaintContext* paintContext );
00059
00060 public:
00062 virtual void resize ( const QSizeF& area );
00063
00064
00066 virtual double valueTotals () const;
00068 virtual double numberOfValuesPerDataset() const;
00070 virtual double numberOfGridRings() const;
00071
00072 virtual PolarDiagram * clone() const;
00073
00075 void setZeroDegreePosition( int degrees );
00077 int zeroDegreePosition() const;
00078
00079 void setRotateCircularLabels( bool rotateCircularLabels );
00080 bool rotateCircularLabels() const;
00081
00085 void setCloseDatasets( bool closeDatasets );
00086 bool closeDatasets() const;
00087
00088 void setShowDelimitersAtPosition( Position position,
00089 bool showDelimiters );
00090 void setShowLabelsAtPosition( Position position,
00091 bool showLabels );
00092
00093 bool showDelimitersAtPosition( Position position ) const;
00094
00095 bool showLabelsAtPosition( Position position ) const;
00096
00097 protected:
00099 virtual const QPair<QPointF, QPointF> calculateDataBoundaries() const;
00100 void paintEvent ( QPaintEvent* );
00101 void resizeEvent ( QResizeEvent* );
00102 virtual void paintPolarMarkers( PaintContext* ctx, const QPolygonF& polygon );
00103
00104 };
00105
00106 }
00107
00108
00109 #endif // KDCHARTPOLARDIAGRAM_H