12ce8d31dSStephan Aßmus /* 22ce8d31dSStephan Aßmus * Copyright 2006, Haiku. 32ce8d31dSStephan Aßmus * Distributed under the terms of the MIT License. 42ce8d31dSStephan Aßmus * 52ce8d31dSStephan Aßmus * Authors: 62ce8d31dSStephan Aßmus * Stephan Aßmus <superstippi@gmx.de> 72ce8d31dSStephan Aßmus */ 82ce8d31dSStephan Aßmus 92ce8d31dSStephan Aßmus #ifndef REMOVE_SHAPES_COMMAND_H 102ce8d31dSStephan Aßmus #define REMOVE_SHAPES_COMMAND_H 112ce8d31dSStephan Aßmus 122ce8d31dSStephan Aßmus #include "Command.h" 132ce8d31dSStephan Aßmus 142ce8d31dSStephan Aßmus class Shape; 152ce8d31dSStephan Aßmus class ShapeContainer; 162ce8d31dSStephan Aßmus 172ce8d31dSStephan Aßmus class RemoveShapesCommand : public Command { 182ce8d31dSStephan Aßmus public: 192ce8d31dSStephan Aßmus RemoveShapesCommand( 202ce8d31dSStephan Aßmus ShapeContainer* container, 21*61b0e9e3SStephan Aßmus int32* const indices, 222ce8d31dSStephan Aßmus int32 count); 232ce8d31dSStephan Aßmus virtual ~RemoveShapesCommand(); 242ce8d31dSStephan Aßmus 252ce8d31dSStephan Aßmus virtual status_t InitCheck(); 262ce8d31dSStephan Aßmus 272ce8d31dSStephan Aßmus virtual status_t Perform(); 282ce8d31dSStephan Aßmus virtual status_t Undo(); 292ce8d31dSStephan Aßmus 302ce8d31dSStephan Aßmus virtual void GetName(BString& name); 312ce8d31dSStephan Aßmus 322ce8d31dSStephan Aßmus private: 332ce8d31dSStephan Aßmus ShapeContainer* fContainer; 342ce8d31dSStephan Aßmus Shape** fShapes; 352ce8d31dSStephan Aßmus int32* fIndices; 362ce8d31dSStephan Aßmus int32 fCount; 372ce8d31dSStephan Aßmus bool fShapesRemoved; 382ce8d31dSStephan Aßmus }; 392ce8d31dSStephan Aßmus 402ce8d31dSStephan Aßmus #endif // REMOVE_SHAPES_COMMAND_H 41