-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathdisplay.h
More file actions
41 lines (33 loc) · 951 Bytes
/
Copy pathdisplay.h
File metadata and controls
41 lines (33 loc) · 951 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#ifndef DISPLAY_H
#define DISPLAY_H
#include <QGraphicsPixmapItem>
#include <QGraphicsView>
#include <QObject>
class QGraphicsScene;
class Display;
class mousePixmapItem : public QGraphicsPixmapItem {
public:
mousePixmapItem(Display *display, QGraphicsItem *parent = nullptr)
: QGraphicsPixmapItem(parent), m_displ(display) {}
private:
Display *m_displ;
protected:
void mousePressEvent(QGraphicsSceneMouseEvent *event);
};
class Display : public QGraphicsView {
Q_OBJECT
public:
Display(QWidget *parent = nullptr);
public slots:
void clean();
void loadARGB32(uint32_t *data, uint32_t width, uint32_t height);
void loadARGB32Scaled(uint32_t *data, uint32_t width, uint32_t height,
uint32_t scale);
signals:
void leftClick(uint32_t x, uint32_t y);
void rightClick(uint32_t x, uint32_t y);
private:
QGraphicsScene *m_scene = nullptr;
mousePixmapItem *m_item = nullptr;
};
#endif // DISPLAY_H