1// Copyright (C) 2024 The Qt Company Ltd.
2
3// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
4#ifndef QXYMODELMAPPER_H
5#define QXYMODELMAPPER_H
6#include <QtCore/qobject.h>
7#include <QtGraphs/qgraphsglobal.h>
8#include <QtQmlIntegration/qqmlintegration.h>
9
10Q_MOC_INCLUDE(<QtGraphs / qxyseries.h>)
11Q_MOC_INCLUDE(<QtCore / qabstractitemmodel.h>)
12
13QT_BEGIN_NAMESPACE
14
15class QXYModelMapperPrivate;
16class QXYSeries;
17class QAbstractItemModel;
18
19class Q_GRAPHS_EXPORT QXYModelMapper : public QObject
20{
21 Q_OBJECT
22 Q_PROPERTY(QXYSeries *series READ series WRITE setSeries NOTIFY seriesChanged FINAL)
23 Q_PROPERTY(QAbstractItemModel *model READ model WRITE setModel NOTIFY modelChanged FINAL)
24 Q_PROPERTY(qsizetype xSection READ xSection WRITE setXSection NOTIFY xSectionChanged FINAL)
25 Q_PROPERTY(qsizetype ySection READ ySection WRITE setYSection NOTIFY ySectionChanged FINAL)
26 Q_PROPERTY(qsizetype first READ first WRITE setFirst NOTIFY firstChanged FINAL)
27 Q_PROPERTY(qsizetype count READ count WRITE setCount NOTIFY countChanged FINAL)
28 Q_PROPERTY(Qt::Orientation orientation READ orientation WRITE setOrientation NOTIFY
29 orientationChanged FINAL)
30 QML_NAMED_ELEMENT(XYModelMapper)
31 Q_DECLARE_PRIVATE(QXYModelMapper)
32public:
33 explicit QXYModelMapper(QObject *parent = nullptr);
34 ~QXYModelMapper() override;
35
36 QAbstractItemModel *model() const;
37 void setModel(QAbstractItemModel *model);
38
39 QXYSeries *series() const;
40 void setSeries(QXYSeries *series);
41
42 qsizetype first() const;
43 void setFirst(qsizetype first);
44
45 qsizetype count() const;
46 void setCount(qsizetype count);
47
48 Qt::Orientation orientation() const;
49 void setOrientation(Qt::Orientation orientation);
50
51 qsizetype xSection() const;
52 void setXSection(qsizetype xSection);
53
54 qsizetype ySection() const;
55 void setYSection(qsizetype ySection);
56Q_SIGNALS:
57 void seriesChanged();
58 void modelChanged();
59 void xSectionChanged();
60 void ySectionChanged();
61 void firstChanged();
62 void countChanged();
63 void orientationChanged();
64
65protected:
66 QXYModelMapper(QXYModelMapperPrivate &dd, QObject *parent = nullptr);
67
68 Q_DISABLE_COPY_MOVE(QXYModelMapper)
69};
70
71QT_END_NAMESPACE
72
73#endif // QXYMODELMAPPER_H
74

Provided by KDAB

Privacy Policy
Learn to use CMake with our Intro Training
Find out more

source code of qtgraphs/src/graphs2d/xychart/qxymodelmapper.h