/* ========================================================================== * ÀÛ ¼º ÀÚ : À̼ø±Ô * ÀÛ ¼º ÀÏ : 2006.12.13 * ³» ¿ë : ¿ÀºêÁ§Æ® »èÁ¦ ½ÇÇà * ÁÖÀÇ»çÇ× : *===========================================================================*/ #pragma once #include "Doing.h" class cStaticSceneNode; /// ¿ÀºêÁ§Æ® »èÁ¦ Á¤º¸ class cObjectDeletingInfo { public: /// ¿ÀºêÁ§Æ® Á¤º¸ class cObjectInfo { public: /// Àå¸é ³ëµå cStaticSceneNode* mNode; /// º¯È¯ NiPoint3 mTranslate; NiMatrix3 mRotate; float mScale; }; public: cObjectDeletingInfo(); void Clear(); public: /// ±×·ì ¿ÀºêÁ§Æ® Á¤º¸ NiPoint3 mTranslate; NiMatrix3 mRotate; float mScale; /// ¿ÀºêÁ§Æ® ¼ö unsigned int mNumObjects; /// ¿ÀºêÁ§Æ® Á¤º¸ ¹è¿­ cObjectInfo* mObjectInfos; }; inline cObjectDeletingInfo::cObjectDeletingInfo() : mTranslate( NiPoint3::ZERO ) , mRotate( NiMatrix3::IDENTITY ) , mScale( 1.0f ) , mNumObjects( 0 ) , mObjectInfos( 0 ) { } /// ¿ÀºêÁ§Æ® »èÁ¦ class cObjectDeleting : public cDoing { friend class cDoingManager; friend class cObjectGroup; private: cObjectDeleting( const cObjectDeletingInfo& undo, const cObjectDeletingInfo& redo ); ~cObjectDeleting(); void Undo(); void Redo(); private: /// Undo Á¤º¸ cObjectDeletingInfo mUndo; /// Redo Á¤º¸ cObjectDeletingInfo mRedo; };