forked from 0ad/0ad
25 lines
428 B
C
25 lines
428 B
C
|
#ifndef _COMMAND_H
|
||
|
#define _COMMAND_H
|
||
|
|
||
|
class CCommand
|
||
|
{
|
||
|
public:
|
||
|
// virtual destructor
|
||
|
virtual ~CCommand() {}
|
||
|
|
||
|
// return the texture name of this command
|
||
|
virtual const char* GetName() const { return 0; }
|
||
|
|
||
|
// execute this command
|
||
|
virtual void Execute() = 0;
|
||
|
|
||
|
// can undo command?
|
||
|
virtual bool IsUndoable() const = 0;
|
||
|
// undo
|
||
|
virtual void Undo() {}
|
||
|
// redo
|
||
|
virtual void Redo() {}
|
||
|
};
|
||
|
|
||
|
#endif
|