ScreenTranslator/src/capture/captureareaselector.h

38 lines
791 B
C
Raw Normal View History

2020-02-21 00:45:53 +07:00
#pragma once
2020-03-21 19:16:57 +07:00
#include "stfwd.h"
2020-02-21 00:45:53 +07:00
#include <QWidget>
class QScreen;
2020-03-21 19:16:57 +07:00
class CaptureAreaSelector : public QWidget
2020-02-21 00:45:53 +07:00
{
Q_OBJECT
public:
2020-03-21 19:22:29 +07:00
CaptureAreaSelector(Capturer &capturer, const Settings &settings);
2020-02-21 00:45:53 +07:00
void setScreen(QScreen &screen);
protected:
void showEvent(QShowEvent *event) override;
void keyPressEvent(QKeyEvent *event) override;
void mousePressEvent(QMouseEvent *event) override;
void mouseMoveEvent(QMouseEvent *event) override;
void mouseReleaseEvent(QMouseEvent *event) override;
void paintEvent(QPaintEvent *event) override;
private:
2020-03-21 19:22:29 +07:00
void updateHelp();
2020-02-21 00:45:53 +07:00
Capturer &capturer_;
2020-03-21 19:22:29 +07:00
const Settings &settings_;
2020-02-21 00:45:53 +07:00
QPixmap pixmap_;
QPoint startSelectPos_;
QPoint currentSelectPos_;
2020-03-21 19:22:29 +07:00
QString help_;
QRect currentHelpRect_;
std::vector<QRect> helpRects_;
2020-02-21 00:45:53 +07:00
};