KD Chart API Documentation  3.1
KDChartLeveyJenningsDiagram.h
Go to the documentation of this file.
1 /****************************************************************************
2 **
3 ** This file is part of the KD Chart library.
4 **
5 ** SPDX-FileCopyrightText: 2001 Klarälvdalens Datakonsult AB, a KDAB Group company <info@kdab.com>
6 **
7 ** SPDX-License-Identifier: MIT
8 **
9 ****************************************************************************/
10 
11 #ifndef KDCHARTLEVEYJENNINGSDIAGRAM_H
12 #define KDCHARTLEVEYJENNINGSDIAGRAM_H
13 
15 #include "KDChartLineDiagram.h"
16 
17 QT_BEGIN_NAMESPACE
18 class QPainter;
19 class QPolygonF;
20 class QSvgRenderer;
21 QT_END_NAMESPACE
22 
23 namespace KDChart {
24 
25 class ThreeDLineAttributes;
26 
32 class KDCHART_EXPORT LeveyJenningsDiagram : public LineDiagram
33 {
34  Q_OBJECT
35 
36  Q_DISABLE_COPY(LeveyJenningsDiagram)
37  // KDCHART_DECLARE_PRIVATE_DERIVED_PARENT( LineDiagram, CartesianCoordinatePlane * )
38 
40 
41 public:
42  explicit LeveyJenningsDiagram(QWidget *parent = nullptr, LeveyJenningsCoordinatePlane *plane = nullptr);
43  ~LeveyJenningsDiagram() override;
44 
45  LineDiagram *clone() const override;
46 
47  enum Symbol
48  {
53  FluidicsPackChanged
54  };
55 
59  bool compare(const LeveyJenningsDiagram *other) const;
60 
61  void setLotChangedSymbolPosition(Qt::Alignment pos);
62  Qt::Alignment lotChangedSymbolPosition() const;
63 
64  void setFluidicsPackChangedSymbolPosition(Qt::Alignment pos);
65  Qt::Alignment fluidicsPackChangedSymbolPosition() const;
66 
67  void setSensorChangedSymbolPosition(Qt::Alignment pos);
68  Qt::Alignment sensorChangedSymbolPosition() const;
69 
70  void setExpectedMeanValue(float meanValue);
71  float expectedMeanValue() const;
72 
73  void setExpectedStandardDeviation(float sd);
74  float expectedStandardDeviation() const;
75 
76  float calculatedMeanValue() const;
77  float calculatedStandardDeviation() const;
78 
79  void setFluidicsPackChanges(const QVector<QDateTime> &changes);
80  QVector<QDateTime> fluidicsPackChanges() const;
81 
82  void setSensorChanges(const QVector<QDateTime> &changes);
83  QVector<QDateTime> sensorChanges() const;
84 
85  void setScanLinePen(const QPen &pen);
86  QPen scanLinePen() const;
87 
88  void setSymbol(Symbol symbol, const QString &filename);
89  QString symbol(Symbol symbol) const;
90 
91  /* \reimp */
92  void setModel(QAbstractItemModel *model) override;
93 
94  QPair<QDateTime, QDateTime> timeRange() const;
95  void setTimeRange(const QPair<QDateTime, QDateTime> &timeRange);
96 
97 protected:
98  void paint(PaintContext *paintContext) override;
99  void drawChanges(PaintContext *paintContext);
100 
101  virtual void drawDataPointSymbol(PaintContext *paintContext, const QPointF &pos, bool ok);
102  virtual void drawLotChangeSymbol(PaintContext *paintContext, const QPointF &pos);
103  virtual void drawSensorChangedSymbol(PaintContext *paintContext, const QPointF &pos);
104  virtual void drawFluidicsPackChangedSymbol(PaintContext *paintContext, const QPointF &pos);
105 
106  virtual QRectF iconRect() const;
107 
108  QSvgRenderer *iconRenderer(Symbol symbol);
109 
111  const QPair<QPointF, QPointF> calculateDataBoundaries() const override;
112 
113 protected Q_SLOTS:
114  void calculateMeanAndStandardDeviation() const;
115 }; // End of class KDChartLineDiagram
116 }
117 
118 #endif // KDCHARTLINEDIAGRAM_H
#define KDCHART_DECLARE_DERIVED_DIAGRAM(X, PLANE)
Levey Jennings coordinate plane This is actually nothing real more than a plain cartesian coordinate ...
LeveyDiagram defines a Levey Jennings chart.
LineDiagram defines a common line diagram.
Stores information about painting diagrams.

© 2001 Klarälvdalens Datakonsult AB (KDAB)
"The Qt, C++ and OpenGL Experts"
https://www.kdab.com/
https://www.kdab.com/development-resources/qt-tools/kd-chart/
Generated by doxygen 1.9.1