/*========================================================================= * * CPAHieEd.hpp CPA_HierarchyEditor - Definition * * * Version 1.0 * Creation date * Revision date * * Shaitan *=======================================================================*/ #ifdef ACTIVE_EDITOR #ifndef __CPA_HIE_EDITORBASE_HPP__ #define __CPA_HIE_EDITORBASE_HPP__ #include "CPADllB.hpp" /****************************************/ #ifndef CPA_EXPORT #if defined(CPA_WANTS_IMPORT) #define CPA_EXPORT __declspec(dllimport) #elif defined(CPA_WANTS_EXPORT) #define CPA_EXPORT __declspec(dllexport) #else #define CPA_EXPORT #endif #endif /****************************************/ /* paste mode*/ typedef enum tdePasteMode_ { E_pm_PasteDefault, E_pm_PasteChoice, E_pm_PasteSame } tdePasteMode; class CPA_SuperObject; class CPA_FileObject; /*=========================================================================== * Description: Class CPA_HierarchyEditor * Creation date: * Author: Shaitan * *--------------------------------------------------------------------------- * Revision date: Author: *=========================================================================*/ class CPA_EXPORT CPA_HierarchyEditor : public CPA_DLLBase { public: CPA_HierarchyEditor (void) { }; ~CPA_HierarchyEditor (void) { }; virtual void Create (void); /* for CPA_SpecificInterface (fn_vDisplayWorld)*/ virtual BOOL fn_bIsDisplayAllModeEnabled (void) { return FALSE; } /* for CPA_Interface*/ virtual void fn_vUpdateEditor (tdeModeChange eMode) { } virtual void fn_vCancelAllModes (void) { } virtual BOOL fn_bIsMultiSelectModeEnabled (void) { return FALSE; } virtual BOOL fn_bInsertObjectInHierarchy (CPA_SuperObject *pEdObj, CPA_SuperObject *pParent, BOOL bUseEditManager = TRUE, BOOL bUpdateModif = TRUE, BOOL bSelect = TRUE, BOOL pBlock = FALSE) { return FALSE; } virtual BOOL fn_bInsertAsPreviousBrother (CPA_SuperObject *pEdObj, CPA_SuperObject *pBrother, BOOL bUseEditManager = TRUE, BOOL bUpdateModif = TRUE, BOOL bSelect = TRUE, BOOL pBlock = FALSE) { return FALSE; } virtual BOOL fn_bDeleteObjectInHierarchy (CPA_SuperObject *pEdObj, BOOL bUseEditManager = TRUE, BOOL bUpdateModif = TRUE, BOOL bDestroySuperObject = FALSE, BOOL bSelect = TRUE, BOOL pBlock = FALSE) { return FALSE; } /*ANNECY Shaitan EmptySectors 25/02/98*/ virtual BOOL fn_bCanBeParent (CPA_SuperObject *pParent, tdstPosition *p_stPosition, tdeTypeSO eTypeSO, tdeSaveStatus eStatus); /*ENDANNECY Shaitan EmptySectors*/ virtual BOOL fn_bCanBeParentForAll (CPA_SuperObject *pEdObj) { return FALSE; } virtual BOOL fn_bCanPasteAllObjects (tdePasteMode eMode, CPA_SuperObject *pNewParent = NULL, MTH3D_tdstVector *pNewPosition = NULL) { return FALSE; } virtual CPA_SuperObject * GetEditorObject (HIE_tdxHandleToSuperObject hSupObj); virtual void fn_vUpdateLink (CString csCurrentMode) { } virtual void fn_vUpdateModel (void) { } virtual void fn_vBeforeEngine (void); virtual void fn_vBeforeEditor (void); virtual CPA_SuperObject * GetNewSuperObject (HIE_tdxHandleToSuperObject hEngineSO, tdeSaveStatus eStatus, tdeTypeSO eTypeSO = C_NoType, CString csName = "", CString csEngineFileName = ""); virtual CPA_SuperObject * GetNewSuperObject (tdeSaveStatus eStatus, tdeTypeSO eTypeSO = C_NoType, CString csName = "", CString csEngineFileName = ""); virtual CPA_SuperObject * GetCopyOfSuperObject (CPA_SuperObject *pModel); virtual void fn_vOnActivateEditor (CPA_List *pParams, BOOL bBackActivated=FALSE); virtual void fn_vOnCloseEditor (void); virtual CString GetLoadingMessage (void) { return "Editor Ready"; } virtual int GetLoadingStatus (void) { return 3; } CPA_FileObject * GetFileObject (CString csFileName); /* Begin Silviu Simen september 1998 List of Objects in Sectors*/ virtual void fn_vBuildListOfSectors (void) {}; /* End Silviu Simen september 1998 List of Objects in Sectors*/ }; #endif /* __CPA_HIE_EDITORBASE_HPP__*/ #endif /* ACTIVE_EDITOR*/