#pragma once #include #include "ui_frmImageRotate.h" #include #include "mytitlebar.h" #include "QGraphicsViews.h" #include "Toolnterface.h" class frmImageRotate : public Toolnterface { Q_OBJECT public: frmImageRotate(QString toolName, QToolBase* toolBase, QWidget* parent = Q_NULLPTR); ~frmImageRotate(); private: Ui::frmImageRotateClass ui; public: virtual int Execute(const QString toolname); virtual int ExecuteLink(const int int_link, const QString str_link, const QMap variable_link = QMap()); virtual int ExecuteAllLink(const QMap g_variable_link); private: void initTitleBar(); void paintEvent(QPaintEvent* event); private slots: void onButtonCloseClicked(); protected: MyTitleBar* m_titleBar; QString toolTitleName; private slots: void on_btnExecute_clicked(); void on_btnLinkImage_clicked(); void on_btnDelLinkImage_clicked(); private: int RunToolPro(); QImage Mat2QImage(const cv::Mat& mat); bool ImgRotate(const cv::Mat src, const float angle, cv::Mat& out_dst); private: gVariable gvariable; QGraphicsViews* view; QStringList strs; cv::Mat srcImage; cv::Mat dstImage; int image_index = 0; int tool_index = 0; }; //全局变量控制 class QConfig { public: static int nFormState; };