1/*
2 * Copyright 2006-2007, Haiku.
3 * Distributed under the terms of the MIT License.
4 *
5 * Authors:
6 *		Stephan Aßmus <superstippi@gmx.de>
7 */
8#ifndef REMOVE_SHAPES_COMMAND_H
9#define REMOVE_SHAPES_COMMAND_H
10
11
12#include "Command.h"
13#include "IconBuild.h"
14
15
16_BEGIN_ICON_NAMESPACE
17	class Shape;
18	class ShapeContainer;
19_END_ICON_NAMESPACE
20
21_USING_ICON_NAMESPACE
22
23
24class RemoveShapesCommand : public Command {
25 public:
26								RemoveShapesCommand(
27									ShapeContainer* container,
28									int32* const indices,
29									int32 count);
30	virtual						~RemoveShapesCommand();
31
32	virtual	status_t			InitCheck();
33
34	virtual	status_t			Perform();
35	virtual status_t			Undo();
36
37	virtual void				GetName(BString& name);
38
39 private:
40			ShapeContainer*		fContainer;
41			Shape**				fShapes;
42			int32*				fIndices;
43			int32				fCount;
44			bool				fShapesRemoved;
45};
46
47#endif // REMOVE_SHAPES_COMMAND_H
48