logplus/ModuleConsole/command/include/SaveWorkflowCmd.h
2026-01-16 17:18:41 +08:00

71 lines
1.4 KiB
C++

/*
* @file SaveWorkflowCmd.h
* @brief 保存工作流
* @date: 2012-10-16
* @author: liujunxia
*/
#ifndef PAI_FRAME_WORKFLOWVIEW_SAVEWORKFLOWCMD_H_
#define PAI_FRAME_WORKFLOWVIEW_SAVEWORKFLOWCMD_H_
#include <QUndoCommand>
#include "PaiTextEdit.h"
#include "WorkflowPlugin.h"
namespace pai
{
namespace objectmodel
{
class PaiObject;
class PaiSurvey;
class PaiWorkflowDataModel;
}
/**
* @class SaveWorkflowCmd
* @brief 保存工作流
*/
class SaveWorkflowCmd :public QUndoCommand{
public:
SaveWorkflowCmd(QUuid viewID, pai::objectmodel::PaiWorkflowDataModel *pCurrentWorkflow, QUndoCommand *parent = 0);
virtual ~SaveWorkflowCmd();
/**
* @brief undo
*/
void undo();
/**
* @brief redo
*/
void redo();
/**
* @brief 获得保存是否成功的结果。
*/
bool GetSaveResult();
private:
/**
* @brief 处理保存当前工作流,对于没有保存过的,会弹出命名窗口。
* @param[out] 返回是否进行保存并保存成功。
*/
bool HandleSaveWorkflow();
/**
* @brief 刷新属性窗口
*/
void RefreshProperties(const QUuid & id);
/**
* @brief 获得属性编辑框
*/
pai::gui::PaiTextEdit* GetPropertiesTextEdit();
private:
bool m_bSaveSuccess;
QUuid m_ViewID;//视图ID
pai::objectmodel::PaiWorkflowDataModel *m_pCurrentWorkflow;
};
}
#endif /* SAVEWORKFLOWCMD_H_ */