EmbHMI/sharedviews/patternmanagewidget.h
2024-02-06 14:27:07 +08:00

135 lines
4.0 KiB
C++

#ifndef PatternManageWidget_H
#define PatternManageWidget_H
#include <QWidget>
#include <QDir>
#ifdef Q_OS_WIN
#include <windef.h>
#include <winbase.h>
#endif
#include "setcontrolstyle.h"
#include "mybutton.h"
#include "items/fileitem.h"
#include "promptdialog.h"
#include "wordsinputdialog.h"
//#include "Include/datafiledst.h"
#include "datafile/datafiledst.h"
#include "datafile/datafiledsr.h"
#include <QMouseEvent>
#include <QDateTime>
#include "mctype/mainwidgetfunction.h"
namespace Ui {
class PatternManageWidget;
}
class PatternManageWidget : public QWidget
{
Q_OBJECT
public:
explicit PatternManageWidget(QWidget *parent = 0);
~PatternManageWidget();
enum MANAGE_MODE {MANAGE_IMPORT = 0, MANAGE_EXPORT, MANAGE_DELETE,MANAGE_IMPORT_EXEC,MANAGE_EXPORT_EXEC};
private:
Ui::PatternManageWidget *ui;
int m_itemPerPage;//界面每页条目数
QList<MyButton*> m_itemBtnList;
private:
QList<FileItem> m_fileItemList;//文件列表
QList<QString> m_selectFileItemList;//选中文件列表
QList<QString> m_cpSelectFileItemList;//选中文件列表
int m_curPages;//当前页
int m_pageNums;//总页数
QString m_usbPath;//优盘路径
QString m_rootPath;//操作屏根路径
QString m_curPath;//当前路径
int m_selectAll;//1:全选 -1:全不选
MANAGE_MODE m_manageMode;//导入、导出、删除
QSize m_imgSize;
private:
void initialize();//初始化
void initControl();//初始化窗体控件,包括位置、尺寸、样式
void initResolution1910();//初始化窗体控件为1920x1080分辨率
void initResolution1006();//初始化窗体控件为1024x600分辨率
void initControlStyle();//初始化窗体控件样式
void initArabControlPos();//设置阿拉伯语时控件对齐方式
public:
void setTypeLogo(QString tStyle);//设置类型图标
void setMainTitle(QString str);//设置主title
void setSubTitle(QString str);//设置副title
private:
void initDirPath(QString path);//初始化目录中的目录和文件
void initExecDirPath(QString path);//初始化目录中的目录
void refreshUi();//刷新界面显示
QString detectUsb();//检测优盘是否存在
void refreshCheckedPage();//刷新条目选中状态
void clickItem(int idx);//点击某一条目
void patternImportOrExport(QString mainStr,QString subStr,QString path);//花样导入或导出
void patternDelete();//花样删除
void clearFileInfo();
public:
void patternManage(MANAGE_MODE mode);//花样导入
void setImportImageSize(QSize imgSize); //设置导入花样时生成预览图片的图片大小(与花样选择界面的图片大小相同)
signals:
void siDeletePattern();//删除了文件的信号
void siReplacePattrn(QString path);//替换了文件的信号
private slots:
void on_button1_clicked();
void on_button2_clicked();
void on_button3_clicked();
void on_button4_clicked();
void on_button5_clicked();
void on_button6_clicked();
void on_button7_clicked();
void on_button8_clicked();
void on_button9_clicked();
void on_button10_clicked();
void on_button11_clicked();
void on_button12_clicked();
void on_button13_clicked();
void on_button14_clicked();
void on_button15_clicked();
void on_button16_clicked();
void on_button17_clicked();
void on_button18_clicked();
void on_button19_clicked();
void on_button20_clicked();
void on_button21_clicked();
void on_button22_clicked();
void on_buttonPgUp_clicked();
void on_buttonPgDn_clicked();
void on_buttonOk_clicked();
void on_buttonCancel_clicked();
void on_buttonBackUpDir_clicked();
void on_buttonSelectAll_clicked();
void on_buttonNewFolder_clicked();
//鼠标事件
protected:
void mousePressEvent(QMouseEvent *e);
void mouseReleaseEvent(QMouseEvent *e);
private:
int m_mousePressX;
int m_mousePressY;
int m_mouseReleaseX;
int m_mouseReleaseY;
};
#endif // PatternManageWidget_H