6#include <QtWidgets/QGraphicsRectItem>
9#include <istd/IChangeable.h>
12#include <imtloggui/IEventScenePositionProvider.h>
19class CProductionQualityItem:
public QGraphicsRectItem
22 typedef QGraphicsRectItem BaseClass;
30 CProductionQualityItem(QGraphicsItem* parent =
nullptr);
31 istd::IChangeable* GetModel();
32 void SetModel(istd::IChangeable* modelPtr);
33 void SetScenePositionProvider(IEventScenePositionProvider* providerPtr);
34 void SetStyle(DrawStyle style);
37 virtual QRectF boundingRect()
const override;
38 virtual void paint(QPainter* painter,
const QStyleOptionGraphicsItem* option, QWidget* widget =
nullptr)
override;
39 virtual void hoverMoveEvent(QGraphicsSceneHoverEvent *event)
override;
42 bool IsEmptyInterval(
int i);
43 void PreparePointArrays();
44 void DrawBars(QPainter* painter);
45 void DrawPolylines(QPainter* painter);
46 void DrawLegend(QPainter* painter);
49 istd::IChangeable* m_modelPtr;
50 IEventScenePositionProvider* m_positionProviderPtr;
52 QVector<QPointF> m_okPoints;
53 QVector<QPointF> m_warningPoints;
54 QVector<QPointF> m_nokPoints;
55 QVector<QPointF> m_errorsPoints;