You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

116 lines
3.0 KiB
C++

/**
*
* @file OperatorsImport.h
* @brief 打开事件操作器
* @author BaGuijun (baguijun@163.com)
* @date 2024-09-04
*
*/
#ifndef _OperatorsImport_H_
#define _OperatorsImport_H_
#include "FITK_Kernel/FITKCore/FITKActionOperator.h"
#include "FITK_Kernel/FITKCore/FITKOperatorRepo.h"
#include "FITK_Kernel/FITKCore/FITKThreadTask.h"
#include "OperatorsBase.h"
namespace OperModel
{
/**
* @brief 打开事件操作器
* @author BaGuijun (baguijun@163.com)
* @date 2024-09-04
*/
class OperatorsImport : public OperatorsBase
{
Q_OBJECT;
public:
/**
* @brief Construct a new Operators Open object
* @author BaGuijun (baguijun@163.com)
* @date 2024-09-04
*/
explicit OperatorsImport();
/**
* @brief Destroy the Operators Open object
* @author BaGuijun (baguijun@163.com)
* @date 2024-09-04
*/
~OperatorsImport( ) = default;
/**
* @brief ui事件
* @return true 成功
* @return false 失败
* @author BaGuijun (baguijun@163.com)
* @date 2024-09-04
*/
virtual bool execGUI( ) override;
/**
* @brief 执行结果处理
* @return true 成功
* @return false 失败
* @author BaGuijun (baguijun@163.com)
* @date 2024-09-04
*/
virtual bool execProfession();
private slots:
;
/**
* @brief 文件导入槽函数
* @param[i] isOK 是否成功
* @param[i] objID 数据对象id
* @author BaGuijun (baguijun@163.com)
* @date 2024-09-07
*/
void slotImportFinish(bool isOK, int objID);
};
/**
* @brief 导入文件读取线程
* @author BaGuijun (baguijun@163.com)
* @date 2024-08-14
*/
class ImportReadThread :public Core::FITKThreadTask
{
Q_OBJECT;
public:
/**
* @brief Construct a new Import Read Thread object
* @author BaGuijun (baguijun@163.com)
* @date 2024-08-14
*/
ImportReadThread() = default;
/**
* @brief Destroy the Import Read Thread object
* @author BaGuijun (baguijun@163.com)
* @date 2024-08-14
*/
~ImportReadThread() = default;
/**
* @brief 执行函数
* @author BaGuijun (baguijun@163.com)
* @date 2024-08-14
*/
void run();
signals:
;
/**
* @brief 导入完成信号
* @author BaGuijun (baguijun@163.com)
* @date 2024-08-14
*/
void sigImportFinish(bool, int);
public:
/**
* @brief 文件名称
* @author BaGuijun (baguijun@163.com)
* @date 2024-08-14
*/
QString _fileName = "";
};
//根据按钮的ObjectName进行注册按钮事件
Register2FITKOPeratorRepo(actionOpen, OperatorsImport);
}
#endif