xref: /haiku/src/apps/icon-o-matic/shape/commands/ChangePointCommand.h (revision 7c4b3726d9477810a630f9c0d0604a36473df559)
1128277c9SStephan Aßmus /*
2128277c9SStephan Aßmus  * Copyright 2006, 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 
9128277c9SStephan Aßmus #ifndef CHANGE_POINT_COMMAND_H
10128277c9SStephan Aßmus #define CHANGE_POINT_COMMAND_H
11128277c9SStephan Aßmus 
12128277c9SStephan Aßmus #include <Point.h>
13128277c9SStephan Aßmus 
14128277c9SStephan Aßmus #include "PathCommand.h"
15128277c9SStephan Aßmus 
16128277c9SStephan Aßmus class ChangePointCommand : public PathCommand {
17128277c9SStephan Aßmus  public:
18128277c9SStephan Aßmus 								ChangePointCommand(VectorPath* path,
19128277c9SStephan Aßmus 												   int32 index,
20128277c9SStephan Aßmus 												   const int32* selected,
21128277c9SStephan Aßmus 												   int32 count);
22128277c9SStephan Aßmus 	virtual						~ChangePointCommand();
23128277c9SStephan Aßmus 
24*7c4b3726SStephan Aßmus 	virtual	status_t			InitCheck();
25*7c4b3726SStephan Aßmus 
26128277c9SStephan Aßmus 	virtual	status_t			Perform();
27128277c9SStephan Aßmus 	virtual status_t			Undo();
28128277c9SStephan Aßmus 	virtual status_t			Redo();
29128277c9SStephan Aßmus 
30128277c9SStephan Aßmus 	virtual void				GetName(BString& name);
31128277c9SStephan Aßmus 
32128277c9SStephan Aßmus  private:
33128277c9SStephan Aßmus 			int32				fIndex;
34128277c9SStephan Aßmus 
35128277c9SStephan Aßmus 			BPoint				fPoint;
36128277c9SStephan Aßmus 			BPoint				fPointIn;
37128277c9SStephan Aßmus 			BPoint				fPointOut;
38128277c9SStephan Aßmus 			bool				fConnected;
39128277c9SStephan Aßmus 
40128277c9SStephan Aßmus 			int32*				fOldSelection;
41128277c9SStephan Aßmus 			int32				fOldSelectionCount;
42128277c9SStephan Aßmus };
43128277c9SStephan Aßmus 
44128277c9SStephan Aßmus #endif // CHANGE_POINT_COMMAND_H
45