ENLIGHTEN
Cross-platform desktop GUI for Wasatch Photonics spectrometers
Loading...
Searching...
No Matches
display.h
Go to the documentation of this file.
1
26
27#ifndef DISPLAY_H
28#define DISPLAY_H
29
30#include <QGraphicsScene>
31#include <QGraphicsView>
32
33#include <QImage>
34#include <QMutex>
35#include <QRect>
36#include <QWidget>
37
38
39
40class CustomGraphicsScene : public QGraphicsScene
41{
42 Q_OBJECT
43
44public:
45 explicit CustomGraphicsScene(QWidget* pParent = nullptr);
46
47 void setImage(QImage image);
48
49private:
50 void drawBackground(QPainter* painter, const QRectF& rect) override;
51
52 QMutex m_mutex{};
53 QImage m_image;
54};
55
56class CustomGraphicsView : public QWidget
57{
58 Q_OBJECT
59
60public:
61 explicit CustomGraphicsView(QWidget* parent = nullptr);
62
63private:
65 QGraphicsView* m_view;
66
67public slots:
68 void onImageReceived(QImage image);
69};
70
71#endif // DISPLAY_H
Definition display.h:45
QImage m_image
Definition display.h:57
void setImage(QImage image)
void drawBackground(QPainter *painter, const QRectF &rect) override
CustomGraphicsScene(CustomDisplay *pParent)
Definition display.cpp:120
QMutex m_mutex
Definition display.h:52
CustomGraphicsScene * m_scene
Definition display.h:64
QGraphicsView * m_view
Definition display.h:65
void onImageReceived(QImage image)
Definition display.cpp:48
CustomGraphicsView(QWidget *parent=nullptr)
Definition display.cpp:33