/*============================================================================= * * Filename: MMatObj.hpp * Version: 1.0 * Date: 06/11/96 * Author: B.G. * * Description: editor material class * *===========================================================================*/ #ifndef __MMATOBJ_HPP__ #define __MMATOBJ_HPP__ /******************************************/ #if _MSC_VER >= 1000 #pragma once #endif /******************************************/ #include #include #include "Acp_base.h" #include "itf.h" #include "gmt.h" #include "scr.h" #include "dpt.h" #include "x:\cpa\main\inc\_editid.h" //TODO: replace with "mai.h" some day class tdoEditorMechanicsMaterial : public CPA_SaveObject { public: tdoEditorMechanicsMaterial( CPA_FileObject *_p_oOwnerFile, CString _csId, BOOL _bSectionAlreadyExists, DNM_tdxHandleToMecMatCharacteristics _hTemplateMechanicsMaterial ); ~tdoEditorMechanicsMaterial(); DNM_tdxHandleToMecMatCharacteristics m_hGetEngineMaterial() { return m_hMechanicsMaterial; } static void m_vCallBackSaveMMT( // save the mechanics material section SCR_tdst_File_Description *_p_stFile, char *_p_szSectionName, void *_p_vData, SCR_tde_Ntfy_Action _eAction ); void m_vAssociateEngineMaterial(DNM_tdxHandleToMecMatCharacteristics _hMechanicsMaterial, BOOL _bSectionAlreadyExists); BOOL m_bIsReferenced(); void m_vLoadAssociatedEngineMaterial(); BOOL m_bGetHighlightColor(GEO_tdstColor *_p_stColor = NULL); void m_vSetHighlightColor(GEO_tdstColor _stColor); void m_vEnableHighlight(BOOL _bEnable = TRUE) { m_bIsHighlighted = _bEnable; } static SCR_tdst_Link_Table *m_p_stGetAssociatedLinkTable(); static BOOL m_bIsEngineMaterialValid(DNM_tdxHandleToMecMatCharacteristics _hMechanicsMaterial); //static CString m_csGetBaseDataPath(); static void m_vInvalidateEngineMaterial(DNM_tdxHandleToMecMatCharacteristics &r_hMechanicsMaterial); static CString m_csGetMaterialType(); static CString m_csGetScriptExtension(); //overloads from base class virtual void *GetData(void) { return m_hMechanicsMaterial; } virtual long GetDataType(void) { return 0; }; virtual tdeMissingCriteria fn_eCheckUnicity(const CString csNewName) { return fn_eCheckUnicityWithOwner(csNewName); } //virtual void fn_vNotify(SCR_tde_Ntfy_Action _eAction); //CString GetReferencedSectionName(void); private: DNM_tdxHandleToMecMatCharacteristics m_hMechanicsMaterial; BOOL m_bIsHighlighted; GEO_tdstColor m_stHighlightColor; }; #endif /* __MMATOBJ_HPP__ */