xref: /haiku/src/apps/icon-o-matic/shape/commands/AddPointCommand.h (revision 325a6253ceb7c4162df2805f7aabc2a119c93534)
1128277c9SStephan Aßmus /*
2*325a6253SAxel Dörfler  * Copyright 2006-2007, Haiku.
3128277c9SStephan Aßmus  * Distributed under the terms of the MIT License.
4128277c9SStephan Aßmus  *
5128277c9SStephan Aßmus  * Authors:
6128277c9SStephan Aßmus  *		Stephan Aßmus <superstippi@gmx.de>
7128277c9SStephan Aßmus  */
8128277c9SStephan Aßmus #ifndef ADD_POINT_COMMAND_H
9128277c9SStephan Aßmus #define ADD_POINT_COMMAND_H
10128277c9SStephan Aßmus 
11128277c9SStephan Aßmus 
12128277c9SStephan Aßmus #include "PathCommand.h"
13128277c9SStephan Aßmus 
14*325a6253SAxel Dörfler #include <Point.h>
15*325a6253SAxel Dörfler 
16*325a6253SAxel Dörfler 
17128277c9SStephan Aßmus class AddPointCommand : public PathCommand {
18128277c9SStephan Aßmus  public:
19128277c9SStephan Aßmus 								AddPointCommand(VectorPath* path,
20128277c9SStephan Aßmus 												int32 index,
21128277c9SStephan Aßmus 												const int32* selected,
22128277c9SStephan Aßmus 												int32 count);
23128277c9SStephan Aßmus 	virtual						~AddPointCommand();
24128277c9SStephan Aßmus 
25128277c9SStephan Aßmus 	virtual	status_t			Perform();
26128277c9SStephan Aßmus 	virtual status_t			Undo();
27128277c9SStephan Aßmus 	virtual status_t			Redo();
28128277c9SStephan Aßmus 
29128277c9SStephan Aßmus 	virtual void				GetName(BString& name);
30128277c9SStephan Aßmus 
31128277c9SStephan Aßmus  private:
32128277c9SStephan Aßmus 			int32				fIndex;
33128277c9SStephan Aßmus 			BPoint				fPoint;
34128277c9SStephan Aßmus 			BPoint				fPointIn;
35128277c9SStephan Aßmus 			BPoint				fPointOut;
36128277c9SStephan Aßmus 
37128277c9SStephan Aßmus 			int32*				fOldSelection;
38128277c9SStephan Aßmus 			int32				fOldSelectionCount;
39128277c9SStephan Aßmus };
40128277c9SStephan Aßmus 
41128277c9SStephan Aßmus #endif // ADD_POINT_COMMAND_H
42