DragonNest/Client/EtCutSceneTool/CommandSet.h

543 lines
13 KiB
C
Raw Normal View History

2024-12-19 09:48:26 +08:00
#pragma once
#include "ICommand.h"
#include "EternityEngine.h"
#include "IDnCutSceneDataReader.h"
enum
{
CMD_NULL,
CMD_UPDATE_VIEW,
CMD_REGISTER_RES,
CMD_UNREGISTER_RES,
CMD_MODIFY_SCENE_INFO,
CMD_INSERT_ACTION,
CMD_REMOVE_ACTION,
CMD_ACTION_PROP_CHANGE,
CMD_KEY_PROP_CHANGE,
CMD_INSERT_KEY,
CMD_REMOVE_KEY,
CMD_INSERT_EVENT,
CMD_REMOVE_EVENT,
CMD_EVENT_PROP_CHANGE,
CMD_ACTOR_PROP_CHANGE,
CMD_COPY_TO_CLIPBOARD,
CMD_PASTE_FROM_CLIPBOARD,
CMD_CHANGE_ACTOR_RES,
CMD_BATCH_EDIT,
};
// <20><20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ
class CUpdateViewCmd : public ICommand
{
public:
CUpdateViewCmd( ICmdReceiver* pCmdReceiver ) : ICommand(pCmdReceiver) {};
virtual ~CUpdateViewCmd(void) {};
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>Լ<EFBFBD>.
virtual ICommand* CreateSame( void ) { return new CUpdateViewCmd( m_pCmdReceiver ); };
virtual const wxChar* GetDesc( void ) const { return wxT("Update view"); };
virtual int GetTypeID( void ) { return CMD_UPDATE_VIEW; };
virtual void Excute( void );
virtual void Undo( void ) {};
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>Ǵ<EFBFBD> Ŀ<>ǵ<EFBFBD><C7B5><EFBFBD><EFBFBD><EFBFBD> <20>ƴ<EFBFBD><C6B4><EFBFBD>.
virtual bool Recordable( void ) { return false; };
};
// <20><><EFBFBD>ҽ<EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> Ŀ<>ǵ<EFBFBD>
class CRegisterResCmd : public ICommand
{
private:
wxString m_strResName;
int m_iResourceKind;
EtVector3 m_vPos;
float m_fRotation;
public:
CRegisterResCmd( ICmdReceiver* pCmdReceiver, const wxChar* pResourceName, int iResourceKind,
EtVector3& vPos, float fRotation );
virtual ~CRegisterResCmd(void);
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>Լ<EFBFBD>.
virtual ICommand* CreateSame( void );
virtual const wxChar* GetDesc( void ) const;
virtual int GetTypeID( void ) { return CMD_REGISTER_RES; };
virtual void Excute( void );
virtual void Undo( void );
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>Ǵ<EFBFBD> Ŀ<>ǵ<EFBFBD><C7B5><EFBFBD><EFBFBD><EFBFBD> <20>ƴ<EFBFBD><C6B4><EFBFBD>.
virtual bool Recordable( void ) { return true; };
};
// <20><><EFBFBD><EFBFBD><EFBFBD>Ǵ<EFBFBD> <20><><EFBFBD>ҽ<EFBFBD> <20><><EFBFBD><EFBFBD> Ŀ<>ǵ<EFBFBD>
class CRemoveRegResCmd : public ICommand
{
private:
wxString m_strResName;
int m_iResourceKind;
EtVector3 m_vPos;
float m_fRotation;
public:
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><ECBFA1> <20><><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD> <20>׼<EFBFBD> <20><><EFBFBD><EFBFBD>Ʈ<EFBFBD><C6AE><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>ٰ<EFBFBD> UNDO <20><> <20>Ͼ<CFBE><EEB3AA> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ش<EFBFBD>.
vector<ActionInfo*> m_vlpActionInfo;
vector<KeyInfo*> m_vlpKeyInfo;
public:
CRemoveRegResCmd( ICmdReceiver* pCmdReceiver, const wxChar* pResourceName, int iResourceKind );
virtual ~CRemoveRegResCmd( void );
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>Լ<EFBFBD>.
virtual ICommand* CreateSame( void );
virtual const wxChar* GetDesc( void ) const;
virtual int GetTypeID( void ) { return CMD_UNREGISTER_RES; };
virtual void Excute( void );
virtual void Undo( void );
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>Ǵ<EFBFBD> Ŀ<>ǵ<EFBFBD><C7B5><EFBFBD><EFBFBD><EFBFBD> <20>ƴ<EFBFBD><C6B4><EFBFBD>.
virtual bool Recordable( void ) { return true; };
};
// <20><><EFBFBD><EFBFBD> <20>Ӽ<EFBFBD> <20><><EFBFBD><EFBFBD> Ŀ<>ǵ<EFBFBD>
class CSceneInfoModify : public ICommand
{
private:
SceneInfo* m_pSceneInfo;
SceneInfo* m_pPrevSceneInfo;
public:
CSceneInfoModify( ICmdReceiver* pCmdReceiver, SceneInfo* pSceneInfo );
virtual ~CSceneInfoModify( void );
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>Լ<EFBFBD>.
virtual ICommand* CreateSame( void );
virtual const wxChar* GetDesc( void ) const;
virtual int GetTypeID( void ) { return CMD_MODIFY_SCENE_INFO; };
virtual void Excute( void );
virtual void Undo( void );
virtual bool Recordable( void ) { return true; };
};
// <20>׼<EFBFBD> <20>߰<EFBFBD> Ŀ<>ǵ<EFBFBD>
class CActionInsertCmd : public ICommand
{
private:
ActionInfo* m_pActionInfo;
public:
CActionInsertCmd( ICmdReceiver* pCmdReceiver, ActionInfo* pAction );
virtual ~CActionInsertCmd( void );
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>Լ<EFBFBD>.
virtual ICommand* CreateSame( void );
virtual const wxChar* GetDesc( void ) const;
virtual int GetTypeID( void ) { return CMD_INSERT_ACTION; };
virtual void Excute( void );
virtual void Undo( void );
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>Ǵ<EFBFBD> Ŀ<>ǵ<EFBFBD><C7B5><EFBFBD><EFBFBD><EFBFBD> <20>ƴ<EFBFBD><C6B4><EFBFBD>.
virtual bool Recordable( void ) { return true; };
};
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD>ҽ<EFBFBD> <20><><EFBFBD><EFBFBD> Ŀ<>ǵ<EFBFBD>
class CActorResPropChange : public ICommand
{
private:
wxString m_strNewActorName;
EtVector3 m_vPos;
float m_fRotation;
bool m_bFitYPosToMap;
bool m_bInfluenceLightmap;
int m_iMonsterTableIDAsBoss; // <20><> <20><><EFBFBD><EFBFBD> <20><><EFBFBD>ҽ<EFBFBD><D2BD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>Ʈ <20>߿<EFBFBD> <20><><EFBFBD>õ<EFBFBD> <20>ε<EFBFBD><CEB5><EFBFBD>. <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> -1<><31>.
bool m_bScaleLock;
wxString m_strOldActorName;
EtVector3 m_vOldPos;
float m_fOldRotation;
bool m_bOldFitYPosToMap;
bool m_bOldInfluenceLightmap;
int m_iOldMonsterTableIDAsBoss;
bool m_bOldScaleLock;
public:
CActorResPropChange( ICmdReceiver* pCmdReceiver, const wxChar* pOldActorName, const wxChar* pNewActorName,
const EtVector3& vPos, float fRotation, bool bFitYPosToMap, bool bInfluenceLightmap, int iSelectedBossInfo, bool bScaleLock );
virtual ~CActorResPropChange( void );
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>Լ<EFBFBD>.
virtual ICommand* CreateSame( void );
virtual const wxChar* GetDesc( void ) const;
virtual int GetTypeID( void ) { return CMD_ACTOR_PROP_CHANGE; };
virtual void Excute( void );
virtual void Undo( void );
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>Ǵ<EFBFBD> Ŀ<>ǵ<EFBFBD><C7B5><EFBFBD><EFBFBD><EFBFBD> <20>ƴ<EFBFBD><C6B4><EFBFBD>.
virtual bool Recordable( void ) { return true; };
};
// <20>׼<EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> Ŀ<>ǵ<EFBFBD>
class CActionPropChange : public ICommand
{
public:
ActionInfo m_NewActionInfo;
ActionInfo m_PrevActionInfo;
bool m_bUndo;
public:
CActionPropChange( ICmdReceiver* pCmdReceiver, ActionInfo* pNewActionInfo );
virtual ~CActionPropChange( void );
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>Լ<EFBFBD>.
virtual ICommand* CreateSame( void );
virtual const wxChar* GetDesc( void ) const;
virtual int GetTypeID( void ) { return CMD_ACTION_PROP_CHANGE; };
virtual void Excute( void );
virtual void Undo( void );
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>Ǵ<EFBFBD> Ŀ<>ǵ<EFBFBD><C7B5><EFBFBD><EFBFBD><EFBFBD> <20>ƴ<EFBFBD><C6B4><EFBFBD>.
virtual bool Recordable( void ) { return true; };
};
// <20>׼<EFBFBD> <20><><EFBFBD><EFBFBD> Ŀ<>ǵ<EFBFBD>
class CActionRemoveCmd : public ICommand
{
public:
int m_iActionIDToRemove;
ActionInfo m_RemoveActionInfo;
public:
CActionRemoveCmd( ICmdReceiver* pCmdReceiver, int iActionID );
virtual ~CActionRemoveCmd( void );
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>Լ<EFBFBD>.
virtual ICommand* CreateSame( void );
virtual const wxChar* GetDesc( void ) const;
virtual int GetTypeID( void ) { return CMD_REMOVE_ACTION; };
virtual void Excute( void );
virtual void Undo( void );
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>Ǵ<EFBFBD> Ŀ<>ǵ<EFBFBD><C7B5><EFBFBD><EFBFBD><EFBFBD> <20>ƴ<EFBFBD><C6B4><EFBFBD>.
virtual bool Recordable( void ) { return true; };
};
// Ű <20>߰<EFBFBD> Ŀ<>ǵ<EFBFBD>
class CKeyInsertCmd : public ICommand
{
private:
KeyInfo* m_pKeyInfo;
public:
CKeyInsertCmd( ICmdReceiver* pCmdReceiver, KeyInfo* pKey );
virtual ~CKeyInsertCmd( void );
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>Լ<EFBFBD>.
virtual ICommand* CreateSame( void );
virtual const wxChar* GetDesc( void ) const;
virtual int GetTypeID( void ) { return CMD_INSERT_KEY; };
virtual void Excute( void );
virtual void Undo( void );
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>Ǵ<EFBFBD> Ŀ<>ǵ<EFBFBD><C7B5><EFBFBD><EFBFBD><EFBFBD> <20>ƴ<EFBFBD><C6B4><EFBFBD>.
virtual bool Recordable( void ) { return true; };
};
// Ű <20><><EFBFBD><EFBFBD> Ŀ<>ǵ<EFBFBD>
class CKeyRemoveCmd : public ICommand
{
public:
int m_iKeyIDToRemove;
KeyInfo m_RemoveKeyInfo;
public:
CKeyRemoveCmd( ICmdReceiver* pCmdReceiver, int iKeyID );
virtual ~CKeyRemoveCmd( void );
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>Լ<EFBFBD>.
virtual ICommand* CreateSame( void );
virtual const wxChar* GetDesc( void ) const;
virtual int GetTypeID( void ) { return CMD_REMOVE_KEY; };
virtual void Excute( void );
virtual void Undo( void );
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>Ǵ<EFBFBD> Ŀ<>ǵ<EFBFBD><C7B5><EFBFBD><EFBFBD><EFBFBD> <20>ƴ<EFBFBD><C6B4><EFBFBD>.
virtual bool Recordable( void ) { return true; };
};
// Ű <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> Ŀ<>ǵ<EFBFBD>
class CKeyPropChange : public ICommand
{
public:
KeyInfo m_NewKeyInfo;
KeyInfo m_PrevKeyInfo;
bool m_bUndo;
public:
CKeyPropChange( ICmdReceiver* pCmdReceiver, KeyInfo* pNewKeyInfo );
virtual ~CKeyPropChange( void );
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>Լ<EFBFBD>.
virtual ICommand* CreateSame( void );
virtual const wxChar* GetDesc( void ) const;
virtual int GetTypeID( void ) { return CMD_KEY_PROP_CHANGE; };
virtual void Excute( void );
virtual void Undo( void );
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>Ǵ<EFBFBD> Ŀ<>ǵ<EFBFBD><C7B5><EFBFBD><EFBFBD><EFBFBD> <20>ƴ<EFBFBD><C6B4><EFBFBD>.
virtual bool Recordable( void ) { return true; };
};
// <20>̺<EFBFBD>Ʈ <20>߰<EFBFBD> Ŀ<>ǵ<EFBFBD>
class CEventInsertCmd : public ICommand
{
private:
EventInfo* m_pEventInfo;
public:
CEventInsertCmd( ICmdReceiver* pCmdReceiver, EventInfo* pEvent );
virtual ~CEventInsertCmd( void );
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>Լ<EFBFBD>.
virtual ICommand* CreateSame( void );
virtual const wxChar* GetDesc( void ) const;
virtual int GetTypeID( void ) { return CMD_INSERT_EVENT; };
virtual void Excute( void );
virtual void Undo( void );
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>Ǵ<EFBFBD> Ŀ<>ǵ<EFBFBD><C7B5><EFBFBD><EFBFBD><EFBFBD> <20>ƴ<EFBFBD><C6B4><EFBFBD>.
virtual bool Recordable( void ) { return true; };
};
// <20>̺<EFBFBD>Ʈ <20><><EFBFBD><EFBFBD> Ŀ<>ǵ<EFBFBD>
class CEventRemoveCmd : public ICommand
{
public:
int m_iEventIDToRemove;
EventInfo* m_pRemoveEventInfo;
public:
CEventRemoveCmd( ICmdReceiver* pCmdReceiver, int iEventID );
virtual ~CEventRemoveCmd( void );
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>Լ<EFBFBD>.
virtual ICommand* CreateSame( void );
virtual const wxChar* GetDesc( void ) const;
virtual int GetTypeID( void ) { return CMD_REMOVE_EVENT; };
virtual void Excute( void );
virtual void Undo( void );
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>Ǵ<EFBFBD> Ŀ<>ǵ<EFBFBD><C7B5><EFBFBD><EFBFBD><EFBFBD> <20>ƴ<EFBFBD><C6B4><EFBFBD>.
virtual bool Recordable( void ) { return true; };
};
// <20>̺<EFBFBD>Ʈ <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> Ŀ<>ǵ<EFBFBD>
class CEventPropChange : public ICommand
{
public:
EventInfo* m_pNewEventInfo;
EventInfo* m_pPrevEventInfo;
bool m_bUndo;
public:
CEventPropChange( ICmdReceiver* pCmdReceiver, EventInfo* pNewEventInfo );
virtual ~CEventPropChange( void );
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>Լ<EFBFBD>.
virtual ICommand* CreateSame( void );
virtual const wxChar* GetDesc( void ) const;
virtual int GetTypeID( void ) { return CMD_EVENT_PROP_CHANGE; };
virtual void Excute( void );
virtual void Undo( void );
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>Ǵ<EFBFBD> Ŀ<>ǵ<EFBFBD><C7B5><EFBFBD><EFBFBD><EFBFBD> <20>ƴ<EFBFBD><C6B4><EFBFBD>.
virtual bool Recordable( void ) { return true; };
};
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>͸<EFBFBD> <20><>°<EFBFBD><C2B0> <20>ٲٴ<D9B2> Ŀ<>ǵ<EFBFBD>. <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>ð<EFBFBD><C3B0><EFBFBD> <20><><EFBFBD><EFBFBD>.
class CBatchEdit : public ICommand
{
public:
vector<const ActionInfo*> m_vlpActionInfo;
vector<const KeyInfo*> m_vlpKeyInfo;
vector<const EventInfo*> m_vlpEventInfo;
float m_fStartTimeDelta;
public:
CBatchEdit( ICmdReceiver* pCmdReceiver, float fStartTimeDelta,
const vector<const ActionInfo*> vlpActionInfo,
const vector<const KeyInfo*> vlpKeyInfo,
const vector<const EventInfo*> vlpEventInfo );
virtual ~CBatchEdit( void );
virtual ICommand* CreateSame( void );
virtual const wxChar* GetDesc( void ) const;
virtual int GetTypeID( void ) { return CMD_BATCH_EDIT; };
virtual void Excute( void );
virtual void Undo( void );
virtual bool Recordable( void ) { return true; };
};
// <20>׼<EFBFBD>/Ű/<2F>̺<EFBFBD>Ʈ <20><><EFBFBD><EFBFBD><EFBFBD>ؼ<EFBFBD> <20>ٿ<EFBFBD><D9BF>ֱ<EFBFBD>
// Ŭ<><C5AC><EFBFBD><EFBFBD><EFBFBD><20>ִ<EFBFBD> Ŀ<>ǵ<EFBFBD><C7B5>ε<EFBFBD>.. <20><>.. <20><><EFBFBD>ø<EFBFBD><C3B8><EFBFBD><EFBFBD><EFBFBD> <20>ұ<EFBFBD>.. -_-
class CCopyToClipboard : public ICommand
{
public:
enum
{
COPY_ACTION,
COPY_KEY,
COPY_EVENT,
};
ActionInfo* m_pCopiedActionInfo;
KeyInfo* m_pCopiedKeyInfo;
EventInfo* m_pCopiedEventInfo;
private:
int m_iCopyType;
public:
CCopyToClipboard( ICmdReceiver* pCmdReceiver, const ActionInfo* pActionInfo );
CCopyToClipboard( ICmdReceiver* pCmdReceiver, const KeyInfo* pKeyInfo );
CCopyToClipboard( ICmdReceiver* pCmdReceiver, const EventInfo* pEventInfo );
virtual ~CCopyToClipboard( void );
virtual ICommand* CreateSame( void );
virtual const wxChar* GetDesc( void ) const;
virtual int GetTypeID( void ) { return CMD_COPY_TO_CLIPBOARD; };
virtual void Excute( void );
virtual void Undo( void );
virtual bool Recordable( void ) { return true; };
int GetCopyType( void ) { return m_iCopyType; };
};
class CPasteFromClipboard : public ICommand
{
public:
ActionInfo* m_pCopiedActionInfo;
KeyInfo* m_pCopiedKeyInfo;
EventInfo* m_pCopiedEventInfo;
private:
int m_iCopyType;
public:
CPasteFromClipboard( ICmdReceiver* pCmdReceiver, int iCopyType, const char* pActorToPaste, float fTimeToPaste );
virtual ~CPasteFromClipboard( void );
virtual ICommand* CreateSame( void );
virtual const wxChar* GetDesc( void ) const;
virtual int GetTypeID( void ) { return CMD_PASTE_FROM_CLIPBOARD; };
virtual void Excute( void );
virtual void Undo( void );
virtual bool Recordable( void ) { return true; };
int GetCopyType( void ) { return m_iCopyType; };
};
class CChangeActorRes : public ICommand
{
private:
wxString m_strNewActorResName; // <20><><EFBFBD><EFBFBD> <20>ٲ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>ҽ<EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̺<EFBFBD>) <20≯<EFBFBD>
wxString m_strNewActorName; // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> _ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ڰ<EFBFBD> <20>Է<EFBFBD><D4B7><EFBFBD> <20><><EFBFBD>ڿ<EFBFBD><DABF><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>ٲ<EFBFBD> <20><><EFBFBD><EFBFBD> <20≯<EFBFBD>(<28><><EFBFBD><EFBFBD> <20>ƽ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ڷᱸ<DAB7><E1B1B8><EFBFBD><EFBFBD> Ű <20><>)
wxString m_strOldActorResName; // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>ҽ<EFBFBD> <20≯<EFBFBD>
wxString m_strOldActorName; // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20≯<EFBFBD>
public:
CChangeActorRes( ICmdReceiver* pCmdReceiver, const wxChar* pNewActorResName, const wxChar* pOldActorName );
virtual ~CChangeActorRes( void );
virtual ICommand* CreateSame( void ) { return new CChangeActorRes(*this); };
virtual const wxChar* GetDesc( void ) const;
virtual int GetTypeID( void ) { return CMD_CHANGE_ACTOR_RES; };
virtual void Excute( void );
virtual void Undo( void );
virtual bool Recordable( void ) { return true; };
const wxChar* GetNewActorResName( void ) { return m_strNewActorResName.c_str(); };
const wxChar* GetNewActorName( void ) { return m_strNewActorName.c_str(); };
const wxChar* GetOldActorResName( void ) { return m_strOldActorResName.c_str(); };
const wxChar* GetOldActorName( void ) { return m_strOldActorName.c_str(); };
};