logplus/ModuleConsole/command/include/DeleteModuleCmd.h

85 lines
2.1 KiB
C
Raw Normal View History

2026-01-16 17:18:41 +08:00
/*
*@file DeleteModuleCmd.h
*@brief
*@date: 2012-10-9
*@author: liujunxia
*/
#ifndef PAI_FRAME_WORKFLOWVIEW_DELETEMODULECMD_H_
#define PAI_FRAME_WORKFLOWVIEW_DELETEMODULECMD_H_
#include <QGraphicsItem>
#include <QUndoCommand>
#include "ModuleInformation.h"
#include "ModuleConnection.h"
namespace pai
{
namespace objectmodel
{
class PaiWorkflowDataModel;
}
namespace graphics2d
{
class WorkflowSceneManager;
class CModuleInfoAndStyle;
}
/**
* @class DeleteModuleCmd
* @brief
*/
class DeleteModuleCmd :public QUndoCommand {
public:
DeleteModuleCmd(pai::graphics2d::WorkflowSceneManager *pSceneManager,
pai::objectmodel::PaiWorkflowDataModel *pWorkflow, QList<QGraphicsItem*> list, QUndoCommand *parent = 0);
virtual ~DeleteModuleCmd();
/**
* @brief undo
*/
void undo();
/**
* @brief redo
*/
void redo();
private:
/**
* @brief
*/
void deleteModule();
/**
* @brief 线
*/
void deleteConnection();
/**
*@brief 线source destination id.
*@param startId source destination id .
*/
void updateConnectionLines(int startId);
/**
*@brief Step id
*@param startId Step id .
*/
void updateModuleInfos(int startId);
/**
* @brief 线
* @param .
*/
QList<workflow::CModuleConnection> GetDeletedModuleConnections(QList<QGraphicsItem*> selectedItems);
private:
QList<int> m_stepIdList;
QList<workflow::CModuleConnection> m_connectionList;
pai::graphics2d::WorkflowSceneManager *m_pSceneManager;
pai::objectmodel::PaiWorkflowDataModel* m_pWorkflow;
QList<pai::graphics2d::CModuleInfoAndStyle*> m_deletedModules;
};
}
#endif /* DELETEMODULECMD_H_ */