1// Copyright (C) 2024 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
3#ifndef QTGRAPHS_QGRAPHS3DNAMESPACE_H
4#define QTGRAPHS_QGRAPHS3DNAMESPACE_H
5#include <QtCore/qobjectdefs.h>
6#include <QtGraphs/qtgraphsexports.h>
7#include <QtQmlIntegration/qqmlintegration.h>
8
9QT_BEGIN_NAMESPACE
10
11namespace QtGraphs3D {
12
13Q_NAMESPACE_EXPORT(Q_GRAPHS_EXPORT)
14QML_NAMED_ELEMENT(Graphs3D)
15
16enum class SelectionFlag {
17 None = 0x00,
18 Item = 0x01,
19 Row = 0x02,
20 ItemAndRow = Item | Row,
21 Column = 0x04,
22 ItemAndColumn = Item | Column,
23 RowAndColumn = Row | Column,
24 ItemRowAndColumn = Item | Row | Column,
25 Slice = 0x08,
26 MultiSeries = 0x10,
27};
28Q_FLAG_NS(SelectionFlag)
29Q_DECLARE_FLAGS(SelectionFlags, SelectionFlag)
30
31enum class SliceCaptureType {
32 NoImage,
33 RowImage,
34 ColumnImage,
35};
36Q_ENUM_NS(SliceCaptureType)
37
38enum class ShadowQuality {
39 None,
40 Low,
41 Medium,
42 High,
43 SoftLow,
44 SoftMedium,
45 SoftHigh,
46};
47Q_ENUM_NS(ShadowQuality)
48
49enum class ElementType {
50 None,
51 Series,
52 AxisXLabel,
53 AxisYLabel,
54 AxisZLabel,
55 CustomItem,
56};
57Q_ENUM_NS(ElementType)
58
59enum class OptimizationHint {
60 Default,
61 Legacy,
62};
63Q_ENUM_NS(OptimizationHint)
64
65enum class RenderingMode {
66 DirectToBackground,
67 Indirect,
68};
69Q_ENUM_NS(RenderingMode)
70
71enum class CameraPreset {
72 NoPreset,
73 FrontLow,
74 Front,
75 FrontHigh,
76 LeftLow,
77 Left,
78 LeftHigh,
79 RightLow,
80 Right,
81 RightHigh,
82 BehindLow,
83 Behind,
84 BehindHigh,
85 IsometricLeft,
86 IsometricLeftHigh,
87 IsometricRight,
88 IsometricRightHigh,
89 DirectlyAbove,
90 DirectlyAboveCW45,
91 DirectlyAboveCCW45,
92 FrontBelow,
93 LeftBelow,
94 RightBelow,
95 BehindBelow,
96 DirectlyBelow,
97};
98Q_ENUM_NS(CameraPreset)
99
100enum class GridLineType { Shader, Geometry };
101Q_ENUM_NS(GridLineType)
102
103enum class TransparencyTechnique {
104 Default,
105 Approximate,
106 Accurate,
107};
108Q_ENUM_NS(TransparencyTechnique)
109
110} // namespace QtGraphs3D
111Q_DECLARE_OPERATORS_FOR_FLAGS(QtGraphs3D::SelectionFlags)
112
113QT_END_NAMESPACE
114
115#endif // QTGRAPHS_QGRAPHS3DNAMESPACE_H
116

source code of qtgraphs/src/graphs3d/utils/qgraphs3dnamespace.h