xref: /haiku/src/apps/icon-o-matic/shape/commands/InsertPointCommand.h (revision 128277c969aa806add78941cd2972754c37a1572)
1*128277c9SStephan Aßmus /*
2*128277c9SStephan Aßmus  * Copyright 2006, Haiku.
3*128277c9SStephan Aßmus  * Distributed under the terms of the MIT License.
4*128277c9SStephan Aßmus  *
5*128277c9SStephan Aßmus  * Authors:
6*128277c9SStephan Aßmus  *		Stephan Aßmus <superstippi@gmx.de>
7*128277c9SStephan Aßmus  */
8*128277c9SStephan Aßmus 
9*128277c9SStephan Aßmus #ifndef INSERT_POINT_COMMAND_H
10*128277c9SStephan Aßmus #define INSERT_POINT_COMMAND_H
11*128277c9SStephan Aßmus 
12*128277c9SStephan Aßmus #include <Point.h>
13*128277c9SStephan Aßmus 
14*128277c9SStephan Aßmus #include "PathCommand.h"
15*128277c9SStephan Aßmus 
16*128277c9SStephan Aßmus class InsertPointCommand : public PathCommand {
17*128277c9SStephan Aßmus  public:
18*128277c9SStephan Aßmus 								InsertPointCommand(VectorPath* path,
19*128277c9SStephan Aßmus 												   int32 index,
20*128277c9SStephan Aßmus 												   const int32* selected,
21*128277c9SStephan Aßmus 												   int32 count);
22*128277c9SStephan Aßmus 	virtual						~InsertPointCommand();
23*128277c9SStephan Aßmus 
24*128277c9SStephan Aßmus 	virtual	status_t			Perform();
25*128277c9SStephan Aßmus 	virtual status_t			Undo();
26*128277c9SStephan Aßmus 	virtual status_t			Redo();
27*128277c9SStephan Aßmus 
28*128277c9SStephan Aßmus 	virtual void				GetName(BString& name);
29*128277c9SStephan Aßmus 
30*128277c9SStephan Aßmus  private:
31*128277c9SStephan Aßmus 			int32				fIndex;
32*128277c9SStephan Aßmus 			BPoint				fPoint;
33*128277c9SStephan Aßmus 			BPoint				fPointIn;
34*128277c9SStephan Aßmus 			BPoint				fPointOut;
35*128277c9SStephan Aßmus 
36*128277c9SStephan Aßmus 			BPoint				fPreviousOut;
37*128277c9SStephan Aßmus 			BPoint				fNextIn;
38*128277c9SStephan Aßmus 
39*128277c9SStephan Aßmus 			int32*				fOldSelection;
40*128277c9SStephan Aßmus 			int32				fOldSelectionCount;
41*128277c9SStephan Aßmus };
42*128277c9SStephan Aßmus 
43*128277c9SStephan Aßmus #endif // INSERT_POINT_COMMAND_H
44