qt/LedOK/oescreenshot/oemodelview.h
2022-01-04 18:11:48 +08:00

62 lines
1.1 KiB
C++

#ifndef OEMODELVIEW_H
#define OEMODELVIEW_H
#include <QWidget>
#include <QMap>
#include <QColor>
#include <QPoint>
class OEModelView : public QWidget
{
Q_OBJECT
public:
/**
* @brief : 模型种类
*/
enum MODEL{
Arrows = 0, /// 箭头
Rectangle = 1, /// 矩形
Roundness /// 圆形
};
private:
typedef void (OEModelView::*PDRAWFUNC)
(const QPoint &,const QPoint &, QPainter&);
signals:
public:
explicit OEModelView(MODEL model = MODEL::Arrows,
QWidget *parent = 0);
protected:
/**
* @brief : 自绘事件
*/
virtual void paintEvent(QPaintEvent *);
private:
void drawArrows(const QPoint &startPoint,
const QPoint &endPoint,
QPainter& paiter);
public slots:
void onColor(const QColor &color);
private:
QColor color_;
PDRAWFUNC drawFunc_;
/// @bug : 莫名,开启此处变量的声明,程序就会崩溃。
// QPoint ssPoint331_;
// QPoint esoint233_;
};
#endif // OEMODELVIEW_H