reman3/Rayman_X/cpa/tempgrp/TGM/Src/MMatObj.hpp

78 lines
2.5 KiB
C++

/*=============================================================================
*
* 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 <afxtempl.h>
#include <afxcview.h>
#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__ */