1 /* 2 * Copyright 2006, Haiku. 3 * Distributed under the terms of the MIT License. 4 * 5 * Authors: 6 * Stephan Aßmus <superstippi@gmx.de> 7 */ 8 9 #ifndef COMPOUND_ACTION_H 10 #define COMPOUND_ACTION_H 11 12 #include "Command.h" 13 14 class CompoundCommand : public Command { 15 public: 16 CompoundCommand(Command** commands, 17 int32 count, 18 const char* name, 19 int32 nameIndex); 20 virtual ~CompoundCommand(); 21 22 virtual status_t InitCheck(); 23 24 virtual status_t Perform(); 25 virtual status_t Undo(); 26 virtual status_t Redo(); 27 28 virtual void GetName(BString& name); 29 30 private: 31 Command** fCommands; 32 int32 fCount; 33 34 BString fName; 35 int32 fNameIndex; 36 }; 37 38 #endif // COMPOUND_ACTION_H 39