/* /////////////////////////////////////////////////////////////////////////////////////////////////// // Description : Inter.hpp // // Interface DLL class. // This class is implement the DLL class. // /////////////////////////////////////////////////////////////////////////////////////////////////// // inherit from CPA_ObjectDLLBase // /////////////////////////////////////////////////////////////////////////////////////////////////// // Creation date: 21 jan 1997 Author: J Thénoz /////////////////////////////////////////////////////////////////////////////////////////////////// // Modification date: Author: // // // // /////////////////////////////////////////////////////////////////////////////////////////////////// */ #ifndef __WPINTERF_HPP__ #define __WPINTERF_HPP__ class Light; class DiaLight; class Geometry3D; //----------------------------------------------------------- // Definition of the types objects //----------------------------------------------------------- #define C_ucLightCursor 1974 //---------------------------------------------------------------------- // Definition of file extensions #define c_Light_3DsMax_File_extension "lg2" #define c_Light_File_extension "lgt" //---------------------------------------------------------------------- class Light_ListBySector { private: CPA_SuperObject *m_pSector; CPA_BaseObjectList m_stList; public: Light_ListBySector(CPA_SuperObject *pSector); ~Light_ListBySector(); CPA_SuperObject * GetSector (void) { return m_pSector; } CPA_BaseObjectList * GetList (void) { return &m_stList; } void fn_vUpdateList (void); }; //---------------------------------------------------------- // Object DLL interface class //---------------------------------------------------------- class Light_Interface : public CPA_ObjectDLLBase { private : static tdstKeyboardActionDef ms_a_stLightKeys[]; // keyboard mapping //--- Flags BOOL m_bModifInsertOk; // Force the acception of the AcceptModifInsert message BOOL m_bRunEngine; BOOL m_bStopDraw; BOOL m_bGotoMouseMode; // The cursor show where the light is going to be orient BOOL m_bMainDll; // This DLL is the active one when popup menu is called BOOL m_bExistSaveFile; // The save file exist BOOL m_bFirstBeforeEditor; // Before editor is first executed BOOL m_bLoadLight; // create light in loading function BOOL m_bSaveRLI; // RLI have change between previous save BOOL m_bNotifyIPO; // Notify IPO when save BOOL m_bSkipOnModifDelete; // Don't execute OnModifDelete call BOOL m_bOrientLight; // We want to orient a light BOOL m_bModifyAll; // All lights are modified BOOL m_bDialogOnScreen; // is the dialog display on the screen ? BOOL m_bClearStatus; // Status line must be cleaned //ROMTEAM SelectMode (Ionut Grozea 25/02/98) CString m_csLastSelectionType; BOOL m_bSelectModeIsLight; BOOL m_bPreviousLinkMode; //ENDROMTEAM SelectMode (Ionut Grozea) //ROMTEAM RealLights (Ionut Grozea 05/03/98) BOOL m_bEditOnlyRealLights; //ENDROMTEAM RealLights (Ionut Grozea) //ROMTEAM color lights Ionut Grozea 10-08-1998 BOOL m_bIs2ColorMode; //ROMTEAM color lights Ionut Grozea 10-08-1998 //--- General Light* m_o_ModifRadiusLight; // We modify the radius of this light CSplitFrame* m_p_oSplitFrameLight; // Main frame of the editor CPA_DialogList* m_p_oDialogList; // dialog list //--- popup Light* m_poRClicLight; // we make a R button action on this light Light* m_poLight; // Light that we edit //--- CPA_List CPA_List m_ListMovingLight; // light that move CPA_List m_ListOfInvalideLight; // light that have an invalide matrix during loadings CPA_List m_ListDeleteLightBeforeEngine; CPA_List m_ListOfParentDeleteLightBeforeEngine; CPA_List m_oModifSectorList; // list of modified sector CPA_List m_oErrorSectorLightList; // list of lights that can't be updated because over 50 lights/sectors CPA_KeyActionConfiguration* m_poKeyboard; CImageList m_oIconList; //ROMTEAM RealLights (Ionut Grozea 05/03/98) CPA_List m_ListDeleteLight; CPA_List m_ListOfParentDeleteLight; //ENDROMTEAM RealLights (Ionut Grozea) // Shaitan CPA_List m_stListBySector; public: Light_Interface(void); ~Light_Interface(void); //ROMTEAM RealLights (Ionut Grozea 05/03/98) void fn_vRefreshAllLights(); void fn_bSetRealLight(BOOL bFlag) {m_bEditOnlyRealLights = bFlag;} BOOL fn_bGetRealLight() { return m_bEditOnlyRealLights ;} void RefreshOnlyRealLights(); void fn_vSetCursor ( UINT i ); ///ENDROMTEAM RealLights (Ionut Grozea) //ROMTEAM color lights Ionut Grozea 10-08-1998 BOOL fn_bGetColorMode() {return m_bIs2ColorMode;} void fn_SetColorMode(BOOL bValue) {m_bIs2ColorMode = bValue;} //ROMTEAM color lights Ionut Grozea 10-08-1998 //ROMTEAM selection Ionut Grozea 14-08-1998 CPA_DialogList* fn_GetDialogList (void){return m_p_oDialogList;} //ROMTEAM selection Ionut Grozea 14-08-1998 BOOL fn_bRunEngine (void) { return m_bRunEngine; } CPA_BaseObjectList * fn_pGetListBySector (CPA_SuperObject *pSector); void fn_vUpdateListsBySector(); //---------------------------------------------------------------------------------------- //---------------------------------------------------------------------------------------- // Dll Base //---------------------------------------------------------------------------------------- //---------------------------------------------------------------------------------------- // BOOL fn_bPreTranslateMessage(MSG * /*p_stMsg*/); void fn_vJustAfterRegistered(void); void fn_vConstruct(void); // void fn_vRefreshDatas(void); // void fn_vLevelChanges (void); void fn_vLevelHasChanged (void); // Editor Modifs void fn_vOnModifDelete (CPA_List *pListObjects, tdeTypeModif eType, tdeStatus eStatus); void fn_vOnModifParent (CPA_List *pListObjects, tdeTypeModif eType, tdeStatus eStatus); void fn_vOnModifCopy (CPA_List *pListObjects, tdeTypeModif eType, tdeStatus eStatus); // void fn_vOnModifName (CPA_SuperObject *pEdObj, CString csInitalName, CString csFinalName, tdeTypeModif eType, tdeStatus eStatus); // void fn_vOnSelect (CPA_SuperObject *pEdObj, tdeTypeModif eType, tdeStatus eStatus); void fn_vOnModifInsert (CPA_SuperObject *pEdObj, CPA_SuperObject *pParent, tdstPosition *p_stPosition, tdeTypeModif eType, tdeStatus eStatus); // Moves void fn_vOnModifMove (CPA_List *pListObjects, CPA_List *pListConcerned, tdeTypeModif eType, tdeStatus eStatus); void fn_vOnBeginMove (CPA_List *pListObjects, CPA_List *pListConcerned, tdeStatus eStatus); void fn_vOnMoving (CPA_List *pListObjects, CPA_List *pListConcerned, tdeStatus eStatus); // permission // BOOL fn_bAcceptModifDelete (CPA_List *pListObjects, tdeStatus eStatus); // BOOL fn_bAcceptModifParent (CPA_List *pListObjects, tdeStatus eStatus); // BOOL fn_bAcceptModifCopy (CPA_List *pListObjects, tdeStatus eStatus); // BOOL fn_bAcceptModifTranslate (CPA_List *pListObjects, tdeStatus eStatus); // BOOL fn_bAcceptModifRotate (CPA_List *pListObjects, tdeStatus eStatus); // BOOL fn_bAcceptModifInsert (CPA_SuperObject *pEdObj, CPA_SuperObject *pParent, tdeStatus eStatus); BOOL fn_bAcceptModifScale (CPA_SuperObject *pEdObj, tdeStatus eStatus) { return FALSE; } // BOOL fn_bAcceptModifName (CPA_SuperObject *pEdObj, tdeStatus eStatus); // BOOL fn_bAcceptMultiSelect (void); // to precise selection tdeTypeAnswer fn_bAcceptSelect (CPA_SuperObject *pEdObj, ACP_tdxIndex xIndex, HIE_tdstPickInfo *pPicking, tdeStatus eStatus); // orient BOOL fn_bAcceptOrientInstance (CPA_SuperObject *pEdObj); BOOL fn_bOnClickOrientPosition (CPA_SuperObject *pEdObj, tdstPosition *pOrientPosition); BOOL fn_bOnOrientingObject (CPA_SuperObject *pEdObj, tdstPosition *pOrientPosition); BOOL fn_bOnEndOrientObject (CPA_SuperObject *pEdObj, tdstPosition *pOrientPosition); /*=========================================================================== Dialog List =========================================================================*/ // BOOL fn_bSetCustomTest (CPA_DialogList *pDialog); // BOOL fn_bCustomTestFunction (CString csCurrentType, CString csTestName, CPA_BaseObject *pEdObj); //---------------------------------------------------------------------------------------- //---------------------------------------------------------------------------------------- // Editor Base //---------------------------------------------------------------------------------------- //---------------------------------------------------------------------------------------- // focus // void fn_vHasLostFocus (void); // BOOL fn_bHasGainedFocus (void); // engine - editor void fn_vBeforeEngine (void); void fn_vBeforeEditor (void); // engine // BOOL fn_bAcceptToRunEngine (void); // BOOL fn_bAcceptToRunTimerEngine (void); // end appli // void fn_vJustBeforeClosing (void); // BOOL fn_bAcceptToExit (void); // save // BOOL fn_bAcceptToSave (void); void fn_vBeforeSaveAll (void); void fn_vAfterSaveAll (void); // keys //CPA2 Corneliu Babiuc 21-05-98 BOOL _OnKeyDown (UINT nChar, UINT nRepCnt, UINT nFlags); //END CPA2 Corneliu Babiuc 21-05-98 BOOL _OnKeyUp (UINT nChar, UINT nRepCnt, UINT nFlags); // mouse // BOOL _OnMouseMove (UINT nFlags, tdstMousePos *p_stPos, MTH3D_tdstVector *p_stVect); // BOOL _OnLButtonDblClk (UINT nFlags, tdstMousePos *p_stPos, ACP_tdxIndex xIndex, HIE_tdstPickInfo *p_stPickInfo); // BOOL _OnRButtonDblClk (UINT nFlags, tdstMousePos *p_stPos, ACP_tdxIndex xIndex, HIE_tdstPickInfo *p_stPickInfo); BOOL _OnLButtonDown (UINT nFlags, tdstMousePos *p_stPos, ACP_tdxIndex xIndex, HIE_tdstPickInfo *p_stPickInfo); BOOL _OnRButtonDown (UINT nFlags, tdstMousePos *p_stPos, ACP_tdxIndex xIndex, HIE_tdstPickInfo *p_stPickInfo); BOOL _OnLButtonUp (UINT nFlags, tdstMousePos *p_stPos); // BOOL _OnRButtonUp (UINT nFlags, tdstMousePos *p_stPos); // command // BOOL _OnCommand (UINT IDCmdMsg); // BOOL _OnUpdateCommandUI (UINT uiID, CCmdUI *pCmdUI); // dragdrop // BOOL _OnDragDropEnd (WPARAM wParam, LPARAM lParam); // BOOL _OnDragDropMove (WPARAM wParam, LPARAM lParam); // BOOL _OnDragDropLooseFocus (WPARAM wParam, LPARAM lParam); // BOOL _OnDragDropGainFocus (WPARAM wParam, LPARAM lParam); // add objects to draw // void fn_vAddObjectsToDraw (GLD_tdstViewportAttributes *p1, GLI_tdxHandleToLight p2); // void fn_vAddObjectsToDraw2 (GLD_tdstViewportAttributes *p1, GLI_tdxHandleToLight p2); /*=========================================================================== Reinit =========================================================================*/ // void fn_vOnChangeDevice (void); // void fn_vOnChangeWorld (void); // void fn_vOnChangeRoot (void); /*=========================================================================== Models =========================================================================*/ // BOOL fn_bCanDeleteThisModel (CString csListName, CString csModelType, CString csModelName); // void fn_vOnAddModelToList (CPA_ObjectDLLBase *pOwnerDLL, CString csListName, CString csModelName, tdeTypeModif eType); /*=========================================================================== for Dialog List =========================================================================*/ CPA_BaseObject * GetDialogSelection (CPA_DialogList *pDialog, CString csTypeName, tdeListDrawMode eDrawMode); void GetListsForDialog (CPA_DialogList *pDialog); BOOL fn_bOnSelChangeHierarchyTree (CPA_DialogList *pDialog, CString csTypeName, CPA_BaseObject *pSelectedObject, CPA_BaseObject *pSelectedParent); BOOL fn_bOnDblClkHierarchyTree (CPA_DialogList *pDialog, CString csTypeName, CPA_BaseObject *pSelectedObject, CPA_BaseObject *pSelectedParent); BOOL fn_bOnSelChangeListObjects (CPA_DialogList *pDialog, CString csTypeName, CPA_BaseObject *pSelectedObject, BOOL bUnselect); BOOL fn_bOnDblClkListObjects (CPA_DialogList *pDialog, CString csTypeName, CPA_BaseObject *pSelectedObject); // BOOL fn_bCanDragItemInHierarchyTree (CPA_DialogList *pDialog, CString csTypeName, CPA_BaseObject *pObjectToDrag); // BOOL fn_bCanDropItemInHierarchyTree (CPA_DialogList *pDialog, CString csTypeName, CPA_BaseObject *pObjectToDrop, CPA_BaseObject *pTarget); // BOOL fn_bOnDragDropInHierarchyTree (CPA_DialogList *pDialog, CString csTypeName, CPA_BaseObject *pObject, CPA_BaseObject *pTarget); // BOOL fn_bOnSelChangeComboList (CPA_DialogList *pDialog, CString csTypeName); // BOOL fn_bOnButtonTest (CPA_DialogList *pDialog, CString csTypeName, tdeListDrawMode eDraw); BOOL fn_bOnKeyDownInDialog (CPA_DialogList *pDialog, CString csTypeName, tdeListDrawMode eDraw, CPA_BaseObject *pSelectedObject, UINT nChar, UINT nRepCnt, UINT nFlags); // BOOL fn_bOnKeyUpInDialog (CPA_DialogList *pDialog, CString csTypeName, tdeListDrawMode eDraw, // CPA_BaseObject *pSelectedObject, UINT nChar, UINT nRepCnt, UINT nFlags); // void fn_vInitDefaultParameters (CPA_DialogList *pDialog); // void fn_vSetANewTest (CPA_DialogList *pDialog, CString csCurrentList); BOOL fn_bTestFunction (CString csCurrentType, CString csTestName, CPA_BaseObject *pEdObj); // CString GetInfoForListItem (CPA_DialogList *pDialog, CString csListName, CPA_BaseObject *pObject); // int GetIconForListItem (CPA_DialogList *pDialog, CString csListName, CPA_BaseObject *pObject); int GetStateForListItem (CPA_DialogList *pDialog, CString csListName, CPA_BaseObject *pObject); // CPA_BaseObject * GetTreeNodeFirstChild (CPA_DialogList *pDialog, CString csListName, CPA_BaseObject *pParent); // CPA_BaseObject * GetTreeNodeNextChild (CPA_DialogList *pDialog, CString csListName, CPA_BaseObject *pParent, CPA_BaseObject *pCurrentChild); // int GetIconForTreeItem (CPA_DialogList *pDialog, CString csListName, CPA_BaseObject *pObject); // int GetStateForTreeItem (CPA_DialogList *pDialog, CString csListName, CPA_BaseObject *pObject); /*=========================================================================== Current Editor =========================================================================*/ tdePermission fn_eAcceptNewEditor (CPA_EditorBase *pNewEditor); // BOOL fn_bCanActivateEditor (CPA_List *pParams); void fn_vOnActivateEditor (CPA_List *pParams, BOOL bBackActivated=FALSE); // BOOL fn_bCanCloseEditor (void); void fn_vOnCloseEditor (void); // void fn_vBackActiveMe (void *pMyData); // void fn_vEraseWalkDataStructure (void *pMyData); /*=========================================================================== Dialog Bar - Mircea Dunka 31 Aug. 1998 =========================================================================*/ void fn_vDefineDlgBarBtnIcon (tde_DlgBarCategory wCategory, tds_DlgBarBtn *_pDlgBarBtn); /*=========================================================================== SubMenus and PopupMenu =========================================================================*/ BOOL fn_bDefineSubMenu (EDT_SubMenu *_p_oEDTSubMenu); void _OnSubMenuCommand (EDT_SubMenu *_p_oEDTSubMenu,UINT uiMsgID); BOOL fn_bDefinePopupMenu (EDT_PopUpMenu *pPopup, CPA_List *pSelection, BOOL bAsCurrentEditor); void _OnPopUpMenuCommand (UINT m_IDCmdMsg); /*=========================================================================== Coherence =========================================================================*/ // BOOL fn_bOnInvalidateLink (CPA_BaseObject *pOwner, CPA_BaseObject *pReferencedObject, BOOL bDestroyed); // void fn_vOnRestoreLink (CPA_BaseObject *pOwner, CPA_BaseObject *pReferencedObject); // void fn_vOnModifyChild (CPA_BaseObject *pOwner, CPA_BaseObject *pReferencedObject, unsigned long _ulData); /*=========================================================================== Draw Flag =========================================================================*/ // void fn_vOnModifDrawFlag (CPA_SuperObject *pSuperObject); /*=========================================================================== General Purpose =========================================================================*/ long OnQueryAction (CPA_EditorBase * /*p_oSender*/, WPARAM, LPARAM); // long OnQueryInfos (CPA_EditorBase * /*p_oSender*/, WPARAM, LPARAM); // long OnQueryOpen (CPA_EditorBase * /*p_oSender*/, WPARAM, LPARAM); // long OnQueryClose (CPA_EditorBase * /*p_oSender*/, WPARAM, LPARAM); /*=========================================================================== Reachable Objects =========================================================================*/ // BOOL fn_bLoadBaseObject (CPA_BaseObject *p_oObject); //---------------------------------------------------------------------------------------- //---------------------------------------------------------------------------------------- // Object DllBase //---------------------------------------------------------------------------------------- //---------------------------------------------------------------------------------------- // hierarchy // CPA_SuperObject * GetNewEditorInstance (HIE_tdxHandleToSuperObject pEngineInstance); void fn_vBuildNewEditorInstance (CPA_SuperObject *pEditorInstance, HIE_tdxHandleToSuperObject pEngineInstance); // void fn_vUpdateEditorInstance (CPA_SuperObject *pEditorInstance, HIE_tdxHandleToSuperObject pEngineInstance); // BOOL fn_bCanHandleThisType (long lEngineType); // models & instances void fn_vInitListByType (CPA_World *pWorld); void fn_vInitListsOfModels (void); // void fn_vSaveListModels (CString csListName, CPA_List *pListModels); // CString fn_csLoadListModels (void); // EDT_Model * GetNewModel (CString csListName); // BOOL fn_bCanLoadNewModel (CString csListName); // BOOL fn_bCanDeleteModel (CString csListName); // BOOL fn_bCanSaveListModels (CString csListName); // BOOL fn_bCanLoadListModels (void); // void fn_vOnLoadNewModel (CString csListName, EDT_Model *pNewModel); CPA_SuperObject * GetNewInstance (CString csTypeName, CString csModelName, CPA_SuperObject *pParent); tdeTypeSO GetTypeInstance (CString csTypeName, CString csModelName); //ANNECY Shaitan EmptySectors 25/02/98 tdeSaveStatus GetStatusInstance (CString csTypeName, CString csModelName); //ENDANNECY Shaitan EmptySectors CPA_SuperObject * GetParentForInsertion (CString csTypeName, CString csModelName, tdstPosition *p_stPosition); // BOOL fn_bChooseInsertPosition (CPA_SuperObject *pNewInstance, CPA_SuperObject *pParent, tdstPosition *p_stPosition); // objects CPA_BaseObject * GetNewObject (CString csObjectFile, CString csObjectName, FILE *p_fFile, CPA_MainWorld *p_oMainWorld); CPA_BaseObject * Duplicate (CPA_BaseObject *pObject, CPA_SuperObject *pNewSuperObject); CPA_SuperObject * GetCopyOfProtectedChild (CPA_SuperObject *pInitialChild, CPA_SuperObject *pNewOwner); // permissions for EvtEditor // BOOL fn_bAcceptAsParent (CPA_BaseObject *pChild, CPA_BaseObject *pParent); // BOOL fn_bAcceptAsChild (CPA_BaseObject *pParent, CPA_BaseObject *pChild); // for bounding volumes // void fn_vComputeBoundingVolume(CPA_BaseObject *pObject); ACP_tdxHandleOfObject fn_hGetBoundingVolume(CPA_BaseObject *_pObj); // when insertion is canceled // void fn_vOnCancelInsertion (CPA_SuperObject *pInstance); // Shaitan Scale { // to scale editor objects CPA_SuperObject * GetVisualSuperObject (CPA_SuperObject *pInstance); //End Shaitan Scale } BOOL fn_bIsExistFile (void) { return m_bExistSaveFile; } void fn_vSetExistFile (BOOL bExistSaveFile) { m_bExistSaveFile=bExistSaveFile; } // Redefinition EDT_Model * fn_pstLoadNewDescriptor (void); //----------------------------------------------------------- Loading void fn_vLoadStaticLight (void); CPA_SuperObject* fn_pCreateNewLightFromEngineHandle ( GLI_tdxHandleToLight hStaticLight ); //-------------------------------------------------------- save preferences void fn_vSaveDialogsPreferences (void); //----------------------------------------------------------- Edition void fn_vEdit (Light* poLight,BOOL bSelectInList=TRUE); void fn_vSetRLIDrawMask (BOOL bOnlyRLI ); //---------------------------------------------------------- Sector void fn_vAddModifSectorList ( CPA_List* poList ) { m_oModifSectorList.AddTail(poList); } //--------------------------------------------------- status line void fn_vSetClearStatus (BOOL bClearStatus) { m_bClearStatus = bClearStatus; } void fn_vClearStatus (void); //--------------------------------------------------- other functions void fn_vComputeAbsoluteMatrix (CPA_SuperObject* psoWP); void fn_vComputeNewRelativeMatrix (HIE_tdxHandleToSuperObject _hSprObj); void fn_vComputeInsertMatrix (CPA_SuperObject* poInsertSuperObject, CPA_SuperObject* poFatherSuperObject ); //--------------------------------------- Get new graphical instances CPA_SuperObject* fn_pGetNewSpotGraphicObject (GLI_tdstLight_ *p_stLight = NULL); CPA_SuperObject* fn_pGetNewSphericalGraphicObject (GLI_tdstLight_ *p_stLight = NULL); CPA_SuperObject* fn_pGetNewParallelGraphicObject (GLI_tdstLight_ *p_stLight = NULL); CPA_SuperObject* fn_pGetNewAmbientGraphicObject (GLI_tdstLight_ *p_stLight = NULL); CPA_SuperObject* fn_pGetNewFogGraphicObject (GLI_tdstLight_ *p_stLight = NULL); CPA_SuperObject* fn_pGetNewConeGraphicObject (void); CPA_SuperObject* fn_pGetNewSphereGraphicObject (void); CPA_SuperObject* fn_pGetNewCursorGraphicObject (GLI_tdstLight_ *p_stLight = NULL); //CHINA WFQ (MT) 16-02-98 { CPA_SuperObject* fn_pGetNewParallelBoxGraphicObject (void); CPA_SuperObject* fn_pGetNewBoxGraphicObject (void); //ENDCHINA WFQ } //ROMTEAM Z_Light Ionut Grozea 01-05-1998 CPA_SuperObject* fn_pGetNewZGraphicObject (void); //ENDROMTEAM Z_Light Ionut Grozea 01-05-1998 inline void fn_vRefreshHierarchyList (void); //------------------------------------ Edition void fn_vRefreshLight (Light* poLight=NULL, BOOL bDelete=FALSE, BOOL bDraw=TRUE ); void fn_vRefreshGameLight (void); void fn_vRefreshGameLight (Light* poLight, BOOL bDelete=FALSE, BOOL bSaveRLI=TRUE); void fn_vMakeLightArray ( long* lNbLight, GLI_tdxHandleToLight* d_hLight ); void fn_vSwitchOnLight ( Light* poLight, BOOL bOn ); //-------------------------- RLI void fn_vComputeRLI (BOOL bSave=TRUE); CString fn_csGetSaveFileName (void); // return current file name void fn_vGiveProgressInfo(CString csMessage, signed char cPercentage, BOOL _bNoHighlight = TRUE ); protected : void fn_vPick ( ACP_tdxIndex* pxNbPicked, HIE_aDEF_stTabOfPickInfo& ra_stPickInfo, tdstMousePos *p_stPos); CPA_SuperObject* fn_pExplorePicking (ACP_tdxIndex xIndex, HIE_tdstPickInfo *p_stObject, long lTypeObject, ACP_tdxIndex* pxFindIndex=NULL ); void fn_vInitListOfLightSectionSector (void); void fn_vDeleteInvalideLight (void); void fn_vCreate3DSMaxLights (void); // extract a reachable object from the list CPA_BaseObject* fn_pSelectLightParam ( CPA_List *pParams ); unsigned short fn_iKeyAction ( UINT cKey ) { return m_poKeyboard->mfn_uwKeyToAction(cKey); } void fn_vExistSaveFile (void); BOOL fn_bIs3DsMaxLight (void); void fn_vUpDateAllLight (void); void fn_vSaveRLIModifyIPO (void); public: //ROMTEAM color lights Ionut Grozea 10-08-1998 void fn_vInitGameMaterial ( Geometry3D* poGeomObject, ACP_tdxHandleOfElement hElement, float fR, float fG, float fB ); //ENDROMTEAM color lights Ionut Grozea 10-08-1998 }; extern tdstDLLIdentity g_stLightIdentity; #endif // __WPINTERF_HPP__