mirror of https://github.com/qt/qtgraphs.git
47 lines
1013 B
C++
47 lines
1013 B
C++
// Copyright (C) 2024 The Qt Company Ltd.
|
|
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
|
|
|
|
#ifndef PIEGRAPH_H
|
|
#define PIEGRAPH_H
|
|
|
|
#include <QObject>
|
|
#include <QPieSeries>
|
|
#include <QPieSlice>
|
|
|
|
class PieGraph : public QObject
|
|
{
|
|
Q_OBJECT
|
|
//! [0]
|
|
Q_PROPERTY(QPieSeries *pieSeries READ pieSeries WRITE setPieSeries NOTIFY pieSeriesChanged FINAL)
|
|
//! [0]
|
|
public:
|
|
explicit PieGraph(QObject *parent = nullptr);
|
|
~PieGraph();
|
|
|
|
QPieSeries *pieSeries() const;
|
|
void setPieSeries(QPieSeries *series);
|
|
void appendSlice();
|
|
void removeSlice();
|
|
void explodeSlices();
|
|
void clearSeries();
|
|
void fillSliceInfo();
|
|
public Q_SLOTS:
|
|
void onAddSlice();
|
|
void onRemoveSlice();
|
|
void onExplode();
|
|
void onClearSeries();
|
|
Q_SIGNALS:
|
|
void pieSeriesChanged();
|
|
private:
|
|
QPieSeries *m_pieSeries;
|
|
|
|
struct SliceInfo
|
|
{
|
|
QList<int> value;
|
|
QList<QColor> color;
|
|
QList<QString> label;
|
|
} m_sliceInfo;
|
|
};
|
|
|
|
#endif // PIEGRAPH_H
|