1 #pragma once 2 3 #ifndef SCREEN_PICKER_H 4 #define SCREEN_PICKER_H 5 6 #include "toonzqt/screenboard.h" 7 8 #include <QWidget> 9 10 //---------------------------------------------------------------------- 11 12 class ScreenPicker final : public QObject, public DVGui::ScreenBoard::Drawing { 13 Q_OBJECT 14 15 QPoint m_start; 16 QRect m_geometry; 17 18 bool m_mousePressed, m_mouseGrabbed; 19 20 public: 21 ScreenPicker(QWidget *parent = 0); 22 23 protected: 24 void event(QWidget *widget, QEvent *e) override; 25 26 void mousePressEvent(QWidget *widget, QMouseEvent *me); 27 void mouseMoveEvent(QWidget *widget, QMouseEvent *me); 28 void mouseReleaseEvent(QWidget *widget, QMouseEvent *me); 29 30 void paintEvent(QWidget *widget, QPaintEvent *pe) override; 31 32 bool acceptScreenEvents(const QRect &screenRect) const override; 33 34 public slots: 35 36 void startGrab(); 37 void pick(); 38 }; 39 40 #endif // SCREEN_PICKER_H 41