DAWorkbench 0.0.1
DAWorkbench API
载入中...
搜索中...
未找到
DAAppCommand.h
1#ifndef DAAPPCOMMAND_H
2#define DAAPPCOMMAND_H
3#include "DACommandInterface.h"
4#include <QUndoStack>
5#include <QPointer>
6
7namespace DA
8{
17{
18 Q_OBJECT
19public:
22 // 开始一个数据操作命令,此命令会推入到当前激活的数据操作窗口的回退栈中
24 const QString& text,
25 bool isObjectPersist = false,
26 bool isSkipFirstRedo = true) override;
27 // 结束一个数据操作命令,
28 virtual bool endDataOperateCommand(const DAData& data) override;
29
30public:
31 // 数据管理的redo/undo栈
32 QUndoStack* getDataManagerStack() const;
33 // TODO:工作流的redo/undo栈
34
35 // TODO:绘图的redo/undo栈(每个图片一个栈)
36public:
37 void setDataManagerStack(QUndoStack* s);
38
39private:
40 QPointer< QUndoStack > mDataManagerStack;
41 std::unique_ptr< DADataAbstractUndoCommand > m_dataOperateCommand;
42};
43} // namespace DA
44
45#ifndef DA_APP_COMMAND
56#define DA_APP_COMMAND DA::DAAppCore::getInstance().getUi()->getAppCmd()
57#endif
58
59#endif // DAAPPCOMMAND_H
App的命令管理
Definition DAAppCommand.h:17
virtual DADataAbstractUndoCommand * beginDataOperateCommand(const DAData &data, const QString &text, bool isObjectPersist=false, bool isSkipFirstRedo=true) override
开始一个数据操作命令,此命令会推入到当前激活的数据操作窗口的回退栈中
Definition DAAppCommand.cpp:26
virtual bool endDataOperateCommand(const DAData &data) override
结束一个数据操作命令
Definition DAAppCommand.cpp:41
命令接口
Definition DACommandInterface.h:22
Definition DADataUndoCommand.h:11
DAAbstractData的封装 可以放入QMap,QHash中,DAData的等于操作相当于创建一个引用
Definition DAData.h:25
界面相关的接口
Definition DAUIInterface.h:26
序列化类都是带异常的,使用中需要处理异常
Definition AppMainWindow.cpp:44