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
14class 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