xref: /haiku/src/apps/icon-o-matic/shape/commands/AddPathsCommand.h (revision 25dc253d6ab28ce204fa4de2d3e7a27d167fc817)
161b0e9e3SStephan Aßmus /*
2325a6253SAxel Dörfler  * Copyright 2006-2007, Haiku.
361b0e9e3SStephan Aßmus  * Distributed under the terms of the MIT License.
461b0e9e3SStephan Aßmus  *
561b0e9e3SStephan Aßmus  * Authors:
661b0e9e3SStephan Aßmus  *		Stephan Aßmus <superstippi@gmx.de>
761b0e9e3SStephan Aßmus  */
861b0e9e3SStephan Aßmus #ifndef ADD_PATHS_COMMAND_H
961b0e9e3SStephan Aßmus #define ADD_PATHS_COMMAND_H
1061b0e9e3SStephan Aßmus 
11325a6253SAxel Dörfler 
1261b0e9e3SStephan Aßmus #include "Command.h"
13*25dc253dSIngo Weinhold #include "IconBuild.h"
1461b0e9e3SStephan Aßmus 
15325a6253SAxel Dörfler 
16*25dc253dSIngo Weinhold _BEGIN_ICON_NAMESPACE
1761b0e9e3SStephan Aßmus 	class VectorPath;
1861b0e9e3SStephan Aßmus 	class PathContainer;
19*25dc253dSIngo Weinhold _END_ICON_NAMESPACE
20*25dc253dSIngo Weinhold 
21*25dc253dSIngo Weinhold _USING_ICON_NAMESPACE
22*25dc253dSIngo Weinhold 
2361b0e9e3SStephan Aßmus 
2461b0e9e3SStephan Aßmus class AddPathsCommand : public Command {
2561b0e9e3SStephan Aßmus  public:
2661b0e9e3SStephan Aßmus 								AddPathsCommand(
2761b0e9e3SStephan Aßmus 									PathContainer* container,
2861b0e9e3SStephan Aßmus 									VectorPath** const paths,
2961b0e9e3SStephan Aßmus 									int32 count,
3061b0e9e3SStephan Aßmus 									bool ownsPaths,
3161b0e9e3SStephan Aßmus 									int32 index);
3261b0e9e3SStephan Aßmus 	virtual						~AddPathsCommand();
3361b0e9e3SStephan Aßmus 
3461b0e9e3SStephan Aßmus 	virtual	status_t			InitCheck();
3561b0e9e3SStephan Aßmus 
3661b0e9e3SStephan Aßmus 	virtual	status_t			Perform();
3761b0e9e3SStephan Aßmus 	virtual status_t			Undo();
3861b0e9e3SStephan Aßmus 
3961b0e9e3SStephan Aßmus 	virtual void				GetName(BString& name);
4061b0e9e3SStephan Aßmus 
4161b0e9e3SStephan Aßmus  private:
4261b0e9e3SStephan Aßmus 			PathContainer*		fContainer;
4361b0e9e3SStephan Aßmus 			VectorPath**		fPaths;
4461b0e9e3SStephan Aßmus 			int32				fCount;
4561b0e9e3SStephan Aßmus 			bool				fOwnsPaths;
4661b0e9e3SStephan Aßmus 			int32				fIndex;
4761b0e9e3SStephan Aßmus 			bool				fPathsAdded;
4861b0e9e3SStephan Aßmus };
4961b0e9e3SStephan Aßmus 
5061b0e9e3SStephan Aßmus #endif // ADD_PATHS_COMMAND_H
51