1 | #ifndef GAME_EDITOR_EDITOR_ACTION_H |
2 | #define GAME_EDITOR_EDITOR_ACTION_H |
3 | |
4 | #include <string> |
5 | |
6 | class CEditor; |
7 | |
8 | class IEditorAction |
9 | { |
10 | public: |
11 | IEditorAction(CEditor *pEditor) : |
12 | m_pEditor(pEditor) {} |
13 | |
14 | IEditorAction() = default; |
15 | |
16 | virtual ~IEditorAction() = default; |
17 | |
18 | virtual void Undo() = 0; |
19 | virtual void Redo() = 0; |
20 | |
21 | virtual bool IsEmpty() { return false; } |
22 | |
23 | const char *DisplayText() const { return m_aDisplayText; } |
24 | |
25 | protected: |
26 | CEditor *m_pEditor; |
27 | char m_aDisplayText[256]; |
28 | }; |
29 | |
30 | #endif |
31 | |