11 #ifndef KDCHARTPIEDIAGRAM_H
12 #define KDCHARTPIEDIAGRAM_H
18 class LabelPaintCache;
48 LineFromSliceDecoration = 2
50 Q_DECLARE_FLAGS(LabelDecorations, LabelDecoration)
52 void setLabelDecorations(LabelDecorations decorations);
54 LabelDecorations labelDecorations()
const;
60 void setLabelCollisionAvoidanceEnabled(
bool enabled);
62 bool isLabelCollisionAvoidanceEnabled()
const;
65 void resize(
const QSizeF &area)
override;
69 qreal valueTotals()
const override;
71 qreal numberOfValuesPerDataset()
const override;
73 qreal numberOfGridRings()
const override;
79 const QPair<QPointF, QPointF> calculateDataBoundaries()
const override;
80 void paintEvent(QPaintEvent *)
override;
81 void resizeEvent(QResizeEvent *)
override;
87 void shuffleLabels(QRectF *textBoundingRect);
89 void drawSlice(QPainter *painter,
const QRectF &drawPosition, uint slice);
90 void drawSliceSurface(QPainter *painter,
const QRectF &drawPosition, uint slice);
91 void addSliceLabel(LabelPaintCache *lpc,
const QRectF &drawPosition, uint slice);
92 void draw3DEffect(QPainter *painter,
const QRectF &drawPosition, uint slice);
93 void draw3dCutSurface(QPainter *painter,
97 void draw3dOuterRim(QPainter *painter,
102 void calcSliceAngles();
103 void calcPieSize(
const QRectF &contentsRect);
104 QRectF twoDPieRect(
const QRectF &contentsRect,
const ThreeDPieAttributes &threeDAttrs)
const;
105 QRectF explodedDrawPosition(
const QRectF &drawPosition, uint slice)
const;
106 uint findSliceAt(qreal angle,
int columnCount);
107 uint findLeftSlice(uint slice,
int columnCount);
108 uint findRightSlice(uint slice,
int columnCount);
109 QPointF pointOnEllipse(
const QRectF &boundingBox, qreal angle);
112 Q_DECLARE_OPERATORS_FOR_FLAGS(PieDiagram::LabelDecorations)
#define KDCHART_DECLARE_DERIVED_DIAGRAM(X, PLANE)
Base class for any diagram type.
Stores information about painting diagrams.
PieDiagram defines a common pie diagram.
A set of 3D pie attributes.