112 lines
4.0 KiB
C++
112 lines
4.0 KiB
C++
/*=========================================================================
|
|
*
|
|
* 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<CPA_BaseObject> *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*/
|