DAWorkbench 0.0.1
DAWorkbench API
载入中...
搜索中...
未找到
DACommandInterface.h
1#ifndef DACOMMANDINTERFACE_H
2#define DACOMMANDINTERFACE_H
3#include <QObject>
4#include "DAInterfaceAPI.h"
5#include "DABaseInterface.h"
6#include <QUndoGroup>
7#include <QUndoCommand>
8#include "DAData.h"
9class QUndoStack;
10
11namespace DA
12{
13class DACoreInterface;
14class DAUIInterface;
15class DADataAbstractUndoCommand;
21class DAINTERFACE_API DACommandInterface : public DABaseInterface
22{
23 Q_OBJECT
24 DA_DECLARE_PRIVATE(DACommandInterface)
25public:
28 // 获取DAAppUIInterface
29 DAUIInterface* ui() const;
30 // 获取undo/redoGroup
31 QUndoGroup& undoGroup();
32 // 添加stack
33 void addStack(QUndoStack* stack);
34 // 移除stack
35 void removeStack(QUndoStack* stack);
36
46 const QString& text,
47 bool isObjectPersist = false,
48 bool isSkipFirstRedo = true) = 0;
53 virtual bool endDataOperateCommand(const DAData& data) = 0;
54};
55} // namespace DA
56#endif // DACOMMANDINTERFACE_H
Definition DABaseInterface.h:9
命令接口
Definition DACommandInterface.h:22
virtual bool endDataOperateCommand(const DAData &data)=0
结束一个数据操作命令
virtual DADataAbstractUndoCommand * beginDataOperateCommand(const DAData &data, const QString &text, bool isObjectPersist=false, bool isSkipFirstRedo=true)=0
开始一个数据操作命令,此命令会推入到当前激活的数据操作窗口的回退栈中
Definition DADataUndoCommand.h:11
DAAbstractData的封装 可以放入QMap,QHash中,DAData的等于操作相当于创建一个引用
Definition DAData.h:25
界面相关的接口
Definition DAUIInterface.h:26
序列化类都是带异常的,使用中需要处理异常
Definition AppMainWindow.cpp:44