File indexing completed on 2024-05-26 04:23:56
0001 /* 0002 * SPDX-FileCopyrightText: 2001-2015 Klaralvdalens Datakonsult AB. All rights reserved. 0003 * 0004 * This file is part of the KD Chart library. 0005 * 0006 * SPDX-License-Identifier: GPL-2.0-or-later 0007 */ 0008 0009 #ifndef KCHARTPIEDIAGRAM_P_H 0010 #define KCHARTPIEDIAGRAM_P_H 0011 0012 // 0013 // W A R N I N G 0014 // ------------- 0015 // 0016 // This file is not part of the KD Chart API. It exists purely as an 0017 // implementation detail. This header file may change from version to 0018 // version without notice, or even be removed. 0019 // 0020 // We mean it. 0021 // 0022 0023 #include "KChartPieDiagram.h" 0024 #include "KChartAbstractPieDiagram_p.h" 0025 #include "KChartMath_p.h" 0026 0027 0028 namespace KChart { 0029 0030 /** 0031 * \internal 0032 */ 0033 class Q_DECL_HIDDEN PieDiagram::Private : public AbstractPieDiagram::Private 0034 { 0035 friend class PieDiagram; 0036 public: 0037 Private(); 0038 ~Private() override; 0039 0040 Private( const Private& rhs ) : 0041 AbstractPieDiagram::Private( rhs ), 0042 startAngles(), 0043 angleLens(), 0044 size( 0 ), 0045 labelDecorations( NoDecoration ), 0046 isCollisionAvoidanceEnabled( false ) 0047 { 0048 // just for consistency 0049 } 0050 0051 protected: 0052 // this information needed temporarily at drawing time 0053 QVector< qreal > startAngles; 0054 QVector< qreal > angleLens; 0055 qreal size; 0056 LabelPaintCache labelPaintCache; 0057 PieDiagram::LabelDecorations labelDecorations; 0058 bool isCollisionAvoidanceEnabled; 0059 }; 0060 0061 KCHART_IMPL_DERIVED_DIAGRAM( PieDiagram, AbstractPieDiagram, PolarCoordinatePlane ) 0062 0063 } 0064 0065 #endif /* KCHARTPIEDIAGRAM_P_H */