59 lines
1.2 KiB
C++
59 lines
1.2 KiB
C++
/*
|
|
*@file CopyModuleCmd.h
|
|
*@brief 拷贝工作流中的模块
|
|
*@date: 2012-10-9
|
|
*@author: liujunxia
|
|
*/
|
|
|
|
#ifndef PAI_FRAME_WORKFLOWVIEW_COPYMODULECMD_H_
|
|
#define PAI_FRAME_WORKFLOWVIEW_COPYMODULECMD_H_
|
|
|
|
#include <QGraphicsItem>
|
|
#include <QUndoCommand>
|
|
|
|
namespace pai
|
|
{
|
|
class CPaiWorkflowPlugin;
|
|
namespace objectmodel
|
|
{
|
|
class PaiWorkflowDataModel;
|
|
}
|
|
namespace graphics2d
|
|
{
|
|
/**
|
|
* @class CopyModuleCmd
|
|
* @brief 拷贝工作流中的模块
|
|
*/
|
|
class CopyModuleCmd :public QUndoCommand
|
|
{
|
|
public:
|
|
CopyModuleCmd(pai::objectmodel::PaiWorkflowDataModel *pWorkflow, QList<QGraphicsItem*> list, QUndoCommand *parent = 0);
|
|
virtual ~CopyModuleCmd();
|
|
/**
|
|
* @brief undo 操作
|
|
*/
|
|
void undo();
|
|
/**
|
|
* @brief redo 操作
|
|
*/
|
|
void redo();
|
|
|
|
private:
|
|
/**
|
|
* @brief 拷贝图元
|
|
*/
|
|
void copyGraphicItems();
|
|
|
|
private:
|
|
QList<QGraphicsItem*> m_list;
|
|
pai::objectmodel::PaiWorkflowDataModel* m_pWorkflow;
|
|
QList<QGraphicsItem*> m_pCopyItems; // copy graphic items buffer
|
|
};
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
#endif /* COPYMODULECMD_H_ */
|