tahoma2d/toonz/sources/include/tools/screenpicker.h

41 lines
859 B
C
Raw Normal View History

2016-05-17 03:04:11 +12:00
#pragma once
2016-03-19 06:57:51 +13:00
#ifndef SCREEN_PICKER_H
#define SCREEN_PICKER_H
#include "toonzqt/screenboard.h"
#include <QWidget>
//----------------------------------------------------------------------
class ScreenPicker final : public QObject, public DVGui::ScreenBoard::Drawing {
2016-06-15 18:43:10 +12:00
Q_OBJECT
2016-03-19 06:57:51 +13:00
2016-06-15 18:43:10 +12:00
QPoint m_start;
QRect m_geometry;
2016-03-19 06:57:51 +13:00
2016-06-15 18:43:10 +12:00
bool m_mousePressed, m_mouseGrabbed;
2016-03-19 06:57:51 +13:00
public:
2016-06-15 18:43:10 +12:00
ScreenPicker(QWidget *parent = 0);
2016-03-19 06:57:51 +13:00
protected:
2016-06-19 20:06:29 +12:00
void event(QWidget *widget, QEvent *e) override;
2016-03-19 06:57:51 +13:00
2016-06-15 18:43:10 +12:00
void mousePressEvent(QWidget *widget, QMouseEvent *me);
void mouseMoveEvent(QWidget *widget, QMouseEvent *me);
void mouseReleaseEvent(QWidget *widget, QMouseEvent *me);
2016-03-19 06:57:51 +13:00
2016-06-19 20:06:29 +12:00
void paintEvent(QWidget *widget, QPaintEvent *pe) override;
2016-03-19 06:57:51 +13:00
2016-06-19 20:06:29 +12:00
bool acceptScreenEvents(const QRect &screenRect) const override;
2016-03-19 06:57:51 +13:00
public slots:
2016-06-15 18:43:10 +12:00
void startGrab();
void pick();
2016-03-19 06:57:51 +13:00
};
2016-06-15 18:43:10 +12:00
#endif // SCREEN_PICKER_H