1// Copyright (C) 2023 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
3
4//
5// W A R N I N G
6// -------------
7//
8// This file is not part of the QtGraphs API. It exists purely as an
9// implementation detail. This header file may change from version to
10// version without notice, or even be removed.
11//
12// We mean it.
13
14#ifndef QITEMMODELBARDATAPROXY_P_H
15#define QITEMMODELBARDATAPROXY_P_H
16
17#include "qitemmodelbardataproxy.h"
18#include "qbardataproxy_p.h"
19
20QT_BEGIN_NAMESPACE
21
22class BarItemModelHandler;
23
24class QItemModelBarDataProxyPrivate : public QBarDataProxyPrivate
25{
26 Q_DECLARE_PUBLIC(QItemModelBarDataProxy)
27
28public:
29 QItemModelBarDataProxyPrivate(QItemModelBarDataProxy *q);
30 virtual ~QItemModelBarDataProxyPrivate();
31
32 void connectItemModelHandler();
33
34private:
35 BarItemModelHandler *m_itemModelHandler;
36
37 QString m_rowRole;
38 QString m_columnRole;
39 QString m_valueRole;
40 QString m_rotationRole;
41
42 // For row/column items, sort items into these categories. Other categories are ignored.
43 QStringList m_rowCategories;
44 QStringList m_columnCategories;
45
46 bool m_useModelCategories;
47 bool m_autoRowCategories;
48 bool m_autoColumnCategories;
49
50 QRegularExpression m_rowRolePattern;
51 QRegularExpression m_columnRolePattern;
52 QRegularExpression m_valueRolePattern;
53 QRegularExpression m_rotationRolePattern;
54
55 QString m_rowRoleReplace;
56 QString m_columnRoleReplace;
57 QString m_valueRoleReplace;
58 QString m_rotationRoleReplace;
59
60 QItemModelBarDataProxy::MultiMatchBehavior m_multiMatchBehavior;
61
62 friend class BarItemModelHandler;
63};
64
65QT_END_NAMESPACE
66
67#endif
68

source code of qtgraphs/src/graphs/data/qitemmodelbardataproxy_p.h