/* ========================================================================== * ÀÛ ¼º ÀÚ : À̼ø±Ô * ÀÛ ¼º ÀÏ : 2006.12.05 * ³» ¿ë : ³×ºñÇÊµå »öÄ¥ ½ÇÇà * ÁÖÀÇ»çÇ× : *===========================================================================*/ #pragma once #include "Doing.h" class cNaviFieldLeafNode; /// ³×ºñÇÊµå ³ëµå »öÄ¥ Á¤º¸ class cNaviFieldNodePaintingInfo { public: cNaviFieldNodePaintingInfo(); public: /// ¸®ÇÁ ³ëµå cNaviFieldLeafNode* mNode; /// Àû¿ë ¹üÀ§ (¸®ÇÁ ³ëµå³» Á¤Á¡ÀÇ À妽º) unsigned int mXBegin; unsigned int mYBegin; unsigned int mXEnd; unsigned int mYEnd; /// Undo Á¤º¸ /// »ö»ó ¹è¿­ NiColor* mUndoColorArray; /// Ç÷¢°ª ¹è¿­ unsigned char* mUndoValueArray; /// Redo Á¤º¸ /// »ö»ó ¹è¿­ NiColor* mRedoColorArray; /// Ç÷¢°ª ¹è¿­ unsigned char* mRedoValueArray; }; inline cNaviFieldNodePaintingInfo::cNaviFieldNodePaintingInfo() : mNode( 0 ) , mXBegin( 0 ) , mYBegin( 0 ) , mXEnd( 0 ) , mYEnd( 0 ) , mUndoColorArray( 0 ) , mUndoValueArray( 0 ) , mRedoColorArray( 0 ) , mRedoValueArray( 0 ) { } /// ³×ºñÇÊµå »öÄ¥ Á¤º¸ class cNaviFieldPaintingInfo { public: /// ³ëµå Á¤º¸ ¹è¿­ typedef tArray cNodeArray; cNodeArray mNodeArray; }; /// ³×ºñÇÊµå ³ëµå »öÄ¥ class cNaviFieldNodePainting { public: cNaviFieldNodePainting( const cNaviFieldNodePaintingInfo& info ); ~cNaviFieldNodePainting(); void Undo(); void Redo(); public: /// ¸®ÇÁ ³ëµå cNaviFieldLeafNode* mNode; /// Àû¿ë ¹üÀ§ (¸®ÇÁ ³ëµå³» Á¤Á¡ÀÇ À妽º) unsigned int mXBegin; unsigned int mYBegin; unsigned int mXEnd; unsigned int mYEnd; /// Undo Á¤º¸ /// »ö»ó ¹è¿­ NiColor* mUndoColorArray; /// Ç÷¢°ª ¹è¿­ unsigned char* mUndoValueArray; /// Redo Á¤º¸ /// »ö»ó ¹è¿­ NiColor* mRedoColorArray; /// Ç÷¢°ª ¹è¿­ unsigned char* mRedoValueArray; }; /// ³×ºñÇÊµå »öÄ¥ class cNaviFieldPainting : public cDoing { friend class cDoingManager; friend class cNaviField; private: cNaviFieldPainting( const cNaviFieldPaintingInfo& info ); ~cNaviFieldPainting(); void Undo(); void Redo(); private: /// ³ëµå ¹è¿­ typedef tArray cNodeArray; cNodeArray mNodeArray; };