Add rayman2 source files

This commit is contained in:
2024-09-18 02:33:44 +08:00
parent bcc093f8ed
commit fb036c54fd
14339 changed files with 2596224 additions and 0 deletions

View File

@@ -0,0 +1,45 @@
/******************************************************************************
* CFast_1.hpp : passage de l'ia en C, 1<>re passe
* auteur : Fred "Bart" Compagnon
******************************************************************************/
//#include "ai.h"
#define CFAST_DEBUG_FIRST_PASS
typedef struct CFast_tdstNode_
{
tdstNodeInterpret stNode;
tdstNodeInterpret stMiscellaneousNode;
char* d_cOptimisedNode;
long lIndexOfRef; // = -1 if i'm not a reference !
unsigned char ucIndexOfEvalParam; // 0 if no need to memorise value => index starts at 1 !
unsigned char ucNumberOfParamNeeded; // 0 if no param in input
unsigned char ucNumberOfNodeToSkipAfterOptimisation;
BOOL bAffectWithGetVector;
BOOL bIsABooleanDsgVarRef;
BOOL bIsACondition ;
BOOL bIsATernOpParam ;
} CFast_tdstNode;
typedef struct CFast_tdstComportTree_
{
//char szName[256]; ?
//long CFast_lMyIndex; ?
struct CFast_tdstNode_* p_stCFastNode;
unsigned short uwNbNode;
unsigned short uwNbMetaAction; // Nb de MetaAction
unsigned short uwNbStopEngine; // Nb de BloquantMoteur
char* d_cDeclarations;
} CFast_tdstComportTree;
#if defined (CFAST_DEBUG_FIRST_PASS)
void CFast_FirstPassOpening() ;
long lCFast_FirstPassClosing() ;
#endif //defined (CFAST_DEBUG_FIRST_PASS)
CFast_tdstComportTree* CFast_FirstPassInitComport ( tdstComport* p_stComport ) ;
CFast_tdstComportTree* CFast_FirstPassInitSubr ( tdstMacro* p_stMacro ) ;
void CFast_FirstPassDesinit () ;
void CFast_FirstPassFillTreeComport ( CFast_tdstComportTree* p_stFastTree, tdstComport* p_stComport ) ;
void CFast_FirstPassFillTreeSubr ( CFast_tdstComportTree* p_stFastTree, tdstMacro* p_stMacro ) ;

View File

@@ -0,0 +1,45 @@
#ifndef _CFAST_2_HPP_
#define _CFAST_2_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
typedef struct tdstTypeOfParam_
{
enum tdeTypeInterpret_ eTypeNode;
enum tdeVariableType_ eTypeVar;
enum tdeOperatorId_ eOperatorId;
// HIE_tdxHandleToSuperObject hPersoRef;
CFast_tdstNode *p_stCFastNode;
// unsigned char ucVarId;
unsigned char ucIndexOfEvalParam;
unsigned char ucNumberOfParamNeeded;
char *d_cOptimisedNode;
// char cXYZ;
/*
1 x value of vector
2 y value of vector
3 z value of vector
*/
// char cArrayIndice;
}tdstTypeOfParam;
void CFast_fn_vPassTwo(CFast_tdstComportTree*, tdstEngineObject *, unsigned short);
void CFast_fn_vVariablesDeclaration(CFast_tdstComportTree *);
void CFast_fn_vSelectSetVar(enum tdeVariableType_,char *);
void CFast_fn_vSelectGetVar(enum tdeVariableType_, char *);
void CFast_fn_vSelectGetFuncResult(enum tdeVariableType_, char *);
enum tdeVariableType_ CFast_fn_eGetFunctionTypeOutParam(CFast_tdstNode *, tdeFuncId_);
enum tdeVariableType_ CFast_fn_eGetDsgVarRefType(tdstNodeInterpret *,tdstEngineObject *,unsigned char);
#endif //_CFAST_2_HPP_

View File

@@ -0,0 +1,95 @@
/******************************************************************************
* CFast_3.hpp : passage de l'ia en C, 3eme passe
* auteur : Jean-Marc Drouaud
******************************************************************************/
#ifndef _CFast_3_Header_
#define _CFast_3_Header_
#include "ai.h"
#include "EdIRIRD.hpp"
#include "CFast_1.hpp"
#define CFast_szParamVarName "CFast_g_a_stParam"
#define CFast_szPseudoTreeVarName "CFast_g_a_stPseudoTree"
#define CFast_szCondVarName "CFast_g_a_lLong"
#define CFast_szBoolMetaRflxName "CFast_g_bMetaActionInRfx"
//#define CFast_szCFastPath "x:\\cpa\\exe\\main\\gamedata\\world\\levels\\_common\\cfast\\"
#define CFast_szCFastPath "gamedata\\world\\levels\\_common\\cfast\\"
BOOL CFast_ThirdPassInit ( CPA_EdIR_Brain *p_oBrain, char *szEngineSectionName, char *szModelName, char *szFamilyName ) ;
BOOL CFast_ThirdPassAddSubroutine ( CPA_EdIR_Brain *p_oBrain, CFast_tdstComportTree *p_stTree, tdstMacro *_p_stMacro, unsigned long ulReflexe ) ;
BOOL CFast_ThirdPassAddRfx ( CPA_EdIR_Brain *p_oBrain, CFast_tdstComportTree *p_stTree, unsigned long ulReflexe ) ;
BOOL CFast_ThirdPassAddCmp ( CPA_EdIR_Brain *p_oBrain, CFast_tdstComportTree *p_stTree, unsigned long ulComportement ) ;
BOOL CFast_ThirdPassFinish ( CPA_EdIR_Brain *p_oBrain ) ;
void ThirdPassInitPseudoTree( long lIndex ) ;
void CFast_ThirdPassInitMacro ( AI_tdstMind *p_stMind ) ;
void CFast_ThirdPassCreateAllMacro (CFast_tdstNode *p_stNode, unsigned long ulNbNode, char *szDecl) ;
void CFast_ThirdPassCreateMacro (CFast_tdstNode *p_stNode, CFast_tdstNode *p_stLastNode) ;
long CFast_ThirdPassAddMacro ( void *vMacroId ) ;
long CFast_ThirdPassIsMacroCreate(void *vMacroId) ;
long CFast_ThirdPassIsMacroExist(void *vMacroId) ;
void CFast_ThirdPassInitSubr ( AI_tdstMind *p_stMind ) ;
void CFast_ThirdPassCreateSubr (CFast_tdstNode *p_stNode, CFast_tdstNode *p_stLastNode) ;
long CFast_ThirdPassAddSubs ( void *vSubrId ) ;
long CFast_ThirdPassIsSubrExist(void *vSubrId) ;
void CFast_ThirdPassPush ( CFast_tdstNode *p_stNode ) ;
CFast_tdstNode *CFast_ThirdPassPop ( void ) ;
long CFast_ThirdPassPopAllParam ( unsigned long ulNbParam, BOOL bRecursiveCall ) ;
CFast_tdstNode *CFast_ThirdPassPopParam ( void ) ;
void CFast_ThirdPassPushParam ( CFast_tdstNode *p_stNode ) ;
void CFast_ThirdPassAddKeyWord (CFast_tdstNode *p_stNode, BOOL bAddVar) ;
void CFast_ThirdPassAddCondition (CFast_tdstNode *p_stNode) ;
void CFast_ThirdPassAddOperator (CFast_tdstNode *p_stNode, BOOL bAddVar) ;
void CFast_ThirdPassAddFunction (CFast_tdstNode *p_stNode) ;
void CFast_ThirdPassAddProcedure (CFast_tdstNode *p_stNode) ;
void CFast_ThirdPassAddMetaAction (CFast_tdstNode *p_stNode) ;
void CFast_ThirdPassAddField (CFast_tdstNode *p_stCurrentNode) ;
void CFast_ThirdPassAddReal (CFast_tdstNode *p_stNode) ;
void CFast_ThirdPassAddConstant (CFast_tdstNode *p_stNode) ;
void CFast_ThirdPassAddButton (CFast_tdstNode *p_stCurrentNode);
void CFast_ThirdPassAddMask (CFast_tdstNode *p_stCurrentNode) ;
void CFast_ThirdPassAddModule (CFast_tdstNode *p_stCurrentNode) ;
void CFast_ThirdPassAddString (CFast_tdstNode *p_stCurrentNode) ;
void CFast_ThirdPassAddLipsSynchro (CFast_tdstNode *p_stCurrentNode) ;
void CFast_ThirdPassAddFamily (CFast_tdstNode *p_stCurrentNode) ;
void CFast_ThirdPassAddPerso (CFast_tdstNode *p_stCurrentNode) ;
void CFast_ThirdPassAddAction (CFast_tdstNode *p_stCurrentNode) ;
void CFast_ThirdPassAddObject (CFast_tdstNode *p_stCurrentNode) ;
void CFast_ThirdPassAddWP (CFast_tdstNode *p_stCurrentNode) ;
void CFast_ThirdPassAddComport (CFast_tdstNode *p_stCurrentNode) ;
void CFast_ThirdPassAddModule (CFast_tdstNode *p_stCurrentNode) ;
void CFast_ThirdPassAddSoundEvent (CFast_tdstNode *p_stCurrentNode) ;
void CFast_ThirdPassAddObjectTable (CFast_tdstNode *p_stCurrentNode) ;
void CFast_ThirdPassAddGameMaterial (CFast_tdstNode *p_stCurrentNode) ;
void CFast_ThirdPassAddParticleGenerator (CFast_tdstNode *p_stCurrentNode) ;
void CFast_ThirdPassAddColor (CFast_tdstNode *p_stCurrentNode) ;
void CFast_ThirdPassAddModel (CFast_tdstNode *p_stCurrentNode) ;
void CFast_ThirdPassAddLight (CFast_tdstNode *p_stCurrentNode) ;
void CFast_ThirdPassAddCaps (CFast_tdstNode *p_stCurrentNode) ;
void CFast_ThirdPassAddGraph (CFast_tdstNode *p_stCurrentNode) ;
void CFast_ThirdPassAddOptimisedNode (CFast_tdstNode *p_stNode) ;
void CFast_ThirdPassAddStackNode (CFast_tdstNode *p_stNode, unsigned long ulDepth ) ;
CFast_tdstNode *CFast_ThirdPassParseNode ( CFast_tdstNode *p_stNode, BOOL bAddVar) ;
BOOL CFast_ThirdPassParseTree ( CFast_tdstNode *p_stNode, unsigned long ulNbNode ) ;
CFast_tdstNode *CFast_ThirdPassSkipNode ( CFast_tdstNode *p_stNode ) ;
void CFast_ThirdPassAddUltraNode (void) ;
long CFast_ThirdPassMakeStaticTree ( CFast_tdstNode *p_stNode) ;
void CFast_ThirdPassAddStaticNode ( CFast_tdstNode *p_stNode) ;
char CFast_Get1Param(char *psz_Temp, CFast_tdstNode *p_stParam, char *cForFloat, char *cForVector, int iIndex) ;
char CFast_ThirdPassAddComp(CFast_tdstNode *p_stNode);
void change_mon_cmp (int) ;
void change_mon_rfx (int) ;
void CFast_vMakeFileNameFromModel (char *, char *);
CFast_tdstNode *CFast_ThirdPassProcessTernOperators ( CFast_tdstNode *p_stNode ) ;
#endif /* _CFast_3_Header_ */

View File

@@ -0,0 +1,14 @@
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
//-----------------IR-------------------------
#define D_ED_IR_ACTIVE
//--------------------------------------------
#define C_wNoNameFound (-1)
#define C_wMultipleNamesFound (-2)
#define C_wNoNameListFound (-3)
#define C_wMultipleNameListsFound (-4)
#define C_wNoFamilyFound (-5)
#define C_wMultipleFamiliesFound (-6)

View File

@@ -0,0 +1,13 @@
//
// EDCARAC.RC2 - resources Microsoft Visual C++ does not edit directly
//
#ifdef APSTUDIO_INVOKED
#error this file is not editable by Microsoft Visual C++
#endif //APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
// Add manually edited resources here...
/////////////////////////////////////////////////////////////////////////////

View File

@@ -0,0 +1,543 @@
//Microsoft Developer Studio generated resource script.
//
#include "EdIRRes.h"
// Generated Help ID header file
#define APSTUDIO_HIDDEN_SYMBOLS
#include "EdIRRes.hm"
#undef APSTUDIO_HIDDEN_SYMBOLS
#define APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 2 resource.
//
#include "afxres.h"
/////////////////////////////////////////////////////////////////////////////
#undef APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
// English (U.S.) resources
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
#ifdef _WIN32
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
#pragma code_page(1252)
#endif //_WIN32
/////////////////////////////////////////////////////////////////////////////
//
// Dialog
//
IDD_DIALOG_FIND_AND_REPLACE DIALOG DISCARDABLE 0, 0, 286, 92
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Find and Replace"
FONT 8, "MS Sans Serif"
BEGIN
COMBOBOX IDC_COMBO_FIND,70,17,135,68,CBS_DROPDOWN |
CBS_AUTOHSCROLL | CBS_SORT | WS_VSCROLL | WS_TABSTOP
COMBOBOX IDC_COMBO_REPLACE,69,37,136,48,CBS_DROPDOWN | CBS_SORT |
WS_VSCROLL | WS_TABSTOP
DEFPUSHBUTTON "Find next",IDC_BUTTON_FIND_NEXT,223,4,50,14,BS_CENTER
PUSHBUTTON "Replace",IDC_BUTTON_REPLACE,223,24,50,14,BS_CENTER
PUSHBUTTON "Replace All",IDC_BUTTON_REPLACE_ALL,223,43,50,14,
BS_CENTER
CONTROL "Case sensitive",IDC_CHECK_CASE_SENSITIVE,"Button",
BS_AUTOCHECKBOX | WS_TABSTOP,17,64,61,10
PUSHBUTTON "Cancel",IDCANCEL,223,62,50,14,BS_CENTER
LTEXT "Find what:",IDC_STATIC1,15,19,34,8
LTEXT "Relace with:",IDC_STATIC2,15,39,40,8
CONTROL "All AI",IDC_CHECK_ALL_AI,"Button",BS_AUTOCHECKBOX |
WS_TABSTOP,99,64,32,10
END
IDD_DIALOG_SELECT_IA_OBJECTS DIALOG DISCARDABLE 0, 0, 299, 194
STYLE DS_MODALFRAME | WS_POPUP
FONT 8, "MS Sans Serif"
BEGIN
PUSHBUTTON "&Show parents",IDC_BUTTON_SHOW_HIDE,1,1,48,14
CONTROL "List1",IDC_LIST_TYPES,"SysListView32",LVS_REPORT |
LVS_SINGLESEL | LVS_SORTASCENDING | WS_BORDER |
WS_TABSTOP,1,16,146,177
CONTROL "List2",IDC_LIST_PARENTS,"SysListView32",LVS_REPORT |
LVS_SINGLESEL | LVS_SORTASCENDING | NOT WS_VISIBLE |
WS_BORDER | WS_TABSTOP,98,16,101,177
CONTROL "List3",IDC_LIST_DATA,"SysListView32",LVS_REPORT |
LVS_SINGLESEL | LVS_SORTASCENDING | WS_BORDER |
WS_TABSTOP,151,16,147,177
END
/////////////////////////////////////////////////////////////////////////////
//
// DESIGNINFO
//
#ifdef APSTUDIO_INVOKED
GUIDELINES DESIGNINFO DISCARDABLE
BEGIN
IDD_DIALOG_FIND_AND_REPLACE, DIALOG
BEGIN
LEFTMARGIN, 7
RIGHTMARGIN, 279
BOTTOMMARGIN, 85
END
END
#endif // APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// Icon
//
// Icon with lowest ID value placed first to ensure application icon
// remains consistent on all systems.
IDI_ICON_IR_IDR_MACRO ICON DISCARDABLE "..\\res\\irmacro.ico"
IDI_ICON_IR_IDR_SUBR ICON DISCARDABLE "..\\res\\icon_ir_.ico"
IDI_ICON_IR_MARKEXECUTED ICON DISCARDABLE "..\\res\\me.ico"
IDI_ICON_EXECUTED_LINE ICON DISCARDABLE "..\\res\\icon_exe.ico"
/////////////////////////////////////////////////////////////////////////////
//
// Menu
//
IDR_IR_MENU_POPUP_RULES MENU DISCARDABLE
BEGIN
POPUP "Right button click menu"
BEGIN
MENUITEM "Find &Next F3", ID_IR_RULES_NEXT
MENUITEM "Find &Previous F4", ID_IR_RULES_PREVIOUS
MENUITEM "Find &Replace", ID_IR_RULES_FINDREPLACE
MENUITEM SEPARATOR
POPUP "Show para&meters", GRAYED
BEGIN
MENUITEM "Test", ID_RIGHTBUTTONCLICKMENU_SHOWPARAMETERS_TEST
END
MENUITEM SEPARATOR
MENUITEM "Add to &watch Ctrl+W", ID_IR_RULES_ADDWATCH, GRAYED
MENUITEM SEPARATOR
MENUITEM "Change Font ...", ID_IR_RULES_CHANGEFONT
END
END
#endif // English (U.S.) resources
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// French (France) resources
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_FRA)
#ifdef _WIN32
LANGUAGE LANG_FRENCH, SUBLANG_FRENCH
#pragma code_page(1252)
#endif //_WIN32
/////////////////////////////////////////////////////////////////////////////
//
// Dialog
//
IDD_IR_ACTIONS_CONDITIONS_BOX DIALOG DISCARDABLE 0, 0, 186, 94
STYLE DS_MODALFRAME | WS_POPUP
FONT 8, "MS Sans Serif"
BEGIN
LISTBOX IDC_IR_LISTBOX,0,0,185,94,LBS_SORT |
LBS_NOINTEGRALHEIGHT | WS_VSCROLL | WS_TABSTOP
END
IDD_IR_BEHAVIOUR_NAME DIALOG DISCARDABLE 0, 0, 186, 29
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION
CAPTION "New Name"
FONT 8, "MS Sans Serif"
BEGIN
EDITTEXT IDC_EDIT_BEHAVIOUR_NAME,7,8,127,14,ES_AUTOHSCROLL
DEFPUSHBUTTON "OK",IDOK,143,8,37,14
END
IDD_IR_EDIA_FORM DIALOG DISCARDABLE 0, 0, 5, 5
STYLE WS_CHILD
FONT 10, "Courier"
BEGIN
END
IDD_IR_DIAGRAMME_VIEW DIALOG DISCARDABLE 0, 0, 73, 30
STYLE WS_CHILD
FONT 8, "MS Sans Serif"
BEGIN
LISTBOX IDD_IR_BEHAVIOUR_LIST,0,0,8,9,LBS_SORT |
LBS_NOINTEGRALHEIGHT | LBS_EXTENDEDSEL | NOT WS_VISIBLE |
NOT WS_BORDER | WS_VSCROLL | WS_TABSTOP
END
IDD_IR_PRINT_DIALOG DIALOGEX 0, 0, 188, 176
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Print ..."
FONT 8, "MS Sans Serif", 0, 0, 0x1
BEGIN
DEFPUSHBUTTON "&Print",IDOK,10,154,50,14
PUSHBUTTON "Pre&view",IDC_BUTTON_PREVIEW,68,154,50,15
PUSHBUTTON "&Cancel",IDCANCEL,126,154,50,14
PUSHBUTTON "Change &Font",IDC_BUTTON_CHANGE_FONT,115,17,52,15
LTEXT "Name",IDC_STATIC_FONT_NAME,19,18,90,13,0,
WS_EX_CLIENTEDGE
GROUPBOX "Font prefs ",IDC_STATIC,13,5,161,35
GROUPBOX "Print prefs ",IDC_STATIC,13,45,161,102
GROUPBOX "Print range",IDC_STATIC,28,58,132,63
CONTROL "Current behaviour",IDC_RADIO_CURRENT_BEHAVIOUR,"Button",
BS_AUTORADIOBUTTON | WS_GROUP,41,70,105,15
CONTROL "All intelligence behaviours",IDC_RADIO_ALL_BEHAVIOURS,
"Button",BS_AUTORADIOBUTTON,41,85,105,15
CONTROL "All IA behaviours",IDC_RADIO_ALL_IA,"Button",
BS_AUTORADIOBUTTON,41,100,105,15
CONTROL "One behaviour on a page",
IDC_CHECK_ONE_BEHAVIOUR_ON_PAGE,"Button",BS_AUTOCHECKBOX |
WS_TABSTOP,41,126,105,12
END
IDD_IR_CONSTANTS_DIALOG DIALOGEX 0, 0, 246, 159
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Constant"
FONT 8, "MS Sans Serif", 0, 0, 0x1
BEGIN
DEFPUSHBUTTON "OK",IDOK,183,138,50,14
CONTROL "List2",IDC_CONSTANT_LIST,"SysListView32",LVS_REPORT |
WS_BORDER | WS_TABSTOP,7,7,232,127,WS_EX_CLIENTEDGE
PUSHBUTTON "&New",IDC_BUTTON_NEW_CONSTANT,11,138,50,14
PUSHBUTTON "&Delete",IDC_BUTTON_DELETE_CONSTANT,127,138,50,14
PUSHBUTTON "&Change",IDC_BUTTON_CHANGE_CONSTANT,67,138,50,14
END
IDD_IR_NEW_CONSTANT DIALOG DISCARDABLE 0, 0, 145, 87
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Constant preset"
FONT 8, "MS Sans Serif"
BEGIN
DEFPUSHBUTTON "OK",IDOK,14,66,50,14
PUSHBUTTON "Cancel",IDCANCEL,81,66,50,14
COMBOBOX IDC_COMBO_TYPE,33,10,104,34,CBS_DROPDOWNLIST | CBS_SORT |
WS_VSCROLL | WS_TABSTOP
LTEXT "Type",IDC_STATIC,8,12,20,10
LTEXT "Name",IDC_STATIC,7,31,22,10
LTEXT "Value",IDC_STATIC,7,49,22,10
EDITTEXT IDC_EDIT_VALUE,33,47,104,12,ES_AUTOHSCROLL
EDITTEXT IDC_EDIT_CONSTNAME,33,28,104,12,ES_AUTOHSCROLL
END
IDD_IR_BUTTONVIEW DIALOGEX 0, 0, 848, 22
STYLE WS_CHILD
FONT 8, "MS Sans Serif"
BEGIN
PUSHBUTTON "Apply",IDC_IR_BUTTON_PROCESS,0,0,29,22,BS_ICON,0,
HIDC_IR_BUTTON_PROCESS
PUSHBUTTON "Stop",IDC_IR_BUTTON_STOP,65,0,31,22,BS_ICON,0,
HIDC_IR_BUTTON_STOP
PUSHBUTTON "Check",IDC_IR_BUTTON_CHECK,99,0,30,22,BS_ICON,0,
HIDC_IR_BUTTON_CHECK
PUSHBUTTON "Apply",IDC_IR_BUTTON_SAVE_ALL,163,0,30,22,BS_ICON,0,
HIDC_IR_BUTTON_SAVE_ALL
PUSHBUTTON "Print",IDC_IR_BUTTON_PRINT,195,0,30,22,BS_ICON,0,
HIDC_IR_BUTTON_PRINT
PUSHBUTTON "New",IDC_IR_BUTTON_NEW_BEHAVIOUR,228,0,32,22,BS_ICON,0,
HIDC_IR_BUTTON_NEW_BEHAVIOUR
PUSHBUTTON "-> Graph",IDC_IR_BUTTON_VIEW_MODE,544,0,38,22,BS_ICON,0,
HIDC_IR_BUTTON_VIEW_MODE
CONTROL "Intel",IDC_IR_RADIO_INTEL,"Button",BS_AUTORADIOBUTTON |
BS_ICON | BS_PUSHLIKE | WS_GROUP,586,0,39,22
CONTROL "Reflex",IDC_IR_RADIO_REFLEX,"Button",BS_AUTORADIOBUTTON |
BS_ICON | BS_PUSHLIKE,629,0,39,22
CONTROL "Decl",IDC_IR_RADIO_DECL,"Button",BS_AUTORADIOBUTTON |
BS_ICON | BS_PUSHLIKE,671,0,39,22
PUSHBUTTON "Apply",IDC_IR_BUTTON_PROCESS_ALL,31,0,31,22,BS_ICON,0,
HIDC_IR_BUTTON_PROCESS_ALL
PUSHBUTTON "Apply",IDC_IR_BUTTON_CONSTANT,714,0,38,22,BS_ICON,0,
HIDC_IR_BUTTON_CONSTANT
PUSHBUTTON "QuickSave",IDC_IR_BUTTON_QUICKSAVE,131,0,29,22,BS_ICON,
0,HIDC_IR_BUTTON_QUICKSAVE
CONTROL "Macro",IDC_IR_RADIO_MACRO,"Button",BS_AUTORADIOBUTTON |
BS_ICON | BS_PUSHLIKE,755,0,39,22
CONTROL "Subr",IDC_IR_RADIO_SUBR,"Button",BS_AUTORADIOBUTTON |
BS_ICON | BS_PUSHLIKE,798,0,39,22
PUSHBUTTON "Generate Fast C",IDC_IR_BUTTON_GENERATE_FASTC,271,0,32,
22,BS_ICON,0,HIDC_IR_BUTTON_GENERATE_FASTC
CONTROL "Debug Mode",IDC_IR_BUTTON_DEBUG,"Button",
BS_AUTOCHECKBOX | BS_ICON | BS_PUSHLIKE | WS_TABSTOP,306,
0,32,22,0,HIDC_IR_BUTTON_DEBUG
CONTROL "U64 Mode",IDC_IR_BUTTON_U64,"Button",BS_AUTOCHECKBOX |
BS_ICON | BS_PUSHLIKE | WS_TABSTOP,342,0,32,22,0,
HIDC_IR_BUTTON_U64
CONTROL "U64 Mode",IDC_IR_BUTTON_ONERULE,"Button",
BS_AUTOCHECKBOX | BS_ICON | BS_PUSHLIKE | WS_TABSTOP,395,
0,32,22,0,HIDC_IR_BUTTON_ONERULE
PUSHBUTTON "Macros To Subroutines",IDC_IR_BUTTON_MACROTOSUBR_ALL,
436,0,30,22,BS_ICON,0,HIDC_IR_BUTTON_MACROTOSUBR_ALL
PUSHBUTTON "Macro To Subroutine",IDC_IR_BUTTON_MACROTOSUBR_ONE,470,
0,30,22,BS_ICON,0,HIDC_IR_BUTTON_MACROTOSUBR_ONE
END
IDD_QUICKSAVE DIALOGEX 0, 0, 395, 53
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION
EXSTYLE WS_EX_TOOLWINDOW | WS_EX_CLIENTEDGE
CAPTION "IA QuickSave Loading"
FONT 8, "MS Sans Serif", 0, 0, 0x1
BEGIN
DEFPUSHBUTTON "Yes",IDYES,12,32,50,14
PUSHBUTTON "No",IDNO,64,32,50,14
PUSHBUTTON "No all",IDNOALL,116,32,50,14
PUSHBUTTON "No And Delete",IDDELETE,260,32,60,14
PUSHBUTTON "No And Delete All",IDDELETEALL,322,32,60,14
LTEXT "Static",IDC_STATIC,4,5,369,25
END
IDD_IR_DESVAR_VIEW DIALOGEX 0, 0, 136, 170
STYLE DS_MODALFRAME | WS_CHILD | WS_CAPTION
CAPTION "Dialog"
FONT 8, "MS Sans Serif", 0, 0, 0x1
BEGIN
CONTROL "Show private variables (for model)",
IDC_CHECK_SHOW_PRIVATE,"Button",BS_AUTOCHECKBOX |
WS_TABSTOP,5,6,122,11,WS_EX_STATICEDGE
CONTROL "Hide variable(for model)",IDC_CHECK_HIDE_VAR_FOR_MODEL,
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,5,19,122,11,
WS_EX_STATICEDGE
END
/////////////////////////////////////////////////////////////////////////////
//
// DESIGNINFO
//
#ifdef APSTUDIO_INVOKED
GUIDELINES DESIGNINFO DISCARDABLE
BEGIN
IDD_IR_CONSTANTS_DIALOG, DIALOG
BEGIN
LEFTMARGIN, 7
RIGHTMARGIN, 239
TOPMARGIN, 7
BOTTOMMARGIN, 152
END
IDD_IR_NEW_CONSTANT, DIALOG
BEGIN
BOTTOMMARGIN, 80
END
IDD_IR_BUTTONVIEW, DIALOG
BEGIN
RIGHTMARGIN, 837
END
IDD_QUICKSAVE, DIALOG
BEGIN
LEFTMARGIN, 7
RIGHTMARGIN, 388
TOPMARGIN, 7
BOTTOMMARGIN, 46
END
IDD_IR_DESVAR_VIEW, DIALOG
BEGIN
LEFTMARGIN, 7
RIGHTMARGIN, 128
TOPMARGIN, 26
BOTTOMMARGIN, 163
END
END
#endif // APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// Icon
//
// Icon with lowest ID value placed first to ensure application icon
// remains consistent on all systems.
IDI_ICON_IR_PROCESS ICON DISCARDABLE "..\\res\\irapply.ico"
IDI_ICON_IR_IDR_DECL ICON DISCARDABLE "..\\res\\irdecl.ico"
IDI_ICON_IR_IDR_INTEL ICON DISCARDABLE "..\\res\\irintel.ico"
IDI_ICON_IR_IDR_REFLEX ICON DISCARDABLE "..\\res\\irreflex.ico"
IDI_ICON_IR_NEW ICON DISCARDABLE "..\\res\\irnew.ico"
IDI_ICON_IR_PRINT ICON DISCARDABLE "..\\res\\irprint.ico"
IDI_ICON_IR_VIEW_MODE_DIAG ICON DISCARDABLE "..\\res\\irdiag.ico"
IDI_ICON_IR_VIEW_MODE_LIST ICON DISCARDABLE "..\\res\\irlist.ico"
IDI_ICON_IR_SAVE_ALL ICON DISCARDABLE "..\\res\\irsave.ico"
IDI_ICON_IR_CHECK ICON DISCARDABLE "..\\res\\ircheck.ico"
IDI_ICON_IR_STOP ICON DISCARDABLE "..\\res\\irstop.ico"
IDI_ICON_IR_BREAKPOINT ICON DISCARDABLE "..\\res\\irbreak.ico"
IDI_ICON_IR_PROCESS_ALL ICON DISCARDABLE "..\\res\\irappall.ico"
IDI_ICON_IR_CONSTANT ICON DISCARDABLE "..\\res\\irconst.ico"
IDI_ICON_IR_ERROR ICON DISCARDABLE "..\\res\\icon1.ico"
IDI_ICON_IR_QUICKSAVE ICON DISCARDABLE "..\\res\\irqsave.ico"
IDI_ICON_IR_GENERATE_FASTC ICON DISCARDABLE "..\\res\\irgenfc.ico"
IDI_ICON_IR_DEBUG ICON DISCARDABLE "..\\res\\irdebug.ico"
IDI_ICON_IR_U64 ICON DISCARDABLE "..\\res\\irU64.ico"
IDI_ICON_IR_ONERULE ICON DISCARDABLE "..\\res\\icoonerule.ico"
IDI_ICON_IR_MACROTOSUBR_ALL ICON DISCARDABLE "..\\res\\irMtoSA.ico"
IDI_ICON_IR_MACROTOSUBR_ONE ICON DISCARDABLE "..\\res\\irMtoS1.ico"
/////////////////////////////////////////////////////////////////////////////
//
// Menu
//
IDR_IR_MENU_POPUP_DIAGVIEW MENU DISCARDABLE
BEGIN
POPUP "DiagView"
BEGIN
MENUITEM "&Ajouter un comportement", ID_IR_DIAGVIEW_ADD_BEHAVIOUR
MENUITEM "Supprimer &tous les comportements",
ID_IR_DIAGVIEW_DEL_ALL_BEHAVIOUR
END
POPUP "Behaviour"
BEGIN
MENUITEM "&Supprimer le comportement", ID_IR_BEHAVIOUR_DELETE_BEHAVIOUR
MENUITEM "&Renommer le comportement", ID_IR_BEHAVIOUR_RENAME_BEHAVIOUR
END
POPUP "BehaviourList"
BEGIN
MENUITEM "&Renommer le comportement", ID_IR_BEHAVIOURLIST_RENAME_BEHAVIOUR
MENUITEM "&Ajouter un comportement", ID_IR_BEHAVIOURLIST_ADD_BEHAVIOUR
MENUITEM SEPARATOR
MENUITEM "&Supprimer le comportement", ID_IR_BEHAVIOURLIST_DELETE_BEHAVIOUR
MENUITEM "Supprimer &tous les comportements",
ID_IR_BEHAVIOURLIST_DEL_ALL_BEHAVIOUR
END
END
#ifdef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// TEXTINCLUDE
//
1 TEXTINCLUDE DISCARDABLE
BEGIN
"EdIRRes.h\0"
END
2 TEXTINCLUDE DISCARDABLE
BEGIN
"#include ""afxres.h""\r\n"
"\0"
END
3 TEXTINCLUDE DISCARDABLE
BEGIN
"#define _AFX_NO_SPLITTER_RESOURCES\r\n"
"#define _AFX_NO_OLE_RESOURCES\r\n"
"#define _AFX_NO_TRACKER_RESOURCES\r\n"
"#define _AFX_NO_PROPERTY_RESOURCES\r\n"
"\r\n"
"#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_FRA)\r\n"
"#ifdef _WIN32\r\n"
"LANGUAGE 12, 1\r\n"
"#pragma code_page(1252)\r\n"
"#endif\r\n"
"#include ""EdIR.rc2"" // non-Microsoft Visual C++ edited resources\r\n"
"#include ""l.fra\\afxres.rc"" // Standard components\r\n"
"#endif\0"
END
#endif // APSTUDIO_INVOKED
#ifndef _MAC
/////////////////////////////////////////////////////////////////////////////
//
// Version
//
VS_VERSION_INFO VERSIONINFO
FILEVERSION 1,0,0,1
PRODUCTVERSION 1,0,0,1
FILEFLAGSMASK 0x3fL
#ifdef _DEBUG
FILEFLAGS 0x1L
#else
FILEFLAGS 0x0L
#endif
FILEOS 0x4L
FILETYPE 0x1L
FILESUBTYPE 0x0L
BEGIN
BLOCK "StringFileInfo"
BEGIN
BLOCK "040904B0"
BEGIN
VALUE "CompanyName", "\0"
VALUE "FileDescription", "Application MFC EDCARAC\0"
VALUE "FileVersion", "1, 0, 0, 1\0"
VALUE "InternalName", "EDCARAC\0"
VALUE "LegalCopyright", "Copyright <20> 1996\0"
VALUE "LegalTrademarks", "\0"
VALUE "OriginalFilename", "EDCARAC.EXE\0"
VALUE "ProductName", "Application EDCARAC\0"
VALUE "ProductVersion", "1, 0, 0, 1\0"
END
END
BLOCK "VarFileInfo"
BEGIN
VALUE "Traduction", 0x409, 1200
END
END
#endif // !_MAC
/////////////////////////////////////////////////////////////////////////////
//
// String Table
//
STRINGTABLE DISCARDABLE
BEGIN
32785 "Displays the next Model or Instance\nNext in list"
32786 "Displays the previous Model or Instance\nPrevious in list"
32787 "Passer en niveau 1\nNiveau 1"
32788 "Passer en niveau 3\nNiveau 3"
32789 "Passer en niveau 3\nNiveau 3"
32793 "D<>finir vos pr<70>f<EFBFBD>rences\nSetup"
END
#endif // French (France) resources
/////////////////////////////////////////////////////////////////////////////
#ifndef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 3 resource.
//
#define _AFX_NO_SPLITTER_RESOURCES
#define _AFX_NO_OLE_RESOURCES
#define _AFX_NO_TRACKER_RESOURCES
#define _AFX_NO_PROPERTY_RESOURCES
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_FRA)
#ifdef _WIN32
LANGUAGE 12, 1
#pragma code_page(1252)
#endif
#include "EdIR.rc2" // non-Microsoft Visual C++ edited resources
#include "l.fra\afxres.rc" // Standard components
#endif
/////////////////////////////////////////////////////////////////////////////
#endif // not APSTUDIO_INVOKED

View File

@@ -0,0 +1,51 @@
// EdIR2Eng.hpp : header file
//
#ifndef _EDIR2ENG_HPP_
#define _EDIR2ENG_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
class CPA_SaveObject;
class CPA_EdIR_MainBehaviour;
class CPA_EdIR_DebugInfoList;
//ANNECY CB
//BEGIN ROMTEAM Cristi Petrescu 98-05-
BOOL fn_bCheckIA(CPA_EdIR_MainBehaviour *,enum tdeTypeText_,CString,long &, CString);
//END ROMTEAM Cristi Petrescu 98-05-
//BOOL fn_bCheckIA(enum tdeTypeText_,CString,long &);
//END
//BEGIN ROMTEAM Cristi Petrescu 98-05-
BOOL fn_bProcessIA(BOOL,CPA_EdIR_MainBehaviour *,BOOL,struct AI_tdstMind_ *,struct tdstComport_ *,struct tdstTreeInterpret_ *,
enum tdeTypeText_,CString,long &,CPA_EdIR_DebugInfoList *, CString);
//END ROMTEAM Cristi Petrescu 98-05-
//BEGIN ROMTEAM Cristi Petrescu 98-04-
BOOL fn_bSaveIA(struct SCR_tdst_File_Description_ *,struct AI_tdstMind_ *,enum tdeTypeText_,CString,long &, CString, CString);
//END ROMTEAM Cristi Petrescu 98-04-
void fn_vConvertIndexToPointerForModel(struct AI_tdstAIModel_ *);
void fn_vConvertPointerToIndexForModel(struct AI_tdstAIModel_ *);
void fn_vConvertIndexToPointerForInstance(struct AI_tdstMind_ *);
void fn_vConvertPointerToIndexForInstance(struct AI_tdstMind_ *);
void fn_vConvertEnginePointerIntoEditorPointer(struct AI_tdstAIModel_ *);
void fn_vConvertEditorPointerIntoEnginePointer(struct AI_tdstAIModel_ *);
//ANNECY CB
long fn_lGetNbRules(CString&);
CString fn_csGetCodeWithoutComments(CString&);
CPA_SaveObject *fn_pclGetReachableObject(long,CString csType="");
//BEGIN ROMTEAM Cristi Petrescu 98-06-
void fn_vCreateDsgVarControl(CString&,CString&,long,BOOL,BOOL bUpdate = TRUE);
//END ROMTEAM Cristi Petrescu 98-06-
//long fn_lGetNbRules(CString);
//CString fn_csGetCodeWithoutComments(CString);
//CPA_SaveObject *fn_pclGetReachableObject(long,CString csType="");
//void fn_vCreateDsgVarControl(CString,CString,long);
//END
#endif //_EDIR2ENG_HPP_

View File

@@ -0,0 +1,65 @@
// EdIRBELs.hpp : header file
//
#ifndef _EDIRBELS_HPP_
#define _EDIRBELS_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
//////////////////////////////////////////////////////////////////
// class CPA_EdIR_MainBehaviourList
//////////////////////////////////////////////////////////////////
#include <afxtempl.h>
#include "ITF\CPAMdf.hpp"
class CPA_EdIR_MainBehaviour;
class CPA_Actor;
class CPA_EdIR_DebugInfoList;
class CPA_EdIR_MainBehaviourList : public CList<CPA_EdIR_MainBehaviour *,CPA_EdIR_MainBehaviour *>
{
private:
BOOL m_bHasBeenModified;
public:
CPA_EdIR_MainBehaviour *m_pclOldActiveMainBehaviour;
CPA_EditManager m_clEditManager;
public:
CPA_EdIR_MainBehaviourList();
CPA_EdIR_MainBehaviourList(CPA_Actor *,CPA_EdIR_MainBehaviourList *);
~CPA_EdIR_MainBehaviourList();
void m_fn_vDeleteAllMainBehaviours();
//for printing
long m_fn_lGetNbPages(long,long,BOOL);
void m_fn_vPrint(long,long,BOOL,long,CDC *,CPrintInfo *);
//for saving
void m_fn_vSaveBehaviourList(struct SCR_tdst_File_Description_ *,CString,CString,CString);
BOOL m_fn_bSaveIA(struct SCR_tdst_File_Description_ *,struct AI_tdstMind_ *,enum tdeTypeText_);
//Check IA
BOOL m_fn_bCheckIA(enum tdeTypeText_, BOOL ForProcess = FALSE);
//Interprets IA
BOOL m_fn_bProcessIA(BOOL,BOOL,struct AI_tdstMind_ *,struct tdstComport_ *,enum tdeTypeText_,CPA_EdIR_DebugInfoList *);
BOOL m_fn_bHasBeenModified();
void m_fn_vSetModified(BOOL);
//
BOOL m_fn_bIsInList(CString);
long m_fn_lGetIndexOfABehaviour(CString);
CPA_EdIR_MainBehaviour *m_fn_pclGetMainBehaviour(CString);
// BEGIN CPA2 Cristi Petrescu 98-03-
CString m_fn_csGetRules (CString);
// END CPA2 Cristi Petrescu 98-03-
};
#endif //_EDIRBELS_HPP_

View File

@@ -0,0 +1,53 @@
// EdIRBLB.hpp : header file
//
#ifndef _EDIRBLB_HPP_
#define _EDIRBLB_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
/////////////////////////////////////////////////////////////////////////////
// class CPA_EdIR_BehaviourListBox
/////////////////////////////////////////////////////////////////////////////
class CPA_EdIR_BehaviourListBox : public CListBox
{
// Construction
public:
CPA_EdIR_BehaviourListBox();
// Attributes
public:
// Operations
public:
int SetCurSel(int,BOOL bDeselect=TRUE);
int GetCurSel() const;
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CPA_EdIR_BehaviourListBox)
//}}AFX_VIRTUAL
// Implementation
public:
virtual ~CPA_EdIR_BehaviourListBox();
// Generated message map functions
protected:
//{{AFX_MSG(CPA_EdIR_BehaviourListBox)
afx_msg void OnKeyUp(UINT nChar, UINT nRepCnt, UINT nFlags);
afx_msg void OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags);
afx_msg void OnRButtonUp(UINT nFlags, CPoint point);
//}}AFX_MSG
afx_msg void m_fn_vOnDeleteBehaviour();
afx_msg void m_fn_vOnRenameBehaviour();
afx_msg void m_fn_vOnAddBehaviour();
afx_msg void m_fn_vOnDeleteAllBehaviours();
DECLARE_MESSAGE_MAP()
};
#endif //_EDIRBLB_HPP_

View File

@@ -0,0 +1,54 @@
// EdIRBNam.hpp : header file
//
#ifndef _EDIRBNAM_HPP_
#define _EDIRBNAM_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
/////////////////////////////////////////////////////////////////////////////
// class CPA_EdIR_DlgNewBehaviourName
/////////////////////////////////////////////////////////////////////////////
class CPA_EdIR_DlgNewBehaviourName : public CDialog
{
//Attributes
private:
HINSTANCE m_hOldInstance;
BOOL m_fn_bCheckName(CString);
// Construction
public:
CPA_EdIR_DlgNewBehaviourName(CString,CWnd* pParent = NULL); // standard constructor
~CPA_EdIR_DlgNewBehaviourName();
// Dialog Data
//{{AFX_DATA(CPA_EdIR_DlgNewBehaviourName)
enum { IDD = IDD_IR_BEHAVIOUR_NAME };
CString m_csNewName;
//}}AFX_DATA
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CPA_EdIR_DlgNewBehaviourName)
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
virtual BOOL OnInitDialog();
//}}AFX_VIRTUAL
// Implementation
protected:
// Generated message map functions
//{{AFX_MSG(CPA_EdIR_DlgNewBehaviourName)
afx_msg void OnDestroy();
virtual void OnOK();
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
#endif //_EDIRBNAM_HPP_

View File

@@ -0,0 +1,160 @@
// EdIRBVw.hpp : header file
//
#ifndef _EDIRBVW_HPP_
#define _EDIRBVW_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
#include <afxtempl.h>
#include "EdIRRes.h"
#include "EdIRBtVw.hpp"
#include "EdIRBLB.hpp"
#include "EdIRBeEn.hpp"
#include "EdIRBELs.hpp"
class CPA_EdIR_MainBehaviour;
class CPA_EdIR_Behaviour;
class CPA_Actor;
/////////////////////////////////////////////////////////////////////////////
// class CPA_EdIR_DiagView
/////////////////////////////////////////////////////////////////////////////
class CPA_EdIR_DiagView : public CFormView
{
//Attributes
private:
CPoint m_clOldMousePos;
CPA_EdIR_MainBehaviour *m_pclOldCopiedMainBehaviour;
CPA_EdIR_MainBehaviourList m_clOldCopiedMainBehaviourList;
CPA_EdIR_Behaviour *m_pclOldActiveBehaviour;
CPA_EdIR_MainBehaviourList *m_pclListOfBehaviours;
POSITION m_posCurrent;
tdeBehaviourModeView m_tdeBehaviourModeView;
BOOL m_bCtrlKeyIsPressed;
CString m_csFontName;
long m_lFontSize;
long m_lLineHeight;
BOOL m_bPrintCurrentBehaviour;
BOOL m_bPrintAllBehaviours;
BOOL m_bPrintAllIA;
BOOL m_bOneBehaviourOnAPage;
BOOL m_bPrintIsFinished;
BOOL m_bHasBeenModified;
//Construction
protected:
CPA_EdIR_DiagView(); // protected constructor used by dynamic creation
DECLARE_DYNCREATE(CPA_EdIR_DiagView)
// Form Data
public:
//{{AFX_DATA(CPA_EdIR_DiagView)
enum { IDD = IDD_IR_DIAGRAMME_VIEW };
//}}AFX_DATA
// Attributes
public:
//ANNECY CB
BOOL m_bSpecialCB;
//END
//ROMTEAM Find & Replace Ionut Grozea 15.06
CPA_EdIR_BehaviourListBox m_clBehaviourListBox;
//ENDROMTEAM Find & Replace Ionut Grozea 15.06
// Operations
private:
CPA_EdIR_MainBehaviour *m_fn_pclGetMainBehaviour(CPA_EdIR_Behaviour *);
long m_fn_lGetIndex(CPA_EdIR_Behaviour *);
CPA_Actor *m_fn_pclGetActorModel();
void m_fn_vCopyBehaviour(CPA_EdIR_MainBehaviour *,CString csName="");
public:
//for Undo/Redo Rename a behaviour
BOOL m_fn_bRenameBehaviour(CPA_EdIR_MainBehaviour *,CString);
void m_fn_vAskForRenamingBehaviour(CPA_EdIR_Behaviour *,CString,CString);
//for Undo/Redo Create and Delete a behaviour
void m_fn_vAddOneBehaviourInList(CPA_EdIR_MainBehaviour *);
BOOL m_fn_bDeleteBehaviourFromList(CPA_EdIR_MainBehaviour *);
//for Undo/Redo Delete all behaviours
BOOL m_fn_bDeleteAllBehavioursFromList();
void m_fn_vAddAllBehavioursInList(CPA_EdIR_MainBehaviourList *);
BOOL m_fn_bHasBeenModified();
void m_fn_vSetModified(BOOL);
void m_fn_vCheckBehaviour(enum tdeTypeText_);
//for printing
void m_fn_vPrint();
void m_fn_vPrint(CDC *,CPrintInfo *);
void m_fn_vEndPrintPreview();
void m_fn_vBeginPrinting(CDC *,CPrintInfo *);
void m_fn_vAModelHasBeenRemoved();
void m_fn_vUpdateListOfBehaviour(CPA_EdIR_MainBehaviourList *, BOOL Disp = TRUE);
void m_fn_vChangeViewModeOfBehaviours(enum tdeBehaviourModeView_);
void m_fn_vCreateNewBehaviour(enum tdeBehaviourModeView_);
void m_fn_vOldActiveBehaviourHasChanged(CPA_EdIR_Behaviour *,BOOL bDeselect=TRUE);
CPA_EdIR_Behaviour *m_fn_pclGetActiveBehaviour();
void m_fn_vDeleteBehaviour(CPA_EdIR_Behaviour *);
void m_fn_vUpdateDependencies();
CPA_EdIR_Behaviour *m_fn_pclAddOneBehaviour(CString,CRect,CString,BOOL,DWORD);
void m_fn_vDeleteAllBehaviours();
BOOL m_fn_bGetFirstBehaviour(CString &,CRect &,CString &);
BOOL m_fn_bGetNextBehaviour(CString &,CRect &,CString &);
CPA_EdIR_Behaviour *m_fn_pclGetBehaviour(CString);
void m_fn_vClipControls(CClientDC *);
BOOL m_fn_bNameAlreadyExists(CString);
BOOL m_fn_bIsInCurrentList(CPA_EdIR_MainBehaviour *);
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CPA_EdIR_DiagView)
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
virtual void OnInitialUpdate();
virtual BOOL OnPreparePrinting(CPrintInfo* pInfo);
virtual void OnPrint(CDC* pDC, CPrintInfo* pInfo);
virtual void OnEndPrinting(CDC* pDC, CPrintInfo* pInfo);
virtual void OnEndPrintPreview(CDC* pDC, CPrintInfo* pInfo, POINT point, CPreviewView* pView);
virtual void OnBeginPrinting(CDC* pDC, CPrintInfo* pInfo);
//}}AFX_VIRTUAL
// Implementation
protected:
virtual ~CPA_EdIR_DiagView();
#ifdef _DEBUG
virtual void AssertValid() const;
virtual void Dump(CDumpContext& dc) const;
#endif
public:
// Generated message map functions
//{{AFX_MSG(CPA_EdIR_DiagView)
afx_msg void OnDestroy();
afx_msg void OnSize(UINT nType, int cx, int cy);
afx_msg void OnRButtonUp(UINT nFlags, CPoint point);
afx_msg void OnKeyUp(UINT nChar, UINT nRepCnt, UINT nFlags);
afx_msg void OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags);
afx_msg void OnMouseMove(UINT nFlags, CPoint point);
afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
afx_msg void OnPaint( );
afx_msg void OnSelChangeBehaviourList();
afx_msg BOOL OnHelpInfo(HELPINFO* pHelpInfo);
//}}AFX_MSG
protected:
afx_msg void m_fn_vOnAddBehaviour();
afx_msg void m_fn_vOnDeleteAllBehaviours();
DECLARE_MESSAGE_MAP()
};
#endif //_EDIRBVW_HPP_

View File

@@ -0,0 +1,40 @@
// EdIRBVwA.cpp : header file
//
#ifndef _EDIRBVWA_HPP_
#define _EDIRBVWA_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
/////////////////////////////////////////////////////////////////////////////
// class CPA_EdIR_UndoCreateBehaviour
/////////////////////////////////////////////////////////////////////////////
#include "ITF\CPAMdf.hpp"
class CPA_EdIR_DiagView;
class CPA_EdIR_MainBehaviour;
class CPA_EdIR_MainBehaviourList;
class CPA_EdIR_UndoCreateBehaviour : public CPA_Modif
{
// Construction
public:
CPA_EdIR_UndoCreateBehaviour(CPA_EdIR_DiagView *,CPA_EdIR_MainBehaviour *,CPA_EdIR_MainBehaviourList *,BOOL bBloc=FALSE);
~CPA_EdIR_UndoCreateBehaviour();
// Attributes
private:
CPA_EdIR_DiagView *m_pclDiagView;
CPA_EdIR_MainBehaviour *m_pclMainBehaviour;
CPA_EdIR_MainBehaviourList *m_pclMainBehaviourList;
// Operations
public:
BOOL Do();
BOOL Undo();
};
#endif //_EDIRBVWA_HPP_

View File

@@ -0,0 +1,40 @@
// EdIRBVwD.cpp : header file
//
#ifndef _EDIRBVWD_HPP_
#define _EDIRBVWD_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
/////////////////////////////////////////////////////////////////////////////
// class CPA_EdIR_UndoDeleteBehaviour
/////////////////////////////////////////////////////////////////////////////
#include "ITF\CPAMdf.hpp"
class CPA_EdIR_DiagView;
class CPA_EdIR_MainBehaviour;
class CPA_EdIR_MainBehaviourList;
class CPA_EdIR_UndoDeleteBehaviour : public CPA_Modif
{
// Construction
public:
CPA_EdIR_UndoDeleteBehaviour(CPA_EdIR_DiagView *,CPA_EdIR_MainBehaviour *,CPA_EdIR_MainBehaviourList *,BOOL bBloc=FALSE);
~CPA_EdIR_UndoDeleteBehaviour();
// Attributes
private:
CPA_EdIR_DiagView *m_pclDiagView;
CPA_EdIR_MainBehaviour *m_pclMainBehaviour;
CPA_EdIR_MainBehaviourList *m_pclMainBehaviourList;
// Operations
public:
BOOL Do();
BOOL Undo();
};
#endif //_EDIRBVWD_HPP_

View File

@@ -0,0 +1,42 @@
// EdIRBVwR.cpp : header file
//
#ifndef _EDIRBVWR_HPP_
#define _EDIRBVWR_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
/////////////////////////////////////////////////////////////////////////////
// class CPA_EdIR_UndoRenameBehaviour
/////////////////////////////////////////////////////////////////////////////
#include "ITF\CPAMdf.hpp"
class CPA_EdIR_DiagView;
class CPA_EdIR_MainBehaviour;
class CPA_EdIR_MainBehaviourList;
class CPA_EdIR_UndoRenameBehaviour : public CPA_Modif
{
// Construction
public:
CPA_EdIR_UndoRenameBehaviour(CPA_EdIR_DiagView *,CPA_EdIR_MainBehaviour *,CPA_EdIR_MainBehaviourList *,CString,CString,BOOL bBloc=FALSE);
~CPA_EdIR_UndoRenameBehaviour();
// Attributes
private:
CPA_EdIR_DiagView *m_pclDiagView;
CPA_EdIR_MainBehaviour *m_pclMainBehaviour;
CPA_EdIR_MainBehaviourList *m_pclMainBehaviourList;
CString m_csOldName;
CString m_csNewName;
// Operations
public:
BOOL Do();
BOOL Undo();
};
#endif //_EDIRBVWR_HPP_

View File

@@ -0,0 +1,39 @@
// EdIRBVwX.cpp : header file
//
#ifndef _EDIRBVWX_HPP_
#define _EDIRBVWX_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
/////////////////////////////////////////////////////////////////////////////
// class CPA_EdIR_UndoDeleteAllBehaviours
/////////////////////////////////////////////////////////////////////////////
#include "ITF\CPAMdf.hpp"
#include "EdIRBELs.hpp"
class CPA_EdIR_DiagView;
class CPA_EdIR_UndoDeleteAllBehaviours : public CPA_Modif
{
// Construction
public:
CPA_EdIR_UndoDeleteAllBehaviours(CPA_EdIR_DiagView *,CPA_EdIR_MainBehaviourList *,BOOL bBloc=FALSE);
~CPA_EdIR_UndoDeleteAllBehaviours();
// Attributes
private:
CPA_EdIR_DiagView *m_pclDiagView;
CPA_EdIR_MainBehaviourList *m_pclMainBehaviourList;
CPA_EdIR_MainBehaviourList m_clMainBehaviourList;
// Operations
public:
BOOL Do();
BOOL Undo();
};
#endif //_EDIRBVWX_HPP_

View File

@@ -0,0 +1,78 @@
// EdIRBeEn.hpp : header file
//
#ifndef _EDIRBEEN_HPP_
#define _EDIRBEEN_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
//////////////////////////////////////////////////////////////////
// class CPA_EdIR_MainBehaviour
//////////////////////////////////////////////////////////////////
#include "_Ainterf.hpp"
//BEGIN ROMTEAM Cristi Petrescu 98-05-
#include "edirdbls.hpp"
//END ROMTEAM Cristi Petrescu 98-05-
class CPA_EdIR_Behaviour;
class CPA_EdIR_DiagView;
class CPA_Actor;
class CPA_EdIR_MainBehaviour : public CPA_BaseObject
{
private:
BOOL m_bHasBeenModified;
public:
CPA_EdIR_Behaviour *m_pclBehaviour;
//CString m_csName;
CRect m_crPosition;
CString m_csText;
CList<CPA_BaseObject *,CPA_BaseObject *> m_clListOfDependencies;
//BEGIN ROMTEAM Cristi Petrescu 98-04-
long m_lInfo;
//END ROMTEAM Cristi Petrescu 98-04-
//BEGIN ROMTEAM Cristi Petrescu 98-05-
CPA_EdIR_DebugInfoList m_clDebugInfoList;
//END ROMTEAM Cristi Petrescu 98-05-
public:
//Empty constructor for load
CPA_EdIR_MainBehaviour(CPA_Actor *);
//Constructor
CPA_EdIR_MainBehaviour(CPA_Actor *,CString,CRect,CString,CPA_EdIR_Behaviour *pclBehaviour=NULL);
//Copy constructor
CPA_EdIR_MainBehaviour(CPA_Actor *,CPA_EdIR_MainBehaviour &);
//Destructor;
~CPA_EdIR_MainBehaviour();
//virtual from CPA_BaseObject
virtual long GetDataType(void);
virtual void *GetData(void);
virtual tdeMissingCriteria fn_eCheckUnicity(const CString);
void m_fn_vUpdateBehaviour(CPA_EdIR_DiagView *,BOOL);
BOOL m_fn_bHasBeenModified();
void m_fn_vSetModified(BOOL);
//for printing
CString m_fn_csGetBehaviourTitle();
long m_fn_lGetNbPages(long,long);
long m_fn_lGetNbLines();
CString m_fn_csGetTextToPrint(long,long,long);
CString m_fn_csGetTextBetweenLines(long,long);
//BEGIN ROMTEAM Cristi Petrescu 98-05-
// To manipulate the Debug list
void m_fn_vClearExecutedNodes (void);
//END ROMTEAM Cristi Petrescu 98-05-
};
#endif //_EDIRBEEN_HPP_

View File

@@ -0,0 +1,161 @@
// EdIRBeha.hpp : header file
//
#ifndef _EDIRBEHA_HPP_
#define _EDIRBEHA_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
#include <afxtempl.h>
#include "EdIRREd.hpp"
#include "EdIRICLs.hpp"
/////////////////////////////////////////////////////////////////////////////
// class CPA_EdIR_Behaviour
/////////////////////////////////////////////////////////////////////////////
class CPA_EdIR_View;
//class CPA_EdIR_LinkBehaviour;
class CPA_EdIR_MainBehaviour;
class CPA_BaseObject;
class CPA_EdIR_DebugInfoList;
class CPA_EdIR_Behaviour : public CButton
{
// Classes, Enums ...
private:
enum MoveSizeType
{
MOVE_SIZE_NONE,
MOVE_SIZE_LEFT,
MOVE_SIZE_TOP,
MOVE_SIZE_RIGHT,
MOVE_SIZE_BOTTOM,
MOVE_SIZE_LEFT_TOP,
MOVE_SIZE_RIGHT_TOP,
MOVE_SIZE_LEFT_BOTTOM,
MOVE_SIZE_RIGHT_BOTTOM,
MOVE_SIZE_MOVE
};
//ANNECY CB
public:
BOOL m_bFirstActivate;
long m_lErrorIndex;
//END ANNECY
// Construction
public:
CPA_EdIR_Behaviour(CPA_EdIR_View *,BOOL);
void m_fn_vSetMainBehaviour(CPA_EdIR_MainBehaviour *);
CPA_EdIR_MainBehaviour *m_fn_pclGetMainBehaviour();
// Attributes
public:
CList<CPA_EdIR_Behaviour *,CPA_EdIR_Behaviour *> m_clListOfDependentBehaviours;
BOOL m_bDeclaration;
CPA_EdIR_IntermediateCodeList m_clIntermediateCodeList;
BOOL m_bOldMacro;
private:
MoveSizeType m_eMoveSizeType;
long m_lOffsetX;
long m_lOffsetY;
CPA_EdIR_View *m_pclIAViewRules;
BOOL m_bIAmActive;
// CList<CPA_EdIR_LinkBehaviour *,CPA_EdIR_LinkBehaviour *> m_clListOfLinkBehaviours;
CFont m_clFont;
BOOL m_bHasBeenModified;
CPA_EdIR_MainBehaviour *m_pclMainBehaviour;
BOOL m_bIntermediateCodeListIsGood;
// Operations
private:
BOOL m_fn_bDependencyIsDrawable(CPA_BaseObject *);
void m_fn_vDrawDependency(CPA_EdIR_Behaviour *,CString,COLORREF);
void m_fn_vDrawDependencies(COLORREF);
void m_fn_vDisplayError(long);
public:
CPA_EdIR_EditCtrl m_clEditCtrl;
void m_fn_vDrawDependencies();
void m_fn_vRenameBehaviour();
void m_fn_vActivate(BOOL);
void m_fn_vSetRules(CString);
CString m_fn_csGetRules();
CString m_fn_csGetName();
CRect m_fn_crGetBoundingBox();
void m_fn_vUpdateButtonWidth();
void m_fn_vUpdateDependencies();
BOOL ShowWindow(int);
BOOL m_fn_bHasBeenModified();
void m_fn_vSetModified(BOOL);
BOOL m_fn_bIntermediateCodeListIsGood();
void m_fn_vSetIntermediateCodeList(BOOL);
// BEGIN ROMTEAM Cristi Petrescu 98-08-
void m_fn_vSetCursorPosByLine(long);
void m_fn_vSetCursorPosByIndex(long);
// END ROMTEAM Cristi Petrescu 98-08-
BOOL m_fn_bCheckIA(enum tdeTypeText_);
BOOL m_fn_bProcessIA(BOOL,BOOL,struct AI_tdstMind_ *,struct tdstComport_ *,struct tdstTreeInterpret_ *,enum tdeTypeText_,CPA_EdIR_DebugInfoList *);
//BEGIN ROMTEAM Cristi Petrescu 98-04-
BOOL m_fn_bSaveIA(struct SCR_tdst_File_Description_ *,struct AI_tdstMind_ *,enum tdeTypeText_, CString csInfo);
//END ROMTEAM Cristi Petrescu 98-04-
//BEGIN ROMTEAM Cristi Petrescu 98-05-
// for debugger
void m_fn_vHideNonExecutedLines (void);
//END ROMTEAM Cristi Petrescu 98-05-
long m_fn_lGetLineNumberInPixel(long);
long m_fn_lGetStartLineIndex(long);
void m_fn_vRegisterInTUT();
//Stefan Dumitrean 8-07-98 ( macro color )
BOOL m_fn_bIsActive() { return m_bIAmActive; }
//End Stefan Dumitrean 8-07-98 ( macro color )
protected:
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CPA_EdIR_Behaviour)
public:
virtual void DrawItem(LPDRAWITEMSTRUCT lpDrawItemStruct);
virtual BOOL Create(LPCTSTR lpszCaption, DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID );
protected:
virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
//}}AFX_VIRTUAL
// Implementation
public:
virtual ~CPA_EdIR_Behaviour();
// Generated message map functions
protected:
//{{AFX_MSG(CPA_EdIR_Behaviour)
afx_msg void OnDestroy( );
afx_msg void OnMouseMove(UINT nFlags, CPoint point);
afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
afx_msg void OnRButtonUp(UINT nFlags, CPoint point);
afx_msg void OnKeyUp(UINT nChar, UINT nRepCnt, UINT nFlags);
afx_msg void OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags);
//}}AFX_MSG
afx_msg void m_fn_vOnDeleteBehaviour();
afx_msg void m_fn_vOnRenameBehaviour();
DECLARE_MESSAGE_MAP()
};
#endif //_EDIRBEHA_HPP_

View File

@@ -0,0 +1,514 @@
#ifndef YY_CParse_h_included
#define YY_CParse_h_included
/* before anything */
#ifdef c_plusplus
#ifndef __cplusplus
#define __cplusplus
#endif
#endif
#ifdef __cplusplus
#ifndef YY_USE_CLASS
#define YY_USE_CLASS
#endif
#else
#endif
#include <stdio.h>
#include "stdafx.h"
#include "EdIRICLs.hpp"
struct stReturn
{
CString csInitial;
CString csType;
CString csSubType; //for array
CPA_EdIR_IntermediateCodeList clIntermediateCodeList;
};
/*********/
/* Enums */
/*********/
typedef enum tdeTypeText_
{
IntelligenceText,
ReflexText,
DsgVarText,
MacroText,
// BEGIN ROMTEAM CPA2 Cristi Petrescu 98-04-
// this is used for the new style of defining macros...
Macro_2_Text,
SubrText,
// END ROMTEAM CPA2 Cristi Petrescu 98-04-
CRRGeneration,
} tdeTypeText;
/*************/
/* Variables */
/*************/
class CParse;
class CLex;
class CPA_EdIR_DesignerVariableList;
class CPA_EdIR_MacroList;
// BEGIN CPA2 Cristi Petrescu 98-03-
class CPA_EdIR_MainBehaviourList;
// END CPA2 Cristi Petrescu 98-03-
class CPA_Actor;
extern CParse g_clParse;
extern CLex g_clLex;
extern CPA_EdIR_DesignerVariableList g_clDsgVarList;
extern CPA_EdIR_MacroList g_clMacroList;
// BEGIN CPA2 Cristi Petrescu 98-03-
extern CPA_EdIR_MainBehaviourList *g_pclListOfSubrs;
// END CPA2 Cristi Petrescu 98-03-
extern CPA_Actor *g_pclCurrentModel;
extern char gcGenerateOneRule ;
/*************/
/* Functions */
/*************/
//exports fn_bAnalysesText()
//BEGIN ROMTEAM Cristi Petrescu 98-05-
BOOL fn_bAnalysesText(CString,tdeTypeText,long &,CPA_EdIR_IntermediateCodeList *, CString csBehaviourName);
//END ROMTEAM Cristi Petrescu 98-05-
//KeyWord
CString fn_csGetKeyWordParams(long);
CString fn_csGetKeyWordType(long);
//MetaAction
CString fn_csGetMetaActionParams(long);
//Condition
CString fn_csGetConditionParams(long);
BOOL fn_bIsConditionUsableWithUltraOperator(long);
//Designer Variable
#define C_NOT_A_DSG_VAR -1
void fn_vGetDesignerVariableType(stReturn *,long);
void fn_vGetDesignerVariableTypeFromEngineType(stReturn *,long);
void fn_vGetDesignerVariableTypeForThisModel(stReturn *,CPA_Actor *,long);
long fn_lIsADsgVarForThisModel(CPA_Actor *,CString);
void fn_vGetDesignerVariableTypeForThisPerso(stReturn *,long,long);
long fn_lIsADsgVarForThisPerso(long,CString);
//Field
CString fn_csGetFieldType(long);
//Type
BOOL fn_bIsTypeCompatible(CString,stReturn *,long,BOOL bIsOperator=FALSE);
#define C_NOT_COMPATIBLE -1
long fn_lIsTypeCompatibleForArithmOp(long lIndex,stReturn *st1,stReturn *st2=NULL);
BOOL fn_bIsTypeCompatibleForBinaryOp(long lIndex,stReturn *st1,stReturn *st2);
BOOL fn_bIsTypeCompatibleForInitialization(CString,stReturn *);
//Stefan Dumitrean 21-05-98
BOOL fn_bIsParmsCompatible(CString,stReturn *,CString,CString &);
//End Stefan Dumitrean 21-05-98
BOOL fn_bIsStringCompatible(CString,CString);
BOOL fn_bIsStringCompatibleForAffect(CString,CString);
//Function
CString fn_csGetFunctionParams(long);
CString fn_csGetFunctionType(long);
BOOL fn_bIsFunctionUsableWithUltraOperator(long);
//Procedure
CString fn_csGetProcedureParams(long);
BOOL fn_bIsProcedureUsableWithUltraOperator(long);
//Operator
CString fn_csGetOperatorParams(long);
CString fn_csGetOperatorType(long,CString csParm1="",CString csParm2="");
//Perso
long fn_lGetHandleOfPerso(stReturn *);
//BEGIN ROMTEAM Cristi Petrescu 98-06-
BOOL fn_bIsDsgVarQualifier(CString csQualifier);
//END ROMTEAM Cristi Petrescu 98-06-
#define YY_CParse_STYPE stReturn
#define YY_CParse_MEMBERS CString m_csMsgError; \
BOOL m_bNoError; \
long m_lIndexError; \
BOOL m_bIsInITRules; \
stReturn * m_pstMyStack; \
CPA_EdIR_IntermediateCodeList m_clIntermediateCodeList;
/* %{ and %header{ and %union, during decl */
#ifndef YY_CParse_COMPATIBILITY
#ifndef YY_USE_CLASS
#define YY_CParse_COMPATIBILITY 1
#else
#define YY_CParse_COMPATIBILITY 0
#endif
#endif
#if YY_CParse_COMPATIBILITY != 0
/* backward compatibility */
#ifdef YYLTYPE
#ifndef YY_CParse_LTYPE
#define YY_CParse_LTYPE YYLTYPE
/* WARNING obsolete !!! user defined YYLTYPE not reported into generated header */
/* use %define LTYPE */
#endif
#endif
#ifdef YYSTYPE
#ifndef YY_CParse_STYPE
#define YY_CParse_STYPE YYSTYPE
/* WARNING obsolete !!! user defined YYSTYPE not reported into generated header */
/* use %define STYPE */
#endif
#endif
#ifdef YYDEBUG
#ifndef YY_CParse_DEBUG
#define YY_CParse_DEBUG YYDEBUG
/* WARNING obsolete !!! user defined YYDEBUG not reported into generated header */
/* use %define DEBUG */
#endif
#endif
#ifdef YY_CParse_STYPE
#ifndef yystype
#define yystype YY_CParse_STYPE
#endif
#endif
#endif
#ifndef YY_CParse_PURE
/* YY_CParse_PURE */
#endif
/* prefix */
#ifndef YY_CParse_DEBUG
#define YY_CParse_DEBUG 1
/* YY_CParse_DEBUG */
#endif
#ifndef YY_CParse_LSP_NEEDED
/* YY_CParse_LSP_NEEDED*/
#endif
/* DEFAULT LTYPE*/
#ifdef YY_CParse_LSP_NEEDED
#ifndef YY_CParse_LTYPE
typedef
struct yyltype
{
int timestamp;
int first_line;
int first_column;
int last_line;
int last_column;
char *text;
}
yyltype;
#define YY_CParse_LTYPE yyltype
#endif
#endif
/* DEFAULT STYPE*/
#ifndef YY_CParse_STYPE
#define YY_CParse_STYPE int
#endif
/* DEFAULT MISCELANEOUS */
#ifndef YY_CParse_PARSE
#define YY_CParse_PARSE yyparse
#endif
#ifndef YY_CParse_LEX
#define YY_CParse_LEX yylex
#endif
#ifndef YY_CParse_LVAL
#define YY_CParse_LVAL yylval
#endif
#ifndef YY_CParse_LLOC
#define YY_CParse_LLOC yylloc
#endif
#ifndef YY_CParse_CHAR
#define YY_CParse_CHAR yychar
#endif
#ifndef YY_CParse_NERRS
#define YY_CParse_NERRS yynerrs
#endif
#ifndef YY_CParse_DEBUG_FLAG
#define YY_CParse_DEBUG_FLAG yydebug
#endif
#ifndef YY_CParse_ERROR
#define YY_CParse_ERROR yyerror
#endif
#ifndef YY_CParse_PARSE_PARAM
#ifndef __STDC__
#ifndef __cplusplus
#ifndef YY_USE_CLASS
#define YY_CParse_PARSE_PARAM
#ifndef YY_CParse_PARSE_PARAM_DEF
#define YY_CParse_PARSE_PARAM_DEF
#endif
#endif
#endif
#endif
#ifndef YY_CParse_PARSE_PARAM
#define YY_CParse_PARSE_PARAM void
#endif
#endif
/* TOKEN C */
#ifndef YY_USE_CLASS
#ifndef YY_CParse_PURE
extern YY_CParse_STYPE YY_CParse_LVAL;
#endif
#define STRING 258
#define TEXT 259
#define BOOLEAN 260
#define INT 261
#define REAL 262
#define PERSO 263
#define ZDD 264
#define ZDE 265
#define ZDM 266
#define ZDR 267
#define ACTION 268
#define WAYPOINT 269
#define CHANNEL 270
#define SURFACE 271
#define ENVIRONMENT 272
#define SECTOR 273
#define SUPEROBJECT 274
#define LIPSYNCHRO 275
#define OBJECTTABLE 276
#define FAMILY 277
#define MODEL 278
#define SOUNDEVENT 279
#define GAMEMATERIAL 280
#define LIGHT 281
#define CAPS 282
#define GRAPH 283
#define MYREFLEX 284
#define MYBEHAV 285
#define REFLEX 286
#define BEHAV 287
#define KEYBUTTON 288
#define PARTGEN 289
#define STATE 290
#define METAACTION 291
#define CONDITION 292
#define DESVAR 293
#define CONSTANTINT 294
#define CONSTANTREAL 295
#define DVTYPE 296
#define FUNCTION 297
#define PROCEDURE 298
#define FIELD 299
#define DVQUALIFIER 300
#define SUBRREF 301
#define OPWITH1PARM 302
#define OPWITH2PARMS 303
#define OPCOND 304
#define OPGETCOMPO 305
#define VECTOR 306
#define MASKTYPE 307
#define CONSTVECTOR 308
#define POWER 309
#define MACRO 310
#define BEGINMACRO 311
#define ENDMACRO 312
#define SCHEDULE 313
#define ITRULES 314
#define SUBROUTINE 315
#define IF 316
#define IF2 317
#define IF4 318
#define IF8 319
#define IF16 320
#define IFDEBUG 321
#define IFNOTU64 322
#define IFNOT 323
#define THEN 324
#define ELSE 325
#define ENDIF 326
#define ME 327
#define MAINACTOR 328
#define NOBODY 329
#define NOWHERE 330
#define NOCOMPORT 331
#define NOACTION 332
#define EMPTYTEXT 333
#define NOSUPEROBJECT 334
#define CAPSNULL 335
#define NOGRAPH 336
#define STOPENGINE 337
#define STOPRULE 338
#define NONSTOP 339
#define NOT 340
#define AND 341
#define OR 342
#define XOR 343
#define SYNTAXERROR 344
#define NEG 345
/* #defines token */
/* after #define tokens, before const tokens S5*/
#else
#ifndef YY_CParse_CLASS
#define YY_CParse_CLASS CParse
#endif
#ifndef YY_CParse_INHERIT
#define YY_CParse_INHERIT
#endif
#ifndef YY_CParse_MEMBERS
#define YY_CParse_MEMBERS
#endif
#ifndef YY_CParse_LEX_BODY
#define YY_CParse_LEX_BODY
#endif
#ifndef YY_CParse_ERROR_BODY
#define YY_CParse_ERROR_BODY
#endif
#ifndef YY_CParse_CONSTRUCTOR_PARAM
#define YY_CParse_CONSTRUCTOR_PARAM
#endif
class YY_CParse_CLASS YY_CParse_INHERIT
{
public: /* static const int token ... */
static const int STRING;
static const int TEXT;
static const int BOOLEAN;
static const int INT;
static const int REAL;
static const int PERSO;
static const int ZDD;
static const int ZDE;
static const int ZDM;
static const int ZDR;
static const int ACTION;
static const int WAYPOINT;
static const int CHANNEL;
static const int SURFACE;
static const int ENVIRONMENT;
static const int SECTOR;
static const int SUPEROBJECT;
static const int LIPSYNCHRO;
static const int OBJECTTABLE;
static const int FAMILY;
static const int MODEL;
static const int SOUNDEVENT;
static const int GAMEMATERIAL;
static const int LIGHT;
static const int CAPS;
static const int GRAPH;
static const int MYREFLEX;
static const int MYBEHAV;
static const int REFLEX;
static const int BEHAV;
static const int KEYBUTTON;
static const int PARTGEN;
static const int STATE;
static const int METAACTION;
static const int CONDITION;
static const int DESVAR;
static const int CONSTANTINT;
static const int CONSTANTREAL;
static const int DVTYPE;
static const int FUNCTION;
static const int PROCEDURE;
static const int FIELD;
static const int DVQUALIFIER;
static const int SUBRREF;
static const int OPWITH1PARM;
static const int OPWITH2PARMS;
static const int OPCOND;
static const int OPGETCOMPO;
static const int VECTOR;
static const int MASKTYPE;
static const int CONSTVECTOR;
static const int POWER;
static const int MACRO;
static const int BEGINMACRO;
static const int ENDMACRO;
static const int SCHEDULE;
static const int ITRULES;
static const int SUBROUTINE;
static const int IF;
static const int IF2;
static const int IF4;
static const int IF8;
static const int IF16;
static const int IFDEBUG;
static const int IFNOTU64;
static const int IFNOT;
static const int THEN;
static const int ELSE;
static const int ENDIF;
static const int ME;
static const int MAINACTOR;
static const int NOBODY;
static const int NOWHERE;
static const int NOCOMPORT;
static const int NOACTION;
static const int EMPTYTEXT;
static const int NOSUPEROBJECT;
static const int CAPSNULL;
static const int NOGRAPH;
static const int STOPENGINE;
static const int STOPRULE;
static const int NONSTOP;
static const int NOT;
static const int AND;
static const int OR;
static const int XOR;
static const int SYNTAXERROR;
static const int NEG;
/* decl const */
public:
int YY_CParse_PARSE(YY_CParse_PARSE_PARAM);
virtual void YY_CParse_ERROR(char *) YY_CParse_ERROR_BODY;
#ifdef YY_CParse_PURE
#ifdef YY_CParse_LSP_NEEDED
virtual int YY_CParse_LEX(YY_CParse_STYPE *YY_CParse_LVAL,YY_CParse_LTYPE *YY_CParse_LLOC) YY_CParse_LEX_BODY;
#else
virtual int YY_CParse_LEX(YY_CParse_STYPE *YY_CParse_LVAL) YY_CParse_LEX_BODY;
#endif
#else
virtual int YY_CParse_LEX() YY_CParse_LEX_BODY;
YY_CParse_STYPE YY_CParse_LVAL;
#ifdef YY_CParse_LSP_NEEDED
YY_CParse_LTYPE YY_CParse_LLOC;
#endif
int YY_CParse_NERRS;
int YY_CParse_CHAR;
#endif
#if YY_CParse_DEBUG != 0
public:
int YY_CParse_DEBUG_FLAG; /* nonzero means print parse trace */
#endif
public:
YY_CParse_CLASS(YY_CParse_CONSTRUCTOR_PARAM);
public:
YY_CParse_MEMBERS
};
/* other declare folow */
#endif
#if YY_CParse_COMPATIBILITY != 0
/* backward compatibility */
#ifndef YYSTYPE
#define YYSTYPE YY_CParse_STYPE
#endif
#ifndef YYLTYPE
#define YYLTYPE YY_CParse_LTYPE
#endif
#ifndef YYDEBUG
#ifdef YY_CParse_DEBUG
#define YYDEBUG YY_CParse_DEBUG
#endif
#endif
#endif
/* END */
#endif

View File

@@ -0,0 +1,33 @@
// EdIRBk.hpp : header file
//
#ifndef _EDIRBK_HPP_
#define _EDIRBK_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
/////////////////////////////////////////////////////////////////////////////
// class CPA_EdIR_BreakPoint
/////////////////////////////////////////////////////////////////////////////
class CPA_EdIR_BreakPoint
{
private:
long m_lIndex;
CString m_csBehaviourName;
struct tdstNodeInterpret_ *m_pstNode;
public:
CPA_EdIR_BreakPoint(long,CString);
struct tdstNodeInterpret_ *m_fn_pstGetNode();
long m_fn_lGetIndex();
CString m_fn_csGetBehaviourName();
void m_fn_vSetNode(struct tdstNodeInterpret_ *);
void m_fn_vSetIndex(long);
};
#endif //_EDIRBK_HPP_

View File

@@ -0,0 +1,37 @@
// EdIRBkLs.hpp : header file
//
#ifndef _EDIRBKLS_HPP_
#define _EDIRBKLS_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
#include <afxtempl.h>
#include "EdIRBk.hpp"
/////////////////////////////////////////////////////////////////////////////
// class CPA_EdIR_BreakPointList
/////////////////////////////////////////////////////////////////////////////
class CPA_EdIR_BreakPointList : public CList<CPA_EdIR_BreakPoint *,CPA_EdIR_BreakPoint *>
{
private:
POSITION m_fn_posGetPositionBreakPoint(long,CString);
public:
CPA_EdIR_BreakPointList();
~CPA_EdIR_BreakPointList();
void m_fn_vDestroyAndRemoveAllEntries();
BOOL m_fn_bIsInList(long,CString);
void m_fn_vSetOneBreakPoint(long,CString);
void m_fn_vRemoveOneBreakPoint(long,CString);
BOOL m_fn_bExistMoreThanOnce(CPA_EdIR_BreakPoint *);
};
#endif //_EDIRBKLS_HPP_

View File

@@ -0,0 +1,154 @@
// EdIRBtVw.hpp : header file
//
#ifndef _EDIRBTVW_HPP_
#define _EDIRBTVW_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
#include "EdIRRes.h"
typedef enum tdeBehaviourModeView_
{
ListView,
DiagView
} tdeBehaviourModeView;
typedef enum tdeEditState_
{
EditIntell,
EditReflex,
EditDecl,
// BEGIN CPA2 Cristi Petrescu 98-03-
EditMacro,
// END CPA2 Cristi Petrescu 98-03-
// BEGIN ROMTEAM CPA2 Cristi Petrescu 98-04-
EditSubr
// END ROMTEAM CPA2 Cristi Petrescu 98-04-
} tdeEditState;
//Stefan Dumitrean 8-07-98 ( macro color )
class CPA_EdIR_MainBehaviourList;
//End Stefan Dumitrean 8-07-98 ( macro color )
/////////////////////////////////////////////////////////////////////////////
// class CPA_EdIR_ButtonView
/////////////////////////////////////////////////////////////////////////////
class CPA_EdIR_ButtonView : public CFormView
{
protected:
CPA_EdIR_ButtonView(); // protected constructor used by dynamic creation
DECLARE_DYNCREATE(CPA_EdIR_ButtonView)
// Form Data
public:
//{{AFX_DATA(CPA_EdIR_ButtonView)
enum { IDD = IDD_IR_BUTTONVIEW };
// NOTE: the ClassWizard will add data members here
//}}AFX_DATA
// Attributes
private:
BOOL m_bAreEnable;
tdeEditState m_tdeEditState;
tdeBehaviourModeView m_tdeBehaviourModeView;
BOOL m_bMustStopProcess;
BOOL m_bProcessInProgress;
CToolTipCtrl *m_pclToolTip;
public:
// Operations
public:
tdeEditState m_fn_tdeGetEditState();
//ANNECY CB
// void m_fn_vSetEditState(tdeEditState);
void m_fn_vSetEditState(tdeEditState, BOOL State = TRUE);
//END
tdeBehaviourModeView m_fn_tdeGetViewMode();
void m_fn_vSetViewMode(tdeBehaviourModeView);
void m_fn_vEnableButtons(BOOL);
BOOL m_fn_bGetButtonsSate();
BOOL m_fn_bMustStopProcess();
//Stefan Dumitrean 30-06-98
//need to call this from CPA_EdIR_EditCtrl
void m_fn_vProcessIA();
//End Stefan Dumitrean 30-06-98
private:
void m_fn_vUpdateDisplay();
//Stefan Dumitrean 8-07-98 ( macro color )
void m_fn_vRefreshColorInAllBehaviours();
void m_fn_vRefreshColorInListBehaviour( CPA_EdIR_MainBehaviourList * p_clMBList);
//End Stefan Dumitrean 8-07-98 ( macro color )
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CPA_EdIR_ButtonView)
public:
virtual void OnInitialUpdate();
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
// BEGIN ROMTEAM Cristi Petrescu 99-01- debug
virtual void OnActivateView(BOOL bActivate, CView* pActivateView, CView* pDeactiveView);
// END ROMTEAM Cristi Petrescu 99-01- debug
//}}AFX_VIRTUAL
// Implementation
protected:
virtual ~CPA_EdIR_ButtonView();
#ifdef _DEBUG
virtual void AssertValid() const;
virtual void Dump(CDumpContext& dc) const;
#endif
// Generated message map functions
//{{AFX_MSG(CPA_EdIR_ButtonView)
afx_msg void OnDestroy();
afx_msg void OnSize(UINT nType, int cx, int cy);
afx_msg void OnButtonProcess();
afx_msg void OnButtonProcessAll();
// Shaitan FastC (16/06/98) {
afx_msg void OnButtonGenerateFastC();
//End Shaitan FastC }
// Shaitan Debug (04/08/98) {
afx_msg void OnButtonDebug();
//End Shaitan Debug }
// Shaitan U64 (30/09/98) {
afx_msg void OnButtonU64();
//End Shaitan U64 }
afx_msg void OnButtonOneRule();
// Shaitan => Macros to subroutines
afx_msg void OnButtonMacroToSubrAll();
afx_msg void OnButtonMacroToSubrOne();
// End Shaitan => Macros to subroutines
afx_msg void OnButtonStop();
afx_msg void OnButtonCheck();
/* CHRISTOPHE QUICK SAVE MODIFICATIONS */
afx_msg void OnButtonQuickSave();
/* END CHRISTOPHE QUICK SAVE MODIFICATIONS */
afx_msg void OnButtonSaveAll();
afx_msg void OnButtonChangeViewMode();
afx_msg void OnButtonNewBehaviour();
afx_msg void OnButtonPrint();
afx_msg void OnRadioDecl();
// BEGIN CPA2 Cristi Petrescu 98-03-
afx_msg void OnRadioMacro();
// END CPA2 Cristi Petrescu 98-03-
// BEGIN ROMTEAM CPA2 Cristi Petrescu 98-04-
afx_msg void OnRadioSubr();
// END ROMTEAM CPA2 Cristi Petrescu 98-04-
afx_msg void OnRadioIntel();
afx_msg void OnRadioReflex();
afx_msg void OnButtonConstant();
afx_msg BOOL OnHelpInfo(HELPINFO* pHelpInfo);
afx_msg BOOL OnToolTipNotify(UINT id, NMHDR * pTTTStruct, LRESULT * pResult);
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
#endif //_EDIRBTVW_HPP_

View File

@@ -0,0 +1,42 @@
// EdIRMacL.hpp : header file
//
#ifndef _EDIRCSLS_HPP_
#define _EDIRCSLS_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
//////////////////////////////////////////////////////////////////
// class CPA_EdIR_ConstantList
//////////////////////////////////////////////////////////////////
#include <afxtempl.h>
#include "EdIRCst.hpp"
class CPA_EdIR_ConstantList : public CList<CPA_EdIR_Constant *,CPA_EdIR_Constant *>
{
public:
CMapStringToPtr *map;
//Empty constructor
CPA_EdIR_ConstantList();
//Destructor;
~CPA_EdIR_ConstantList();
void m_fn_vDestroyAndRemoveAllEntries();
void m_fn_vAdd(CString,CString,CString);
void m_fn_vRemove(CString);
CPA_EdIR_Constant *m_fn_pAdd(CString,CString,CString);
BOOL m_fn_bIsAConstant(CString&);
CString m_fn_csGetValueOfAConstant(CString&);
CString m_fn_csGetTypeOfAConstant(CString&);
};
#endif //_EDIRCSLS_HPP_

View File

@@ -0,0 +1,54 @@
// EdIRCsNB.hpp : implementation file
//
#ifndef _EDIRCSNB_HPP_
#define _EDIRCSNB_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
#include "EdIRRes.h"
/////////////////////////////////////////////////////////////////////////////
// class CPA_EdIR_NewConstantDialog dialog
/////////////////////////////////////////////////////////////////////////////
class CPA_EdIR_NewConstantDialog : public CDialog
{
//Attributes
public:
CString m_csType;
CString m_csName;
CString m_csValue;
// Construction
public:
CPA_EdIR_NewConstantDialog(CString csType="",CString csName="",CString csValue="",CWnd* pParent = NULL); // standard constructor
// Dialog Data
//{{AFX_DATA(CPA_EdIR_NewConstantDialog)
enum { IDD = IDD_IR_NEW_CONSTANT };
// NOTE: the ClassWizard will add data members here
//}}AFX_DATA
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CPA_EdIR_NewConstantDialog)
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
//}}AFX_VIRTUAL
// Implementation
protected:
// Generated message map functions
//{{AFX_MSG(CPA_EdIR_NewConstantDialog)
virtual void OnOK();
virtual BOOL OnInitDialog();
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
#endif // _EDIRCSNB_HPP_

View File

@@ -0,0 +1,41 @@
// EdIRMac.hpp : header file
//
#ifndef _EDIRCST_HPP_
#define _EDIRCST_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
//////////////////////////////////////////////////////////////////
// class CPA_EdIR_Constant
//////////////////////////////////////////////////////////////////
class CPA_EdIR_Constant
{
//ANNECY CB
public:
// private:
//END
CString m_csType;
CString m_csName;
CString m_csValue;
public:
//Empty constructor
CPA_EdIR_Constant();
//Constructor
CPA_EdIR_Constant(CString,CString,CString);
//Destructor;
~CPA_EdIR_Constant();
//Gets attributes
CString m_fn_csGetConstantName();
CString m_fn_csGetConstantValue();
CString m_fn_csGetConstantType();
};
#endif //_EDIRCST_HPP_

View File

@@ -0,0 +1,69 @@
// EdIRCstB.hpp : implementation file
//
#ifndef _EDIRCSTB_HPP_
#define _EDIRCSTB_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
#include "EdIRRes.h"
class CPA_EdIR_ConstantList;
/////////////////////////////////////////////////////////////////////////////
// class CPA_EdIR_ConstantDialog dialog
/////////////////////////////////////////////////////////////////////////////
class CPA_EdIR_ConstantDialog : public CDialog
{
//Attributes
private:
CPA_EdIR_ConstantList *m_pclConstantList;
//Operations
private:
//Stefan Dumitrean 17-06-98
void m_fn_vSaveSettings();
//End Stefan Dumitrean 17-06-98
void m_fn_vNotifySave();
int m_fn_iGetCurSel();
void m_fn_vAddItem(CString,CString,CString,LPARAM);
void m_fn_vSetItem(int,CString,CString,CString,LPARAM);
// Construction
public:
CPA_EdIR_ConstantDialog(CPA_EdIR_ConstantList *,CWnd* pParent = NULL); // standard constructor
// Dialog Data
//{{AFX_DATA(CPA_EdIR_ConstantDialog)
enum { IDD = IDD_IR_CONSTANTS_DIALOG };
// NOTE: the ClassWizard will add data members here
//}}AFX_DATA
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CPA_EdIR_ConstantDialog)
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
//}}AFX_VIRTUAL
// Implementation
protected:
// Generated message map functions
//{{AFX_MSG(CPA_EdIR_ConstantDialog)
afx_msg void OnButtonNewConstant();
afx_msg void OnButtonChangeConstant();
afx_msg void OnButtonDeleteConstant();
afx_msg void OnColumnClicked(NMHDR* pNMHDR, LRESULT* pResult);
virtual BOOL OnInitDialog();
virtual void OnOK();
afx_msg void OnClose();
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
#endif // _EDIRCSTB_HPP_

View File

@@ -0,0 +1,28 @@
// EdIRCtl.hpp : header file
//
#ifndef _EDIRCTL_HPP_
#define _EDIRCTL_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
class CTL_Editor_Control;
class CTL_Editor_Static;
void fn_vDeleteControl(CTL_Editor_Control *);
//BEGIN ROMTEAM Cristi Petrescu 98-06-
void fn_vAddOwnerData(CTL_Editor_Control *,enum OAC_eDataLevel,enum OAC_eControlVisibility, enum OAC_eDataQualifier = OAC_DATA_PUBLIC);
enum OAC_eDataQualifier fn_eGetDataQualifier(CTL_Editor_Control *);
//END ROMTEAM Cristi Petrescu 98-06-
enum OAC_eDataLevel fn_eGetDataLevel(CTL_Editor_Control *);
enum OAC_eControlVisibility fn_eGetVisibility(CTL_Editor_Control *);
BOOL fn_bMustDisplay(CTL_Editor_Control *);
void fn_vOnButtonClick(CTL_Editor_Static *,enum CTL_eClickType);
void fn_vGetStaticColor(CTL_Editor_Static *,COLORREF &,COLORREF &);
#endif //_EDIRCTL_HPP_

View File

@@ -0,0 +1,53 @@
// EdIRDV.hpp : header file
//
#ifndef _EDIRDV_HPP_
#define _EDIRDV_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
//////////////////////////////////////////////////////////////////
// class CPA_EdIR_DesignerVariable
//////////////////////////////////////////////////////////////////
class CPA_EdIR_DesignerVariable
{
//ANNECY CB
public:
// private:
//END
CString m_csName;
CString m_csType;
CStringList m_cslListOfValues;
BOOL m_bIsInWatchWindow;
//BEGIN ROMTEAM Cristi Petrescu 98-05-
BOOL m_bIsPrivate;
//END ROMTEAM Cristi Petrescu 98-05-
public:
//Constructor
//BEGIN ROMTEAM Cristi Petrescu 98-06-
CPA_EdIR_DesignerVariable(CString,CString,CStringList *,BOOL = FALSE);
//END ROMTEAM Cristi Petrescu 98-06-
//Destructor;
~CPA_EdIR_DesignerVariable();
//Gets attributes
CString m_fn_csGetDesignerVariableName();
CString m_fn_csGetDesignerVariableType();
CString m_fn_csGetFirstDesignerVariableValue();
CStringList *m_fn_pcslGetDesignerVariableValues();
BOOL m_fn_bIsInWatchWindow();
void m_fn_vSetInWatchWindow(BOOL bIsInWatchWindow);
//BEGIN ROMTEAM Cristi Petrescu 98-05-
BOOL m_fn_bIsPrivate () {return m_bIsPrivate;};
void m_fn_bSetPrivate (BOOL bIsPrivate) {m_bIsPrivate = bIsPrivate;};
//END ROMTEAM Cristi Petrescu 98-05-
};
#endif //_EDIRDV_HPP_

View File

@@ -0,0 +1,67 @@
// EdIRDVLs.hpp : header file
//
#ifndef _EDIRDVLS_HPP_
#define _EDIRDVLS_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
//////////////////////////////////////////////////////////////////
// class CPA_EdIR_DesignerVariableList
//////////////////////////////////////////////////////////////////
#include <afxtempl.h>
#include "EdIRDV.hpp"
class CPA_EdIR_DesignerVariableList : public CList<CPA_EdIR_DesignerVariable *,CPA_EdIR_DesignerVariable *>
{
private:
POSITION m_fn_posGetPosition(long);
//ANNECY CB
POSITION m_fn_posGetPosition(CString&);
// POSITION m_fn_posGetPosition(CString);
//END
public:
CMapStringToPtr *map;
CMapPtrToPtr *map1;
//Empty constructor
CPA_EdIR_DesignerVariableList();
//Copy constructor
CPA_EdIR_DesignerVariableList(CPA_EdIR_DesignerVariableList &);
CPA_EdIR_DesignerVariableList operator =(CPA_EdIR_DesignerVariableList &);
//Destructor;
~CPA_EdIR_DesignerVariableList();
void m_fn_vDestroyAndRemoveAllEntries();
void AddTail(CPA_EdIR_DesignerVariable *);
//ANNECY CB
long m_fn_bIsADesignerVariable(CString&);
// BOOL m_fn_bIsADesignerVariable(CString);
long m_fn_lGetIndexOfADesignerVariable(CString&);
// long m_fn_lGetIndexOfADesignerVariable(CString);
//END
CString m_fn_csGetTypeOfADesignerVariable(CString);
CString m_fn_csGetTypeOfADesignerVariable(long);
CString m_fn_csGetFirstValueOfADesignerVariable(CString);
// BEGIN ROMTEAM Cristi Petrescu 99-01- debug
CString m_fn_csGetFirstValueOfADesignerVariable(long);
// END ROMTEAM Cristi Petrescu 99-01- debug
CStringList *m_fn_pcslGetValuesOfADesignerVariable(CString);
BOOL m_fn_bDesignerVariableIsInWatchWindow(CString);
void m_fn_vDesignerVariableSetInWatchWindow(CString,BOOL);
long m_fn_lGetSizeOfAllDesignerVariables();
//BEGIN ROMTEAM Cristi Petrescu 98-06-
BOOL m_fn_bIsPrivateDesignerVariable (CString);
//END ROMTEAM Cristi Petrescu 98-06-
};
#endif //_EDIRDVLS_HPP_

View File

@@ -0,0 +1,107 @@
// EdIRDVVw.hpp : header file
//
#ifndef _EDIRDVVW_HPP_
#define _EDIRDVVW_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
#include "EdIRRes.h"
#include "CTL.h"
class CPA_Editor_ControlList;
class CPA_Editor_BaseDataList;
class EdActors_MyDocument;
//BEGIN ROMTEAM Cristi Petrescu 98-06-
class CPA_EdIR_Brain;
//END ROMTEAM Cristi Petrescu 98-06-
/////////////////////////////////////////////////////////////////////////////
// class CPA_EdIR_DesignerVariablesView
/////////////////////////////////////////////////////////////////////////////
class CPA_EdIR_DesignerVariablesView : public CTL_Editor_BaseFormView
{
protected:
CPA_EdIR_DesignerVariablesView(); // protected constructor used by dynamic creation
DECLARE_DYNCREATE(CPA_EdIR_DesignerVariablesView)
// Form Data
public:
//{{AFX_DATA(CPA_EdIR_DesignerVariablesView)
enum { IDD = IDD_IR_DESVAR_VIEW };
// NOTE: the ClassWizard will add data members here
//}}AFX_DATA
// Attributes
private:
CTL_Editor_ControlList *m_pclListOfDesignerVariableControl;
unsigned long m_ulOldHeight;
public:
// Operations
private:
EdActors_MyDocument *m_fn_pclGetDocument();
BOOL m_fn_bMustDisplay(CTL_Editor_Control *);
//ANNECY CB
public:
BOOL m_bCanUpdateControls;
BOOL m_bHideVars;
//END
public:
void m_fn_vUpdateControls(CTL_Editor_ControlList *);
void m_fn_vUpdateValues(CTL_Editor_DataList *);
void m_fn_vUpdateDisplayWithValues(CTL_Editor_DataList *);
void m_fn_vUpdateDisplay();
void m_fn_vAModelHasBeenRemoved(CTL_Editor_ControlList *);
void m_fn_vSetOldHeight(unsigned long);
unsigned long m_fn_ulGetOldHeight();
//BEGIN ROMTEAM Cristi Petrescu 98-05-
CTL_Editor_Data *m_fn_pclGetVariable (CString);
//END ROMTEAM Cristi Petrescu 98-05-
//BEGIN ROMTEAM Cristi Petrescu 98-06-
void m_fn_vSynchronizeWithBrain (CPA_EdIR_Brain *);
//END ROMTEAM Cristi Petrescu 98-06-
//CPA2 Stegaru Cristian 98-06
BOOL mfn_bHideVariables ();
void mfn_vHideVariables (BOOL bHide);
//End CPA2 Stegaru Cristian 98-06
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CPA_EdIR_DesignerVariablesView)
public:
virtual void OnInitialUpdate();
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
//}}AFX_VIRTUAL
// Implementation
protected:
virtual ~CPA_EdIR_DesignerVariablesView();
#ifdef _DEBUG
virtual void AssertValid() const;
virtual void Dump(CDumpContext& dc) const;
#endif
// Generated message map functions
//{{AFX_MSG(CPA_EdIR_DesignerVariablesView)
afx_msg void OnSize(UINT nType, int cx, int cy);
//ANNECY CB
// afx_msg void OnCheckClicked(void);
//END
afx_msg void OnCheckShowPrivate();
//CPA2 Stegaru Cristian 98-06
afx_msg void OnCheckHideVariableForModel ();
//End CPA2 Stegaru Cristian 98-06
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
#endif //_EDIRDVVW_HPP_

View File

@@ -0,0 +1,42 @@
// EdIRDat.hpp : header file
//
#ifndef _EDIRDAT_HPP_
#define _EDIRDAT_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
class EdActors_EditorActor;
class CTL_Editor_Data;
class CTL_Editor_Control;
class WAW_Data;
void fn_vDelete(CTL_Editor_Data *);
void fn_vAddOwnerData(CTL_Editor_Data *,EdActors_EditorActor *);
EdActors_EditorActor *fn_pclGetParentActor(CTL_Editor_Data *);
BOOL fn_bIsInWatch(CTL_Editor_Data *);
void fn_vSetInWatch(CTL_Editor_Data *,BOOL);
WAW_Data *fn_pclGetWatchData(CTL_Editor_Data *);
void fn_vSetWatchData(CTL_Editor_Data *,WAW_Data *);
CTL_Editor_Control *fn_pclGetAssociatedControl(CTL_Editor_Data *);
void fn_vSetAssociatedControl(CTL_Editor_Data *,CTL_Editor_Control *);
void *fn_pvGetBaseAddress(CTL_Editor_Data *);
void fn_vSetBaseAddress(CTL_Editor_Data *,void *);
void fn_vIndexHasChanged(CTL_Editor_Data *,enum CTL_eUpdateReason,long l=0);
void fn_vNotifyInitialValue(CTL_Editor_Data *,enum CTL_eUpdateReason,long l=0);
void fn_vUpdateWatchData(CTL_Editor_Data *,enum CTL_eUpdateReason,long l=0);
void fn_vGetLowInfoAboutDsgVar(CTL_Editor_Data *,CString &,CString &,CStringList *);
void fn_vGetInfoAboutDsgVar(CTL_Editor_Data *,CString &,CString &,CStringList *);
void fn_vSetValueInDsgVar(CTL_Editor_Data *,CStringList *,void *);
#endif //_EDIRDAT_HPP_

View File

@@ -0,0 +1,44 @@
// EdIRDbg.hpp : header file
//
#ifndef _EDIRDBGS_HPP_
#define _EDIRDBGS_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
#include <afxtempl.h>
#include "EdIRDbg.hpp"
/////////////////////////////////////////////////////////////////////////////
// class CPA_EdIR_DebugInfoList
/////////////////////////////////////////////////////////////////////////////
class CPA_EdIR_DebugInfoList : public CList<CPA_EdIR_DebugInfo *,CPA_EdIR_DebugInfo *>
{
//BEGIN ROMTEAM Cristi Petrescu 98-05-
public:
//END ROMTEAM Cristi Petrescu 98-05-
CPA_EdIR_DebugInfo *m_fn_pclGetDebugInfo(struct tdstNodeInterpret_ *);
public:
CPA_EdIR_DebugInfoList();
~CPA_EdIR_DebugInfoList();
void m_fn_vDestroyAndRemoveAllEntries();
long m_fn_lGetLineNumber(struct tdstNodeInterpret_ *);
long m_fn_lGetColumnNumber(struct tdstNodeInterpret_ *);
long m_fn_lGetIndex(struct tdstNodeInterpret_ *);
CString m_fn_csGetBehaviourName(struct tdstNodeInterpret_ *);
struct tdstNodeInterpret_ *m_fn_pstGetNode(long,CString);
//BEGIN ROMTEAM Cristi Petrescu 98-05-
BOOL m_fn_bExecuted (long);
//END ROMTEAM Cristi Petrescu 98-05-
};
#endif //_EDIRDBGS_HPP_

View File

@@ -0,0 +1,59 @@
// EdIRDbg.hpp : header file
//
#ifndef _EDIRDBG_HPP_
#define _EDIRDBG_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
/////////////////////////////////////////////////////////////////////////////
// class CPA_EdIR_DebugInfo
/////////////////////////////////////////////////////////////////////////////
class CPA_EdIR_DebugInfo
{
private:
struct tdstNodeInterpret_ *m_pstNode;
long m_lLineNumber;
long m_lColumnNumber;
long m_lIndex;
CString m_csBehaviourName;
// BEGIN ROMTEAM Cristi Petrescu 98-08-
long m_lMacroIndex;
CString m_csMacroName;
// END ROMTEAM Cristi Petrescu 98-08-
//BEGIN ROMTEAM Cristi Petrescu 98-05-
BOOL m_bExecuted;
//END ROMTEAM Cristi Petrescu 98-05-
public:
//ANNECY CB
CPA_EdIR_DebugInfo(struct tdstNodeInterpret_ *,long,long,long,CString&);
// CPA_EdIR_DebugInfo(struct tdstNodeInterpret_ *,long,long,long,CString);
//END
struct tdstNodeInterpret_ *m_fn_pstGetNode();
long m_fn_lGetLineNumber();
long m_fn_lGetColumnNumber();
long m_fn_lGetIndex();
CString m_fn_csGetBehaviourName();
// BEGIN ROMTEAM Cristi Petrescu 98-08-
long m_fn_lGetMacroIndex() {return m_lMacroIndex;};
CString m_fn_csGetMacroName () {return m_csMacroName;};
// END ROMTEAM Cristi Petrescu 98-08-
//BEGIN ROMTEAM Cristi Petrescu 98-05-
void m_fn_vSetExecuted (BOOL bExecuted) {m_bExecuted = bExecuted;};
BOOL m_fn_bGetExecuted (void) {return m_bExecuted;};
void m_fn_vSetLineNumber (long lLineNumber) {m_lLineNumber = lLineNumber;};
//END ROMTEAM Cristi Petrescu 98-05-
// BEGIN ROMTEAM Cristi Petrescu 98-08-
void m_fn_vSetIndex (long lIndex) {m_lIndex = lIndex;};
void m_fn_vSetBehaviourName (CString csBehaviourName) { m_csBehaviourName = csBehaviourName;};
void m_fn_vSetMacroIndex (long lMacroIndex) {m_lMacroIndex = lMacroIndex;};
void m_fn_vSetMacroName (CString csMacroName) { m_csMacroName = csMacroName;};
// END ROMTEAM Cristi Petrescu 98-08-
};
#endif //_EDIRDBG_HPP_

View File

@@ -0,0 +1,140 @@
// EdIRDict.hpp : header file
//
#ifndef _EDIRDICT_HPP_
#define _EDIRDICT_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
#define C_INVALID_ID -1
#define C_INVALID_WORD ""
#define C_INVALID_LANGUAGE ""
#define C_INVALID_SCRIPTNAME ""
#define M_ID_IS_VALID(a) ((a)!=C_INVALID_ID)
#define M_WORD_IS_VALID(a) ((a)!=C_INVALID_WORD)
#define M_LANGUAGE_IS_VALID(a) ((a)!=C_INVALID_LANGUAGE)
#define M_SCRIPTNAME_IS_VALID(a) ((a)!=C_INVALID_SCRIPTNAME)
#define M_ID_IS_INVALID(a) ((a)==C_INVALID_ID)
#define M_WORD_IS_INVALID(a) ((a)==C_INVALID_WORD)
#define M_LANGUAGE_IS_INVALID(a) ((a)==C_INVALID_LANGUAGE)
#define M_SCRIPTNAME_IS_INVALID(a) ((a)==C_INVALID_SCRIPTNAME)
//////////////////////////////////////////////////////////////////
// class CPA_EdIR_WordEntry
//////////////////////////////////////////////////////////////////
/****************************************************************************/
class CPA_EdIR_WordEntry
{
//ANNECY CB
public:
// private:
//END
CString m_csLanguage;
CString m_csWord;
public:
CPA_EdIR_WordEntry();
CPA_EdIR_WordEntry(CString,CString);
CString m_fn_csGetLanguage();
CString m_fn_csGetWord();
void m_fn_vSetLanguage(CString);
void m_fn_vSetWord(CString);
};
//////////////////////////////////////////////////////////////////
// class CPA_EdIR_DictionnaryEntry
//////////////////////////////////////////////////////////////////
/****************************************************************************/
class CPA_EdIR_DictionnaryEntry
{
private:
CPA_EdIR_WordEntry *m_pclWordEntries;
CString m_csScriptName;
long m_lId;
long m_lNbEntries;
long m_lCurrentEntry;
public:
CPA_EdIR_DictionnaryEntry(long);
~CPA_EdIR_DictionnaryEntry();
void m_fn_vAddEntry(CString,CString);
CString m_fn_csGetScriptName();
long m_fn_lGetId();
void m_fn_vSetScriptName(CString);
void m_fn_vSetId(long);
CString m_fn_csGetName(CString);
CString m_fn_csTranslate(CString,CString);
//ANNECY CB
BOOL m_fn_bEntryExists(CString &, CString &);
// BOOL m_fn_bEntryExists(CString,CString);
public:
char m_acFirstLetter[256];
char m_acSecondLetter[256];
//END ANNECY
};
//////////////////////////////////////////////////////////////////
// class CPA_EdIR_Dictionary
//////////////////////////////////////////////////////////////////
//ANNECY CB
#include <afxtempl.h>
//END
/****************************************************************************/
class CPA_EdIR_Dictionary
{
private:
CPA_EdIR_DictionnaryEntry **m_ppclDictionnaryEntry;
long m_lNbEntries;
long m_lCurrentEntry;
//for fast translation
struct CPA_EdIR_stCouple
{
CString csWord;
CString csTranslatedWord;
};
CPA_EdIR_stCouple *m_pstCouple;
static int m_fn_iCompareNoCase(const void *,const void *);
CString m_csOldLanguage1;
CString m_csOldLanguage2;
public:
CPA_EdIR_Dictionary(long,long);
~CPA_EdIR_Dictionary();
long m_fn_lGetNbEntries();
void m_fn_vAddEntry(CString,long,CString,CString);
//ANNECY CB
long m_fn_lGetId(CString &,CString &);
CString m_fn_csGetWord(long,CString&);
// long m_fn_lGetId(CString,CString);
// CString m_fn_csGetWord(long,CString);
//END ANNECY
CString m_fn_csTranslate(CString,CString);
void m_fn_vInitFastTranslation(CString,CString);
CString m_fn_csFastTranslate(CString);
//ANNECY CB
public:
char m_acFirstLetter[256];
char m_acSecondLetter[256];
//END ANNECY
};
#endif //_EDIRDICT_HPP_

View File

@@ -0,0 +1,362 @@
#ifndef FLEX_HEADER_EdIRflx_hpp
#define FLEX_HEADER_EdIRflx_hpp
//BEGIN ROMTEAM Cristi Petrescu 98-04-
#include "stdafx.h"
#include <afxtempl.h>
typedef enum {begin_french, begin_english, begin_dsgvar} tdeBegin;
// I made this a class just for using CList to build stacks.
class CPA_EdIR_DefineContext
{
public:
char *m_pcIndex;
struct yy_buffer_state *m_bufLexContext;
};
class CPA_EdIR_DefineContextStack : public CList <CPA_EdIR_DefineContext *, CPA_EdIR_DefineContext *>
{
public:
void m_fn_vDestroyAndRemoveAllEntries (void);
};
//END ROMTEAM Cristi Petrescu 98-04-
#define YY_CLex_CHAR char
/* A lexical scanner header generated by flex */
/* MODIFIED FOR C++ CLASS BY Alain Coetmeur: coetmeur(at)icdc.fr */
/* Note that (at) mean the 'at' symbol that I cannot write */
/* because it is expanded to the class name */
/* made at Informatique-CDC, Research&development department */
/* company from the Caisse Des Depots et Consignations */
/*********************************************/
/* SYSTEM dependent declaration, includes... */
/*********************************************/
/* cfront 1.2 defines "c_plusplus" instead of "__cplusplus" */
#ifdef c_plusplus
#ifndef __cplusplus
#define __cplusplus
#endif
#endif
#ifdef __cplusplus
#ifndef YY_USE_PROTOS
#define YY_USE_PROTOS
#endif
#ifndef YY_USE_CLASS
#define YY_USE_CLASS
#endif
#else /* ! __cplusplus */
#ifdef __STDC__
#ifdef __GNUC__
#else
#endif /* __GNUC__ */
#ifndef YY_USE_PROTOS
#define YY_USE_PROTOS
#endif
#endif /* __STDC__ */
#endif /* ! __cplusplus */
/*********************************************/
/* COMPILER DEPENDENT MACROS */
/*********************************************/
/* use prototypes in function declarations */
#ifndef YY_PROTO
#ifdef YY_USE_PROTOS
#define YY_PROTO(proto) proto
#else
#define YY_PROTO(proto) ()
#endif
#endif
#include <stdio.h>
/* % here is the declaration from section1 %header{ */
#define YY_CLex_MEMBERS ~CLex(); \
void yyinit(char *,enum tdeTypeText_); \
long m_lOldIndex; \
long m_lIndexWithoutSpaceAndTab; \
long m_lIndex; \
long m_lOldMacroIndex; \
BOOL m_bIsInMacro; \
BOOL m_bIsInDefine; \
char *m_pcIndex; \
enum tdeTypeText_ m_eTypeText; \
tdeBegin m_eBegin; \
CString m_csDefineName; \
CMapStringToString m_clDefineList; \
CPA_EdIR_DefineContextStack m_clDefineContextStack; \
void m_fn_vEnterContext (char *szStringToParse); \
void m_fn_vExitContext (void);
#define YY_CLex_INPUT_CODE { \
if(*m_pcIndex==0) \
result=YY_NULL; \
else \
{ \
result=min((size_t)max_size,strlen(m_pcIndex)); \
strncpy(buffer,m_pcIndex,result); \
m_pcIndex+=result; \
} \
return result; \
}
#define YY_CLex_WRAP_CODE { \
if (m_clDefineContextStack . IsEmpty ()) \
{ \
return 1; \
} \
else \
{ \
m_fn_vExitContext (); \
if (m_clDefineContextStack . IsEmpty ()) \
m_bIsInDefine = FALSE; \
return 0; \
} \
}
#endif
#ifndef YY_CLex_TEXT
#define YY_CLex_TEXT yytext
#endif
#ifndef YY_CLex_LENG
#define YY_CLex_LENG yyleng
#endif
#ifndef YY_CLex_IN
#define YY_CLex_IN yyin
#endif
#ifndef YY_CLex_OUT
#define YY_CLex_OUT yyout
#endif
#ifndef YY_CLex_LEX_RETURN
#define YY_CLex_LEX_RETURN int
#else
#ifndef YY_CLex_LEX_DEFINED
#define YY_CLex_LEX_DEFINED
#endif
#endif
#ifndef YY_CLex_LEX
#define YY_CLex_LEX yylex
#else
#ifndef YY_CLex_LEX_DEFINED
#define YY_CLex_LEX_DEFINED
#endif
#endif
#ifndef YY_CLex_LEX_PARAM
#ifndef YY_USE_PROTOS
#define YY_CLex_LEX_PARAM
#else
#define YY_CLex_LEX_PARAM void
#endif
#else
#ifndef YY_CLex_LEX_DEFINED
#define YY_CLex_LEX_DEFINED
#endif
#endif
#ifndef YY_CLex_LEX_PARAM_DEF
#define YY_CLex_LEX_PARAM_DEF
#else
#ifndef YY_CLex_LEX_DEFINED
#define YY_CLex_LEX_DEFINED
#endif
#endif
#ifndef YY_CLex_RESTART
#define YY_CLex_RESTART yyrestart
#endif
#ifndef YY_CLex_SWITCH_TO_BUFFER
#define YY_CLex_SWITCH_TO_BUFFER yy_switch_to_buffer
#endif
#ifndef YY_CLex_LOAD_BUFFER_STATE
#define YY_CLex_LOAD_BUFFER_STATE yy_load_buffer_state
#endif
#ifndef YY_CLex_CREATE_BUFFER
#define YY_CLex_CREATE_BUFFER yy_create_buffer
#ifndef YY_USE_CLASS
#ifndef yy_new_buffer
#define yy_new_buffer yy_create_buffer
#endif
#endif
#endif
#ifndef YY_CLex_DELETE_BUFFER
#define YY_CLex_DELETE_BUFFER yy_delete_buffer
#endif
#ifndef YY_CLex_INIT_BUFFER
#define YY_CLex_INIT_BUFFER yy_init_buffer
#endif
#ifdef YY_CLex_FLEX_DEBUG
#ifndef YY_CLex_DEBUG
#define YY_CLex_DEBUG 1
#endif
#else
#ifndef YY_CLex_DEBUG
#define YY_CLex_DEBUG 0
#endif
#endif
#if YY_CLex_DEBUG != 0
#ifndef YY_CLex_DEBUG_FLAG
#define YY_CLex_DEBUG_FLAG yy_flex_debug
#endif
#ifndef YY_CLex_DEBUG_INIT
#define YY_CLex_DEBUG_INIT 1
#endif
#endif
#ifndef YY_USE_CLASS
typedef struct yy_buffer_state *YY_BUFFER_STATE;
extern void YY_CLex_RESTART YY_PROTO(( FILE *input_file ));
extern void YY_CLex_SWITCH_TO_BUFFER YY_PROTO(( YY_BUFFER_STATE new_buffer ));
extern void YY_CLex_LOAD_BUFFER_STATE YY_PROTO(( void ));
extern YY_BUFFER_STATE YY_CLex_CREATE_BUFFER YY_PROTO(( FILE *file, int size ));
extern void YY_CLex_DELETE_BUFFER YY_PROTO(( YY_BUFFER_STATE b ));
extern void YY_CLex_INIT_BUFFER YY_PROTO(( YY_BUFFER_STATE b, FILE *file ));
#if YY_CLex_DEBUG != 0
extern int YY_CLex_DEBUG_FLAG ;
#endif
extern YY_CLex_CHAR *YY_CLex_TEXT;
extern int YY_CLex_LENG;
extern FILE *YY_CLex_IN, *YY_CLex_OUT;
#ifdef YY_CLex_LEX_DEFINED
extern YY_CLex_LEX_RETURN YY_CLex_LEX ( YY_CLex_LEX_PARAM )
YY_CLex_LEX_PARAM_DEF
#else
#ifndef YY_DECL
extern YY_CLex_LEX_RETURN YY_CLex_LEX ( YY_CLex_LEX_PARAM )
YY_CLex_LEX_PARAM_DEF
#else
/* no declaration if oldstyle flex */
#endif
#endif
#else
#ifndef YY_CLex_CLASS
#define YY_CLex_CLASS CLex
#endif
#ifndef YY_CLex_ECHO
#define YY_CLex_ECHO yy_echo
#endif
#ifdef YY_CLex_ECHO_PURE
#define YY_CLex_ECHO_NOCODE
#endif
#ifndef YY_CLex_ECHO_CODE
#define YY_CLex_ECHO_CODE fwrite( (char *) YY_CLex_TEXT, YY_CLex_LENG, 1, YY_CLex_OUT );
#endif
#ifndef YY_CLex_INPUT
#define YY_CLex_INPUT yy_input
#endif
#ifdef YY_CLex_INPUT_PURE
#define YY_CLex_INPUT_NOCODE
#endif
#ifndef YY_CLex_INPUT_CODE
#define YY_CLex_INPUT_CODE return result= fread( buffer, 1,max_size,YY_CLex_IN );
#endif
#ifdef YY_CLex_FATAL_ERROR_PURE
#define YY_CLex_FATAL_ERRO_NOCODE
#endif
#ifndef YY_CLex_FATAL_ERROR
#define YY_CLex_FATAL_ERROR yy_fatal_error
#endif
#ifndef YY_CLex_FATAL_ERROR_CODE
#define YY_CLex_FATAL_ERROR_CODE fputs( msg, stderr );putc( '\n', stderr );exit( 1 );
#endif
#ifndef YY_CLex_WRAP
#define YY_CLex_WRAP yy_wrap
#endif
#ifdef YY_CLex_WRAP_PURE
#define YY_CLex_WRAP_NOCODE
#endif
#ifndef YY_CLex_WRAP_CODE
#define YY_CLex_WRAP_CODE return 1;
#endif
#ifndef YY_CLex_INHERIT
#define YY_CLex_INHERIT
#endif
#ifndef YY_CLex_MEMBERS
#define YY_CLex_MEMBERS
#endif
#ifndef YY_CLex_CONSTRUCTOR_PARAM
#define YY_CLex_CONSTRUCTOR_PARAM
#endif
#ifndef YY_CLex_CONSTRUCTOR_CODE
#define YY_CLex_CONSTRUCTOR_CODE
#endif
#ifndef YY_CLex_CONSTRUCTOR_INIT
#define YY_CLex_CONSTRUCTOR_INIT
#endif
typedef struct yy_buffer_state *YY_BUFFER_STATE;
class YY_CLex_CLASS YY_CLex_INHERIT
{
private:/* data */
YY_CLex_CHAR *yy_c_buf_p;
YY_CLex_CHAR yy_hold_char;
int yy_n_chars;
int yy_init;
int yy_start;
int yy_did_buffer_switch_on_eof;
private: /* functions */
void yy_initialize();
int input();
int yyinput() {return input();};
int yy_get_next_buffer();
void yyunput( YY_CLex_CHAR c, YY_CLex_CHAR *buf_ptr );
/* use long instead of yy_state_type because it is undef */
long yy_get_previous_state_ ( void );
long yy_try_NUL_trans_ ( long current_state_ );
protected:/* non virtual */
YY_BUFFER_STATE yy_current_buffer;
void YY_CLex_RESTART ( FILE *input_file );
void YY_CLex_SWITCH_TO_BUFFER( YY_BUFFER_STATE new_buffer );
void YY_CLex_LOAD_BUFFER_STATE( void );
YY_BUFFER_STATE YY_CLex_CREATE_BUFFER( FILE *file, int size );
void YY_CLex_DELETE_BUFFER( YY_BUFFER_STATE b );
void YY_CLex_INIT_BUFFER( YY_BUFFER_STATE b, FILE *file );
protected: /* virtual */
virtual void YY_CLex_ECHO()
#ifdef YY_CLex_ECHO_PURE
=0
#endif
;
virtual int YY_CLex_INPUT(char *buf,int &result,int max_size)
#ifdef YY_CLex_INPUT_PURE
=0
#endif
;
virtual void YY_CLex_FATAL_ERROR(char *msg)
#ifdef YY_CLex_FATAL_ERROR_PURE
=0
#endif
;
virtual int YY_CLex_WRAP()
#ifdef YY_CLex_WRAP_PURE
=0
#endif
;
public:
YY_CLex_CHAR *YY_CLex_TEXT;
int YY_CLex_LENG;
FILE *YY_CLex_IN, *YY_CLex_OUT;
YY_CLex_LEX_RETURN YY_CLex_LEX ( YY_CLex_LEX_PARAM);
YY_CLex_CLASS(YY_CLex_CONSTRUCTOR_PARAM) ;
#if YY_CLex_DEBUG != 0
int YY_CLex_DEBUG_FLAG;
#endif
public: /* added members */
YY_CLex_MEMBERS
};
#endif
/* declaration of externs for public use of yylex scanner */
/* % here is the declaration from section2 %header{ */

View File

@@ -0,0 +1,191 @@
// EdIRFrm.hpp : interface of the CEdIAFrame class
//
/////////////////////////////////////////////////////////////////////////////
#ifndef _EDIRFRM_HPP_
#define _EDIRFRM_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
#include "ITF\CPAFrame.hpp"
#include "SCR.h"
#include "EdIRCsLs.hpp"
class CPA_EdIR_DiagView;
class CPA_EdIR_View;
class CPA_EdIR_ButtonView;
class CPA_EdIR_Brain;
class CPA_EdIR_MainBehaviourList;
class CPA_Actor;
typedef enum tdeRulesViewMode_
{
IntelligenceView,
ReflexView,
} tdeRulesViewMode;
/////////////////////////////////////////////////////////////////////////////
// class CPA_EdIR_Frame
/////////////////////////////////////////////////////////////////////////////
class COtherSplitterWnd : public CSplitterWnd
{
public:
virtual int HitTest(CPoint pt) const
{
int iRes = CSplitterWnd::HitTest(pt);
if(iRes == 101)
return 0;
return iRes;
}
};
//class CPA_EdIR_Frame : public CFrameWnd
class CPA_EdIR_Frame : public FRMBase
{
// Attributes
//ANNECY CB
public:
CPA_EdIR_Brain *m_pclBrain;
//BEGIN ROMTEAM Cristi Petrescu 98-05-
// for debugger
BOOL m_bMarkExecutedLines;
BOOL m_bShowTests;
//END ROMTEAM Cristi Petrescu 98-05-
// BEGIN ROMTEAM Cristi Petrescu 98-06-
CPA_EdIR_Brain *m_pclDebugBrain;
// END ROMTEAM Cristi Petrescu 98-06-
//END
private:
COtherSplitterWnd m_clSplitter1;
COtherSplitterWnd m_clSplitter2;
//ANNECY CB CPA_EdIR_Brain *m_pclBrain;
CList<CPA_EdIR_Brain *,CPA_EdIR_Brain *> m_clListOfModifiedBrains;
BOOL m_bKnownWordsFileIsCreated;
public:
CPA_EdIR_ConstantList m_clConstantList;
public:
CPA_EdIR_Frame();
DECLARE_DYNCREATE(CPA_EdIR_Frame)
// Operations
private:
void m_fn_vFillConstantList();
public:
CPA_EdIR_DiagView *m_fn_pclGetDiagrammeView();
CPA_EdIR_View *m_fn_pclGetEdRulesView();
CPA_EdIR_ButtonView *m_fn_pclGetButtonView();
void m_fn_vAModelHasBeenRemoved();
void m_fn_vShowBrain(CPA_EdIR_Brain *);
//ANNECY CB
// CPA_EdIR_Brain *m_fn_pclUpdateBrain(CPA_EdIR_Brain *,BOOL bCreateDsgVar=TRUE);
// void m_fn_vUpdateBehaviours();
CPA_EdIR_Brain *m_fn_pclUpdateBrain(CPA_EdIR_Brain *,BOOL bCreateDsgVar=TRUE, BOOL Disp=TRUE);
void m_fn_vUpdateBehaviours(BOOL Disp = TRUE);
//END
void m_fn_vChangeViewModeOfBehaviours();
void m_fn_vCreateNewBehaviour();
/* CHRISTOPHE QUICK SAVE MODIFICATIONS */
void m_fn_vQuickSave();
/* END CHRISTOPHE QUICK SAVE MODIFICATIONS */
void m_fn_vSaveAll();
void m_fn_vStopProcess();
void m_fn_vCheckBehaviour();
BOOL m_fn_bProcessIA(BOOL);
// Shaitan FastC (16/06/98) {
BOOL m_fn_bGenerateFastC(BOOL);
//End Shaitan FastC }
void m_fn_vPrint();
void m_fn_vShowConstant();
void m_fn_vAddOneModifiedBrain(CPA_EdIR_Brain *);
CPA_Actor *m_fn_pclGetModel();
CPA_EdIR_MainBehaviourList *m_fn_pclGetIntelligenceBehaviours();
CPA_EdIR_MainBehaviourList *m_fn_pclGetReflexBehaviours();
CPA_EdIR_MainBehaviourList *m_fn_pclGetDeclarations();
// BEGIN CPA2 Cristi Petrescu 98-03-
CPA_EdIR_MainBehaviourList *m_fn_pclGetMacros();
// END CPA2 Cristi Petrescu 98-03-
// BEGIN ROMTEAM CPA2 Cristi Petrescu 98-04-
CPA_EdIR_MainBehaviourList *m_fn_pclGetSubrs();
// END ROMTEAM CPA2 Cristi Petrescu 98-04-
//interface with action editor
void m_fn_vGetActionList(CStringList *);
void *m_fn_pvGetStateHandle(CString);
//for debugger
void m_fn_vSetRulesEditorReadOnly(BOOL bReadOnly=TRUE);
void m_fn_vChangeRulesView(tdeRulesViewMode);
void m_fn_vSetOrRemoveOneBreakPoint(long,long);
//BEGIN ROMTEAM Cristi Petrescu 98-05-
void m_fn_vMarkExecutedLines (void) {m_bMarkExecutedLines = TRUE;};
void m_fn_vShowTestsAndActions (void) {m_bMarkExecutedLines = FALSE; m_bShowTests = TRUE;};
void m_fn_vShowActions (void) {m_bMarkExecutedLines = FALSE; m_bShowTests = FALSE;};
//END ROMTEAM Cristi Petrescu 98-05-
//for load script
void m_fn_vLoadBrain(CPA_Actor *,CString);
static SCR_tde_Anl_ReturnValue m_fn_tdeCallBackLoadIntelligence(SCR_tdst_File_Description *,char *,char *[],SCR_tde_Anl_Action);
static SCR_tde_Anl_ReturnValue m_fn_tdeCallBackLoadReflex(SCR_tdst_File_Description *,char *,char *[],SCR_tde_Anl_Action);
static SCR_tde_Anl_ReturnValue m_fn_tdeCallBackLoadDeclaration(SCR_tdst_File_Description *,char *,char *[],SCR_tde_Anl_Action);
// BEGIN CPA2 Cristi Petrescu 98-03-
static SCR_tde_Anl_ReturnValue m_fn_tdeCallBackLoadMacro(SCR_tdst_File_Description *,char *,char *[],SCR_tde_Anl_Action);
// END CPA2 Cristi Petrescu 98-03-
// BEGIN ROMTEAM CPA2 Cristi Petrescu 98-04-
static SCR_tde_Anl_ReturnValue m_fn_tdeCallBackLoadSubr(SCR_tdst_File_Description *,char *,char *[],SCR_tde_Anl_Action);
// END ROMTEAM CPA2 Cristi Petrescu 98-04-
static SCR_tde_Anl_ReturnValue m_fn_tdeCreateMainBehaviour(SCR_tdst_File_Description *,char *,char *[],SCR_tde_Anl_Action);
//interface
void m_fn_vCreateEditor();
void m_fn_vLevelChanges();
BOOL m_fn_bAcceptToRunEngine();
BOOL m_fn_bAcceptToSave();
void m_fn_vBeforeSaveAll();
void m_fn_vAfterSaveAll();
void m_fn_vBeforeEngine();
void m_fn_vBeforeEditor();
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CPA_EdIR_Frame)
public:
//virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
//virtual BOOL Create(LPCTSTR,LPCTSTR,DWORD dwStyle=WS_OVERLAPPEDWINDOW,const RECT& rect=rectDefault,CWnd* pParentWnd=NULL,LPCTSTR lpszMenuName=NULL,DWORD dwExStyle=0,CCreateContext* pContext=NULL);
protected:
virtual BOOL OnCreateClient(LPCREATESTRUCT,CCreateContext* pContext);
//}}AFX_VIRTUAL
//afx_msg UINT OnNcHitTest( CPoint );
// Implementation
public:
virtual ~CPA_EdIR_Frame();
#ifdef _DEBUG
virtual void AssertValid() const;
virtual void Dump(CDumpContext& dc) const;
#endif
// Generated message map functions
protected:
//{{AFX_MSG(CPA_EdIR_Frame)
afx_msg void OnDestroy();
afx_msg void OnSysCommand(UINT,LPARAM);
afx_msg void OnActivate(UINT nState, CWnd* pWndOther, BOOL bMinimized);
afx_msg void OnSetFocus(CWnd* pOldWnd);
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
#endif //_EDIRFRM_HPP_

View File

@@ -0,0 +1,26 @@
// EdIRGlob.hpp : header file
//
#ifndef _EDIRGLOB_HPP_
#define _EDIRGLOB_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
//ANNECY CB
CString fn_csGetNextWord(CString&,long &);
CString fn_csGetNextNonWord(CString&,long &);
//CString fn_csGetNextWord(CString,long &);
//CString fn_csGetNextNonWord(CString,long &);
//END
BOOL fn_bGetNextLine(CString,long &,CString &);
BOOL fn_bGetLine(CString,long,CString &);
CString fn_csReplaceChar(CString,char,char);
CString fn_csReplaceString(CString,CString,CString);
void fn_vDisplayInfoInStatusBar(CString,int);
//ANNECY CB
extern BOOL gbFirstShowBrain;
//END ANNECY
#endif //_EDIRGLOB_HPP_

View File

@@ -0,0 +1,62 @@
// EdIRIAGl.hpp : header file
//
#ifndef _EDIRIAGL_HPP_
#define _EDIRIAGL_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
#define D_GENERATE_KNOWNWORDS
//#undef D_GENERATE_KNOWNWORDS
#define M_KEYWORDID(a) ((tdeKeyWordId)(a))
#define M_METAACTID(a) ((tdeMetaActionId)(a))
#define M_CONDITIONID(a) ((tdeCondId)(a))
#define M_FUNCTIONID(a) ((tdeFuncId)(a))
#define M_PROCEDUREID(a) ((tdeProcedureId)(a))
#define M_DSGVARID(a) ((tdeDsgVarTypeId)(a))
#define M_FIELDID(a) ((tdeFieldId)(a))
#ifdef D_GENERATE_KNOWNWORDS
CString fn_csGetParamType(char);
CString fn_csGetParamTypeInEnglish(char);
CString fn_csGetParamsTypes(CString);
CString fn_csGetInfoAboutCondition(CStringList &,long);
CString fn_csGetInfoAboutMetaAction(CStringList &,long);
CString fn_csGetInfoAboutProcedure(CStringList &,long);
CString fn_csGetInfoAboutFunction(CStringList &,long);
BOOL fn_bHelpIsAvailable(CStringList &,CString);
void fn_vCreateKnownWordsFile();
#endif //D_GENERATE_KNOWNWORDS
struct tdstEngineObject_ *fn_pstGetMainActor();
struct tdstEngineObject_ *fn_pstGetWorld();
CStringList *fn_pclGetListIATypeObjects();
void fn_vAddListOfPersos(CStringList *);
void fn_vAddListOfZdd(CStringList *);
void fn_vAddListOfZde(CStringList *);
void fn_vAddListOfZdm(CStringList *);
void fn_vAddListOfActions(CStringList *);
void fn_vAddListOfWayPoints(CStringList *);
void fn_vAddListOfSurfaces(CStringList *);
void fn_vAddListOfEnvironments(CStringList *);
void fn_vAddListOfLipSynchros(CStringList *);
void fn_vAddListOfSectors(CStringList *);
void fn_vAddListOfObjectTables(CStringList *);
void fn_vAddListOfFamilies(CStringList *);
void fn_vAddListOfSoundEvents(CStringList *);
void fn_vAddListOfGameMaterials(CStringList *);
void fn_vAddListOfBehaviours(CStringList *);
void fn_vAddListOfMaskTypes(CStringList *);
void fn_vAddListOfChannels(CStringList *);
void fn_vAddListOfZdr(CStringList *);
CStringList *fn_pclGetListIAObjects(CString csType="");
//Stefan Dumitrean 2-5-98
void fn_vAddListOfIAObjectsForType( CStringList*, CStringList*, CString, CString );
//End Stefan Dumitrean
#endif //_EDIRGLOB_HPP_

View File

@@ -0,0 +1,114 @@
// EdIRIAWd.hpp : header file
//
#ifndef _EDIRIAWD_HPP_
#define _EDIRIAWD_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
const CString g_c_csEnglishName ="English";
const CString g_c_csFrenchName ="French";
/****************************************************************************/
void fn_vInitTranslation();
/****************************************************************************/
CString fn_csTranslateText(CString,CString csLanguage="");
/****************************************************************************/
CString fn_csFastTranslateText(CString,CString,CString csLanguage="");
/****************************************************************************/
long fn_lGetNbMetaActions();
//ANNECY CB
long fn_lGetMetaActionIdFromEditorName(CString&,CString csLanguage="");
long fn_lGetMetaActionIdFromEditorName(char *,CString csLanguage="");
//long fn_lGetMetaActionIdFromEditorName(CString,CString csLanguage="");
//END
CString fn_csGetMetaActionEditorNameFromId(long,CString csLanguage="");
/****************************************************************************/
long fn_lGetNbProcedures();
//ANNECY CB
long fn_lGetProcedureIdFromEditorName(CString&,CString csLanguage="");
long fn_lGetProcedureIdFromEditorName(char *,CString csLanguage="");
//long fn_lGetProcedureIdFromEditorName(CString,CString csLanguage="");
//END
CString fn_csGetProcedureEditorNameFromId(long,CString csLanguage="");
/****************************************************************************/
long fn_lGetNbFunctions();
//ANNECY CB
long fn_lGetFunctionIdFromEditorName(CString&,CString csLanguage="");
long fn_lGetFunctionIdFromEditorName(char *,CString csLanguage="");
//long fn_lGetFunctionIdFromEditorName(CString,CString csLanguage="");
//END
CString fn_csGetFunctionEditorNameFromId(long,CString csLanguage="");
/****************************************************************************/
long fn_lGetNbConditions();
//ANNECY CB
long fn_lGetConditionIdFromEditorName(CString&,CString csLanguage="");
long fn_lGetConditionIdFromEditorName(char *,CString csLanguage="");
//long fn_lGetConditionIdFromEditorName(CString,CString csLanguage="");
//END
CString fn_csGetConditionEditorNameFromId(long,CString csLanguage="");
/****************************************************************************/
long fn_lGetNbKeyWords();
//ANNECY CB
long fn_lGetKeyWordIdFromEditorName(CString&,CString csLanguage="");
long fn_lGetKeyWordIdFromEditorName(char *,CString csLanguage="");
//long fn_lGetKeyWordIdFromEditorName(CString,CString csLanguage="");
//END
CString fn_csGetKeyWordEditorNameFromId(long,CString csLanguage="");
/****************************************************************************/
long fn_lGetNbOperators();
//ANNECY CB
long fn_lGetOperatorIdFromEditorName(CString&,CString csLanguage="");
long fn_lGetOperatorIdFromEditorName(char *,CString csLanguage="");
//long fn_lGetOperatorIdFromEditorName(CString,CString csLanguage="");
//END
CString fn_csGetOperatorEditorNameFromId(long,CString csLanguage="");
/****************************************************************************/
long fn_lGetNbFields();
//ANNECY CB
long fn_lGetFieldIdFromEditorName(CString&,CString csLanguage="");
long fn_lGetFieldIdFromEditorName(char *,CString csLanguage="");
//long fn_lGetFieldIdFromEditorName(CString,CString csLanguage="");
//END
CString fn_csGetFieldEditorNameFromId(long,CString csLanguage="");
/****************************************************************************/
long fn_lGetNbDsgVarTypes();
//ANNECY CB
long fn_lGetDsgVarTypeIdFromEditorName(CString&,CString csLanguage="");
long fn_lGetDsgVarTypeIdFromEditorName(char *,CString csLanguage="");
//long fn_lGetDsgVarTypeIdFromEditorName(CString,CString csLanguage="");
//END
CString fn_csGetDsgVarTypeEditorNameFromId(long,CString csLanguage="");
/****************************************************************************/
long fn_lGetNbDsgVarSaveTypes();
//ANNECY CB
long fn_lGetDsgVarSaveTypeIdFromEditorName(CString&,CString csLanguage="");
long fn_lGetDsgVarSaveTypeIdFromEditorName(char *,CString csLanguage="");
//long fn_lGetDsgVarSaveTypeIdFromEditorName(CString,CString csLanguage="");
//END
CString fn_csGetDsgVarSaveTypeEditorNameFromId(long,CString csLanguage="");
/****************************************************************************/
long fn_lGetNbDsgVarInitTypes();
//ANNECY CB
long fn_lGetDsgVarInitTypeIdFromEditorName(CString&,CString csLanguage="");
long fn_lGetDsgVarInitTypeIdFromEditorName(char *,CString csLanguage="");
//long fn_lGetDsgVarInitTypeIdFromEditorName(CString,CString csLanguage="");
//END
CString fn_csGetDsgVarInitTypeEditorNameFromId(long,CString csLanguage="");
#endif //_EDIRIAWD_HPP_

View File

@@ -0,0 +1,152 @@
// EdIRIC.hpp : header file
//
#ifndef _EDIRIC_HPP_
#define _EDIRIC_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
#define D_ZdxStuff_StructureDefine
#include "MTH.h"
#include "ai_intf.hpp"
#include "Ctl.h"
#include "CPA_NLL.hpp"
#include "ITF.h"
#include "incAI.h"
typedef enum tdeNodeType_
{
eCreateSchedule ,
eCreateRule ,
eCreateDsgVar ,
//BEGIN ROMTEAM Cristi Petrescu 98-04-
eCreateSubr,
eSubrRef,
//END ROMTEAM Cristi Petrescu 98-04-
eBeginMacro ,
eEndMacro ,
eIncDepth ,
eDecDepth ,
eStopEngine ,
eStopRule ,
eNonStop ,
eKeyWord ,
eCondition ,
eMetaAction ,
eProcedure ,
eField ,
eConstant ,
eOperator ,
eFunction ,
eDsgVar ,
eConstantInt ,
eConstantReal ,
ePerso ,
eReal ,
eZdd ,
eZde ,
eZdm ,
eVector ,
eVectorConstant ,
eAction ,
eState ,
eWay ,
eWayPoint ,
eModule ,
eKeyButton ,
eComport ,
eMaskType ,
ePower ,
eSurface ,
eEnvironment ,
eSector ,
eSuperObject ,
eLipSynchro ,
eObjectTable ,
eFamily ,
eModel ,
eSoundEvent ,
eString ,
eText ,
eFont ,
eGameMaterial ,
eLight ,
eCaps ,
eGraph ,
eParticleGenerator ,
eMyRfxBehaviour ,
eMyIABehaviour ,
eRfxBehaviour ,
eIABehaviour ,
eZdr ,
eInvalidNode
} tdeNodeType;
/////////////////////////////////////////////////////////////////////////////
// class CPA_EdIR_IntermediateCode
/////////////////////////////////////////////////////////////////////////////
class CPA_Actor;
class CPA_EdIR_IntermediateCode
{
private:
enum eType
{
eUseLong,
eUseReal,
eUseVector,
eUseString,
eInvalidType
};
long m_lOffset; //in original text
tdeNodeType m_eNodeType; //node type
unsigned char m_ucDepth; //depth
eType m_eType; //to know if we use m_lIndex, m_dfValue or m_tdstVector
long m_lIndex; //value
CPA_Actor *m_pclModel; //for behaviour
double m_dfValue; //value
MTH3D_tdstVector m_tdstVector; //value
CString m_csString; //value
public:
tdstNodeInterpret *pstRefNode; /* To remember address of node for a reference */
CPA_EdIR_IntermediateCode();
CPA_EdIR_IntermediateCode(CPA_EdIR_IntermediateCode *);
CPA_EdIR_IntermediateCode(long,tdeNodeType,long,CPA_Actor *pclModel=NULL);
CPA_EdIR_IntermediateCode(long,tdeNodeType,double);
CPA_EdIR_IntermediateCode(long,tdeNodeType,double,double,double);
CPA_EdIR_IntermediateCode(long,tdeNodeType,CString);
CString m_fn_csGetValue();
long m_fn_lGetIndex();
CPA_Actor *m_fn_pclGetModel();
double m_fn_dfGetValue();
MTH3D_tdstVector m_fn_tdstGetVector();
CString m_fn_csGetString();
long m_fn_lGetOffset();
tdeNodeType m_fn_tdeGetNodeType();
unsigned char m_fn_ucGetDepth();
void m_fn_vSetIndex(long);
void m_fn_vSetValue(double);
void m_fn_vSetNodeType(tdeNodeType);
void m_fn_vSetDepth(unsigned char);
void m_fn_vSetModel(CPA_Actor *);
/////////////////////////////////////////////////////////////////////////////////
//TEMPORAIRE
void m_fn_vSetString(CString);
/////////////////////////////////////////////////////////////////////////////////
};
#endif //_EDIRIC_HPP_

View File

@@ -0,0 +1,76 @@
// EdIRICLs.hpp : header file
//
#ifndef _EDIRICLS_HPP_
#define _EDIRICLS_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
#include <afxtempl.h>
#include "EdIRIC.hpp"
/////////////////////////////////////////////////////////////////////////////
// class CPA_EdIR_IntermediateCodeList
/////////////////////////////////////////////////////////////////////////////
class CPA_Actor;
class CPA_EdIR_IntermediateCodeList
{
private:
class CPA_EdIR_IntermediateCodeNode
{
public:
CPA_EdIR_IntermediateCode *m_pclData;
CPA_EdIR_IntermediateCodeNode *m_pclNextNode;
CPA_EdIR_IntermediateCodeNode(CPA_EdIR_IntermediateCode *);
~CPA_EdIR_IntermediateCodeNode();
};
private:
CPA_EdIR_IntermediateCodeNode *m_pclIntermediateCodeHead;
CPA_EdIR_IntermediateCodeNode *m_pclIntermediateCodeTail;
long m_lNbEntries;
public:
CPA_EdIR_IntermediateCodeList();
CPA_EdIR_IntermediateCodeList(CPA_EdIR_IntermediateCodeList &);
~CPA_EdIR_IntermediateCodeList();
void m_fn_vDestroyAndRemoveAllEntries();
void m_fn_vMakeEmpty();
BOOL IsEmpty();
long GetCount();
void AddTail(CPA_EdIR_IntermediateCode *);
POSITION FindIndex(long);
POSITION GetHeadPosition();
CPA_EdIR_IntermediateCode *GetAt(POSITION);
CPA_EdIR_IntermediateCode *GetNext(POSITION &);
CPA_EdIR_IntermediateCode *GetHead();
CPA_EdIR_IntermediateCode *GetTail();
void m_fn_vAdd(long,tdeNodeType,long,CPA_Actor *pclModel=NULL);
void m_fn_vAdd(long,tdeNodeType,double);
void m_fn_vAdd(long,tdeNodeType,CString);
void m_fn_vAdd(CPA_EdIR_IntermediateCode *);
void m_fn_vConcat(CPA_EdIR_IntermediateCodeList &);
CPA_EdIR_IntermediateCodeList operator =(CPA_EdIR_IntermediateCodeList &);
CPA_EdIR_IntermediateCodeList operator =(CPA_EdIR_IntermediateCode *);
CString m_fn_csGetValue(long);
long m_fn_lGetIndex(long);
double m_fn_dfGetValue(long);
MTH3D_tdstVector m_fn_tdstGetVector(long);
void m_fn_vSetIndex(long,long);
void m_fn_vSetModel(long,CPA_Actor *);
};
#endif //_EDIRICLS_HPP_

View File

@@ -0,0 +1,193 @@
// EdIRIRD.hpp : header file
//
#ifndef _EDIRIRD_HPP_
#define _EDIRIRD_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
#include <afxtempl.h>
//For saving function
#include "SCR.h"
#include "EdIRBELs.hpp"
#include "EdIRDbLs.hpp"
#include "EdIRBkLs.hpp"
//BEGIN ROMTEAM Cristi Petrescu 98-04-
#include "EdIRMacL.hpp"
//END ROMTEAM Cristi Petrescu 98-04-
class CPA_EdIR_DiagView;
class CTL_Editor_Data;
class CPA_Actor;
/////////////////////////////////////////////////////////////////////////////
// class CPA_EdIR_Brain
/////////////////////////////////////////////////////////////////////////////
class CPA_EdIR_Brain
{
//Attributes
private:
CPA_Actor *m_pclModel;
BOOL m_bOldApplicationIsOK;
BOOL m_bDsgVarControlsAreCreated;
BOOL m_bMustReInitBehaviour;
CPA_EdIR_DebugInfoList m_clDebugInfoList;
CPA_EdIR_BreakPointList m_clBreakPointList;
BOOL m_bAlreadyProcessed;
public:
BOOL m_bHasBeenModified;
BOOL m_bCanQuickSave;
CPA_EdIR_MainBehaviourList m_clListOfIntelligenceBehaviours;
CPA_EdIR_MainBehaviourList m_clListOfReflexBehaviours;
CPA_EdIR_MainBehaviourList m_clListOfDeclarations;
// BEGIN CPA2 Cristi Petrescu 98-03-
CPA_EdIR_MainBehaviourList m_clListOfMacros;
// END CPA2 Cristi Petrescu 98-03-
// BEGIN ROMTEAM CPA2 Cristi Petrescu 98-04-
CPA_EdIR_MainBehaviourList m_clListOfSubrs;
// END ROMTEAM CPA2 Cristi Petrescu 98-04-
//BEGIN ROMTEAM Cristi Petrescu 98-05-
BOOL m_bMustBuildDebugInfo;
//END ROMTEAM Cristi Petrescu 98-05-
//BEGIN ROMTEAM Cristi Petrescu 98-06-
BOOL m_bShowPrivateVariable;
//END ROMTEAM Cristi Petrescu 98-06-
//ANNECY CB
BOOL m_bFirstShow;
//END ANNECY
//Operations
private:
//for saving script
void m_fn_vCreateInitControlsForBehaviour(struct AI_tdstAIModel_ *);
void m_fn_vUpdateInitControlsForBehaviour(struct AI_tdstAIModel_ *);
void m_fn_vCreateControlsForBehaviour();
void m_fn_vUpdateControlsForBehaviour();
void m_fn_vDeleteOldDsgVarControl();
void m_fn_vRememberOldDsgVarValues();
void m_fn_vUpdateDatasWithOldValues();
void m_fn_vReplaceBehaviourNames(CString);
public:
CPA_EdIR_Brain(CPA_Actor *);
CPA_EdIR_Brain(CPA_Actor *,CPA_EdIR_Brain *);
~CPA_EdIR_Brain();
void m_fn_vUpdateBehavioursList(CPA_EdIR_DiagView *,enum tdeEditState_);
void m_fn_vCreateOrUpdateDsgVarControlsWithEngineValues();
CString m_fn_csGetModelName();
//for saving script
static void m_fn_vSaveEngineAI(SCR_tdst_File_Description *,char *,void *,SCR_tde_Ntfy_Action);
static void m_fn_vSaveEngineAIDeclaration(SCR_tdst_File_Description *,char *,void *,SCR_tde_Ntfy_Action);
static void m_fn_vSaveEngineAIRules(SCR_tdst_File_Description *,char *,void *,SCR_tde_Ntfy_Action);
static void m_fn_vSaveEngineAIReflexes(SCR_tdst_File_Description *,char *,void *,SCR_tde_Ntfy_Action);
//BEGIN ROMTEAM Cristi Petrescu 98-04-
static void m_fn_vSaveEngineAISubrs(SCR_tdst_File_Description *,char *,void *,SCR_tde_Ntfy_Action);
//END ROMTEAM Cristi Petrescu 98-04-
static void m_fn_vSaveEngineAIDefines(SCR_tdst_File_Description *,char *,void *,SCR_tde_Ntfy_Action);
static void m_fn_vSaveEditorAIDeclaration(SCR_tdst_File_Description *,char *,void *,SCR_tde_Ntfy_Action);
// BEGIN CPA2 Cristi Petrescu 98-03-
static void m_fn_vSaveEditorAIMacros(SCR_tdst_File_Description *,char *,void *,SCR_tde_Ntfy_Action);
// END CPA2 Cristi Petrescu 98-03-
// BEGIN ROMTEAM CPA2 Cristi Petrescu 98-04-
static void m_fn_vSaveEditorAISubrs(SCR_tdst_File_Description *,char *,void *,SCR_tde_Ntfy_Action);
// END ROMTEAM CPA2 Cristi Petrescu 98-04-
static void m_fn_vSaveEditorAIRules(SCR_tdst_File_Description *,char *,void *,SCR_tde_Ntfy_Action);
static void m_fn_vSaveEditorAIReflexes(SCR_tdst_File_Description *,char *,void *,SCR_tde_Ntfy_Action);
//ROMTEAM Check Save 12.06.98 Ionut Grozea
BOOL m_fn_MacrosHasBeenModified(){ return (m_clListOfMacros.m_fn_bHasBeenModified() || m_clListOfDeclarations.m_fn_bHasBeenModified());};
//ENDROMTEAM Check Save 12.06.98 Ionut Grozea
/* CHRISTOPHE QUICK SAVE MODIFICATIONS */
void m_fn_vQuickSave();
/* END CHRISTOPHE QUICK SAVE MODIFICATIONS */
//Check IA
BOOL m_fn_bCheckIA();
//Interprets IA
BOOL m_fn_bProcessIA(BOOL,CPA_Actor *pclActor=NULL);
//for updating dsg var controls
CPA_Actor *m_fn_pclGetModel();
BOOL m_fn_bHasBeenModified();
void m_fn_vSetModified(BOOL);
BOOL m_fn_bIAIsAlreadyProcessed();
BOOL m_fn_bReInitBehaviourIsNeeded();
void m_fn_vSetReInitBehaviourFlag(BOOL);
void m_fn_vNotify();
// Shaitan FastC {
void m_fn_vNotifyIA();
//End Shaitan FastC }
BOOL m_fn_bOldApplicationIsOK();
//interface with action editor
void *m_fn_pvGetStateHandle(CString);
void m_fn_vGetActionList(CStringList *);
//interface with debugger
CString m_fn_csGetDsgVarName(long lIndex);
//long m_fn_lGetLineNumber(struct tdstNodeInterpret_ *);
//long m_fn_lGetColumnNumber(struct tdstNodeInterpret_ *);
//long m_fn_lGetIndex(struct tdstNodeInterpret_ *);
void m_fn_vShowBehaviour(struct tdstNodeInterpret_ *);
//BEGIN ROMTEAM Cristi Petrescu 98-05-
void m_fn_vShowBehaviour(CString);
void m_fn_vMustBuildDebugInfo (BOOL);
CString m_fn_csGetBehaviourName (struct tdstNodeInterpret_ *);
//void m_fn_vStartExecutedCodeDisplay (CString);
//void m_fn_vStopExecutedCodeDisplay (CString);
void m_fn_vClearExecutedNodes (CString);
void m_fn_vSetOneExecutedNode (struct tdstNodeInterpret_ *);
void m_fn_vUpdateDebugInfo (void);
// BEGIN ROMTEAM Cristi Petrescu 98-06-
long m_fn_lGetVariableIndex (CString VariableName);
// END ROMTEAM Cristi Petrescu 98-06-
//END ROMTEAM Cristi Petrescu 98-05-
CPA_EdIR_BreakPointList *m_fn_pclGetBreakPointList();
void m_fn_vSetOrRemoveOneBreakPoint(long,CString);
void m_fn_vSetEngineBreakPoints(BOOL);
CPA_EdIR_DebugInfoList *m_fn_pclGetDebugInfoList(void) ;
// Shaitan => Macros to subroutines
void m_fn_vChangeAllEditorMacrosToSubroutines (void);
void m_fn_vRemoveAllMacrosFromEditorAI (void);
void m_fn_vUpdateEditorSubroutines (void);
void m_fn_vChangeOneEditorMacroToSubroutines (CPA_EdIR_MainBehaviour *pMacroMainBehaviour);
void m_fn_vRemoveOneMacroFromEditorAI (CPA_EdIR_MainBehaviour *pMacroMainBehaviour);
long m_fn_lCreateEditorSubroutinesFromMacro (CPA_EdIR_MainBehaviour *pMacroMainBehaviour, CRect crTitleRect, CStringList *pListOfMacros, CStringList *pListOfSubrs);
void m_fn_vUpdateEditorMacroCallsInEditorAI (CStringList *pListOfMacros, CStringList *pListOfSubrs);
void m_fn_vReplaceInEditorBehaviour (CPA_EdIR_MainBehaviour *pMainBehaviour, CString csMacroName, CString csSubrName);
CString m_fn_csBuildDefineListForMacro (CStringList *pListOfDefines, CString csMacroText);
void m_fn_vRegisterEditorDefinesForMacro (CPA_EdIR_MainBehaviour *pMacroMainBehaviour, CStringList *pListOfDefines);
CString m_fn_csExtractCommentLinesForNextMacro (CString csMacroText);
int m_fn_iGetFirstValidOccurence (CString csLowRules, CString csLowSearched);
BOOL m_fn_bIsIsolatedName (int iStartIndex, int iEndIndex, CString csRule);
BOOL m_fn_bIsInCommentedLine (int iStartIndex, CString csRule);
// Shaitan => Macros to subroutines
};
#endif //_EDIRIRD_HPP_

View File

@@ -0,0 +1,43 @@
// EdIRMac.hpp : header file
//
#ifndef _EDIRMAC_HPP_
#define _EDIRMAC_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
//////////////////////////////////////////////////////////////////
// class CPA_EdIR_Macro
//////////////////////////////////////////////////////////////////
class CPA_EdIR_Macro
{
//ANNECY CB
public:
// private:
//END
CString m_csName;
CString m_csContent;
public:
//Empty constructor
CPA_EdIR_Macro();
//Constructor
CPA_EdIR_Macro(CString,CString);
//Destructor;
~CPA_EdIR_Macro();
//Gets attributes
CString m_fn_csGetMacroName();
CString m_fn_csGetMacroContent();
// BEGIN CPA2 Cristi Petrescu 98-03-
void m_fn_vRenameMacro (CString csNewName);
// END CPA2 Cristi Petrescu 98-03-
};
#endif //_EDIRMAC_HPP_

View File

@@ -0,0 +1,42 @@
// EdIRMacL.hpp : header file
//
#ifndef _EDIRMACL_HPP_
#define _EDIRMACL_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
//////////////////////////////////////////////////////////////////
// class CPA_EdIR_MacroList
//////////////////////////////////////////////////////////////////
#include <afxtempl.h>
#include "EdIRMac.hpp"
class CPA_EdIR_MacroList : public CList<CPA_EdIR_Macro *,CPA_EdIR_Macro *>
{
public:
CMapStringToPtr *map;
void AddTail(CPA_EdIR_Macro *p);
//Empty constructor
CPA_EdIR_MacroList();
//Destructor;
~CPA_EdIR_MacroList();
void m_fn_vDestroyAndRemoveAllEntries();
// BEGIN CPA2 Cristi Petrescu 98-03-
// void m_fn_vCopyMacros (CPA_EdIR_MacroList &clMacroList);
// void m_fn_vAddMissingMacros (CPA_EdIR_MacroList &clMacroList);
// END CPA2 Cristi Petrescu 98-03-
char *m_fn_bIsAMacro(CString);
CString m_fn_csGetContentOfAMacro(CString);
};
#endif //_EDIRMACL_HPP_

View File

@@ -0,0 +1,67 @@
// EdIRPrtB.hpp : header file
//
#ifndef _EDIRPRTB_HPP_
#define _EDIRPRTB_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
/////////////////////////////////////////////////////////////////////////////
// CPA_EdIR_PrintDialog dialog
/////////////////////////////////////////////////////////////////////////////
#include "EdIRRes.h"
class CPA_EdIR_PrintDialog : public CDialog
{
//Attributes
private:
HINSTANCE m_hOldInstance;
public:
CString m_csBehaviourListName;
CString m_csFontName;
long m_lFontSize;
BOOL m_bIsPreview;
BOOL m_bCurrentBehaviour;
BOOL m_bAllBehaviours;
BOOL m_bAllIA;
BOOL m_bOneBehaviourOnAPage;
// Construction
public:
CPA_EdIR_PrintDialog(CString,CString,long,CWnd* pParent = NULL); // standard constructor
~CPA_EdIR_PrintDialog();
// Dialog Data
//{{AFX_DATA(CPA_EdIR_PrintDialog)
enum { IDD = IDD_IR_PRINT_DIALOG };
// NOTE: the ClassWizard will add data members here
//}}AFX_DATA
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CPA_EdIR_PrintDialog)
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
//}}AFX_VIRTUAL
// Implementation
protected:
// Generated message map functions
//{{AFX_MSG(CPA_EdIR_PrintDialog)
afx_msg void OnDestroy();
afx_msg void OnButtonChangeFont();
afx_msg void OnButtonPrintPreview();
virtual void OnOK();
virtual BOOL OnInitDialog();
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
#endif //_EDIRPRTB_HPP_

View File

@@ -0,0 +1,50 @@
// EdIRPrtF.hpp : header file
//
#ifndef _EDIRPRTF_HPP_
#define _EDIRPRTF_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
#include <AfxExt.h>
/////////////////////////////////////////////////////////////////////////////
// CPA_EdIR_PrintFrame frame
/////////////////////////////////////////////////////////////////////////////
class CPA_EdIR_DiagView;
class CPA_EdIR_PrintFrame : public CFrameWnd
{
private:
DECLARE_DYNCREATE(CPA_EdIR_PrintFrame)
public:
CPA_EdIR_PrintFrame();
// Attributes
// Operations
public:
BOOL m_fn_bCreate(CPA_EdIR_DiagView *,CString,CRect);
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CPA_EdIR_PrintFrame)
//}}AFX_VIRTUAL
// Implementation
protected:
virtual ~CPA_EdIR_PrintFrame();
// Generated message map functions
//{{AFX_MSG(CPA_EdIR_PrintFrame)
// NOTE - the ClassWizard will add and remove member functions here.
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
#endif //_EDIRPRTF_HPP_

View File

@@ -0,0 +1,61 @@
// EdIRPrtV.hpp : header file
//
#ifndef _EDIRPRTV_HPP_
#define _EDIRPRTV_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
/////////////////////////////////////////////////////////////////////////////
// CPA_EdIR_PrintView view
/////////////////////////////////////////////////////////////////////////////
class CPA_EdIR_DiagView;
class CPA_EdIR_PrintView : public CView
{
protected:
CPA_EdIR_PrintView(); // protected constructor used by dynamic creation
DECLARE_DYNCREATE(CPA_EdIR_PrintView)
// Attributes
public:
CPA_EdIR_DiagView *m_pclDiagView;
// Operations
public:
BOOL m_fn_bCreate(CWnd *);
void m_fn_vPrintPreview();
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CPA_EdIR_PrintView)
protected:
virtual void OnDraw(CDC* pDC); // overridden to draw this view
virtual BOOL OnPreparePrinting(CPrintInfo* pInfo);
virtual void OnPrint(CDC* pDC, CPrintInfo* pInfo);
virtual void OnEndPrintPreview(CDC* pDC, CPrintInfo* pInfo, POINT point, CPreviewView* pView);
virtual void OnBeginPrinting(CDC* pDC, CPrintInfo* pInfo);
//}}AFX_VIRTUAL
// Implementation
protected:
virtual ~CPA_EdIR_PrintView();
#ifdef _DEBUG
virtual void AssertValid() const;
virtual void Dump(CDumpContext& dc) const;
#endif
// Generated message map functions
protected:
//{{AFX_MSG(CPA_EdIR_PrintView)
// NOTE - the ClassWizard will add and remove member functions here.
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
#endif //_EDIRPRTV_HPP_

View File

@@ -0,0 +1,15 @@
// EdIRQuer.hpp : header file
//
#ifndef _EDIRQUER_HPP_
#define _EDIRQUER_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
class EdActors_MyDocument;
EdActors_MyDocument *fn_pclGetEdActorsDocument();
#endif //_EDIRQUER_HPP_

View File

@@ -0,0 +1,64 @@
// EdIRRBox.hpp : header file
//
#ifndef _EDIRRBOX_HPP_
#define _EDIRRBOX_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
#include "EdIRRes.h"
/////////////////////////////////////////////////////////////////////////////
// class CPA_EdIR_ActCondBoxDlg
/////////////////////////////////////////////////////////////////////////////
class CPA_EdIR_ActCondBoxDlg : public CDialog
{
// Attributes
private:
CStringList *mp_clListString;
HINSTANCE m_hOldInstance;
public:
//CPA 2 IONUT GROZEA 14-04
CString m_fn_csGetNameOfProcedureWithoutParams(CString );
//CPA 2 END IONUT GROZEA 14-04
CString m_csSelectedString;
// Construction
public:
CPA_EdIR_ActCondBoxDlg(CStringList *,CWnd* pParent = NULL); // standard constructor
~CPA_EdIR_ActCondBoxDlg();
// Dialog Data
//{{AFX_DATA(CPA_EdIR_ActCondBoxDlg)
enum { IDD = IDD_IR_ACTIONS_CONDITIONS_BOX };
// NOTE: the ClassWizard will add data members here
//}}AFX_DATA
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CPA_EdIR_ActCondBoxDlg)
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
//}}AFX_VIRTUAL
// Implementation
private:
void OnOK();
protected:
// Generated message map functions
//{{AFX_MSG(CPA_EdIR_ActCondBoxDlg)
virtual BOOL OnInitDialog();
afx_msg void OnDestroy();
afx_msg void OnDblclk();
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
#endif //_EDIRRBOX_HPP_

View File

@@ -0,0 +1,272 @@
// EdIRREd.hpp : header file
//
#ifndef _EDIRRED_HPP_
#define _EDIRRED_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
/////////////////////////////////////////////////////////////////////////////
// class CPA_EdIR_EditCtrl
/////////////////////////////////////////////////////////////////////////////
#include "ITF\CPAMdf.hpp"
#include "edirdbls.hpp"
#include "RichEditCtrlWithLineManagement.hpp"
extern CStringList gm_clKeyWords;
extern CStringList gm_clActionWords;
extern CStringList gm_clConditionWords;
extern CStringList gm_clConstantWords;
extern CStringList gm_clKnownWords;
class CPA_EdIR_EditCtrl : public CRichEditCtrlWithLineManagement
{
// Construction
public:
CPA_EdIR_EditCtrl();
virtual ~CPA_EdIR_EditCtrl();
// Attributes
public:
BOOL mb_CanDefault;
long FindString(BOOL, CString ,CString);
long m_fn_lFindString(BOOL, long,CString);
private:
// CStringList m_clKeyWords;
// CStringList m_clActionWords;
// CStringList m_clConditionWords;
// CStringList m_clConstantWords;
// CStringList m_clKnownWords;
long m_lOldCurrentCharIndex;
long m_lOldScrollPosition;
CString m_csOldSelectedText;
//Stefan Dumitrean 3-07-98 ( Ctrl key )
// BOOL m_bCtrlKeyIsPressed;
//End Stefan Dumitrean 3-07-98 ( Ctrl key )
BOOL m_bShiftKeyIsPressed;
CPA_EditManager m_clEditManager;
BOOL m_bHasBeenModified;
//ROMTEAM Delete (Ionut Grozea 17/03/98)
BOOL m_bSingleChar1;
BOOL m_bSingleChar2;
// BOOL m_bShiftKeyIsPressed;
// CPA_EditManager m_clEditManager;
// BOOL m_bHasBeenModified;
//BEGIN ROMTEAM Cristi Petrescu 98-05-
int m_nID;
CToolTipCtrl m_clToolTip;
CRect m_crRect;
//END ROMTEAM Cristi Petrescu 98-05-
// Operations
public:
void ReplaceInAllBehaviours(CString , CString );
//ROMTEAM Find&Replace (Ionut Grozea 23/03/98)
COLORREF col_last;
BOOL m_bSearchIsFinished;
long m_lFirstSelectIndex;
long m_lLastSelectIndex;
BOOL m_bIsSelectAString;
void m_fnSetSelectAString(BOOL m_bool){m_bIsSelectAString=m_bool;};
BOOL m_fnGetSelectAString(){return m_bIsSelectAString;};
// long m_fn_lFindSting(BOOL ,long ,CString);
void m_fn_ReplaceString(long , CString , CString );
void m_fn_ReplaceAllString(BOOL , long , CString , CString );
void RestoreCol();
void m_fn_vSetText(CString);
CString m_fn_csGetText();
void m_fn_vSetCursorPos(long);
void m_fn_vUpdateColorText(long,long);
BOOL m_fn_bIsInLineCommentedText(long);
BOOL ShowWindow(int);
//for Undo/Redo PressAKey
void m_fn_vAddChar(long,long,UINT);
void m_fn_vDelChar(long,long,UINT);
//for Undo/Redo DeleteString (Delete,Cut and Paste)
void m_fn_vAddString(long,long,CString);
void m_fn_vDelString(long,long,CString);
BOOL m_fn_bHasBeenModified();
void m_fn_vSetModified(BOOL);
long m_fn_lGetLineNumberInPixel(long);
long m_fn_lGetCurrentCharIndex();
CString m_fn_csGetWordIn(long,long &,long &);
//BEGIN ROMTEAM Cristi Petrescu 98-05-
//Stefan Dumitrean 25-06-98
void m_fn_vColorText(long,long,COLORREF rgbColor ,COLORREF rgbBackgroundColor= -1, BOOL bRememberSel = TRUE );
//End Stefan Dumitrean 25-06-98
//END ROMTEAM Cristi Petrescu 98-05-
//Stefan Dumitrean 8-06-98 ( new scroll )
void m_fn_vResizeToFitParent();
CPoint GetScrollPosition();
void ScrollToPosition(CPoint clPoint);
//End Stefan Dumitrean 8-06-98
//Stefan Dumitrean 19-06-98 ( choose font )
void m_fn_vSetFontTypeAndSize( );
//End Stefan Dumitrean 19-06-98 ( choose font )
private:
//Stefan Dumitrean 28-04-98
BOOL m_bParentsSeleIAObj;
void m_fn_vDisplayIAObjectsAndCompleteWordNew( long, long );
CString m_fn_csGetCompletedWordNew( CString csWord );
//End Stefan Dumitrean
//Stefan Dumitrean 3-07-98 ( Ctrl key )
BOOL m_fn_bCtrlKeyIsPressed() { return ( ( GetKeyState(VK_LCONTROL) & 32768 ) || ( GetKeyState(VK_RCONTROL) & 32768 ) ); }
//End Stefan Dumitrean 3-07-98 ( Ctrl key )
//Stefan Dumitrean 15-06-98
BOOL m_bRepaintParent;
CString m_csLastSearched;
//End Stefan Dumitrean 15-06-98
//Stefan Dumitrean 19-06-98 ( choose font )
CString m_csFontType;
int m_nFontSize;
//End Stefan Dumitrean 19-06-98 ( choose font )
//Stefan Dumitrean 10-06-98
void m_fn_vAddBlockTabulation( );
void m_fn_vDeleteBlockTabulation( );
//End Stefan Dumitrean 10-06-98
//Stefan Dumitrean 29-06-98 ( F3 keys )
void m_fn_vFindAndSelTextNext( long lStart, CString csText );
void m_fn_vFindAndSelTextPrevious( long lEnd, CString csText );
//End Stefan Dumitrean 29-06-98 ( F3 keys )
//ANNECY CB
long m_fn_lSkipLeftAlphaNumChar(CString&,long);
long m_fn_lSkipRightAlphaNumChar(CString&,long);
long m_fn_lSkipLeftNonAlphaNumChar(CString&,long);
long m_fn_lSkipRightNonAlphaNumChar(CString&,long);
// long m_fn_lSkipLeftAlphaNumChar(CString,long);
// long m_fn_lSkipRightAlphaNumChar(CString,long);
// long m_fn_lSkipLeftNonAlphaNumChar(CString,long);
// long m_fn_lSkipRightNonAlphaNumChar(CString,long);
//END
CString m_fn_csGetWordBefore(long,long &,long &);
CString m_fn_csGetWordAfter(long,long &,long &);
//ANNECY CB
BOOL m_fn_bIsInTheListString(CString&,CStringList *);
BOOL m_fn_bIsAKnownWord(CString&);
BOOL m_fn_bIsAKeyWord(CString&);
BOOL m_fn_bIsAnActionWord(CString&);
BOOL m_fn_bIsAConditionWord(CString&);
BOOL m_fn_bIsAConstantWord(CString&);
//Stefan Dumitrean 8-07-98 ( macro color )
BOOL m_fn_bIsAMacroWord(CString&);
//End Stefan Dumitrean 8-07-98 ( macro color )
COLORREF m_fn_rgbGetColor(CString&);
// BOOL m_fn_bIsInTheListString(CString,CStringList *);
// BOOL m_fn_bIsAKnownWord(CString);
// BOOL m_fn_bIsAKeyWord(CString);
// BOOL m_fn_bIsAnActionWord(CString);
// BOOL m_fn_bIsAConditionWord(CString);
// BOOL m_fn_bIsAConstantWord(CString);
// COLORREF m_fn_rgbGetColor(CString);
//END
CStringList *m_fn_pclGetListMatchWord(CString,CStringList *);
//ANNECY CB
// void m_fn_vColorText(long,long,COLORREF);
// void m_fn_vColorText(long,long);
//END ANNECY
long m_fn_lGetCurrentCharLine();
long m_fn_lGetCurrentCharCol();
long m_fn_lGetCurrentCharLineLength();
// void m_fn_vUpdateColorText(long,long);
void m_fn_vAddText(long,CString,COLORREF);
void m_fn_vReplaceText(long,long,CString,COLORREF);
CString m_fn_csGetWordInAList(CStringList *);
void m_fn_vAddCondition(long,COLORREF);
void m_fn_vAddAction(long,COLORREF);
void m_fn_vAddDesignerAction(long,COLORREF);
CString m_fn_csGetCompletedWord(CString,CStringList *);
CString m_fn_csGetCompletedWord(CString);
void m_fn_vCompleteWord(long,long);
void m_fn_vDisplayIAObjectsAndCompleteWord(long,long);
//ANNECY CB
BOOL m_fn_bIsInLineCommentedText(CString &,long);
//END
// BOOL m_fn_bIsInLineCommentedText(long);
void m_fn_vProcessLineCommentInsertion(long);
void m_fn_vProcessLineCommentDeletion(long);
long m_fn_lFind(long,char);
long m_fn_lReverseFind(long,char);
long m_fn_lFindCharInLine(long,char);
//Stefan Dumitrean 25-06-98 (new scroll)
void m_fn_vSetCursorPos(long,long, long lScrollPositionH = -1, BOOL bScroll = FALSE);
//End Stefan Dumitrean 25-06-98 (new scroll)
void m_fn_vOnChar(long,UINT);
void m_fn_vOnDelString(long,CString,UINT,BOOL);
void m_fn_vOnAddString(long,CString);
void m_fn_vCopyIntoClipBoard(CString);
CString m_fn_csGetStringFromClipBoard();
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CPA_EdIR_EditCtrl)
public:
virtual BOOL Create( DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID );
//}}AFX_VIRTUAL
//ANNECY CB
public:
// void m_fn_vColorText(long,long,COLORREF);
//BEGIN ROMTEAM Cristi Petrescu 98-05-
void m_fn_vColorLines(int iStartLine, int iNumLines);
void m_fn_vColorText(long,long/*,CPA_EdIR_DebugInfoList * = NULL*/);
void m_fn_vHideNonExecutedLines (CPA_EdIR_DebugInfoList *);
LRESULT WindowProc(UINT message, WPARAM wParam, LPARAM lParam);
//END ROMTEAM Cristi Petrescu 98-05-
CSize m_clFontSize;
long m_lVScrollHeight;
long m_lHScrollWidth;
//END ANNECY
// Generated message map functions
protected:
//{{AFX_MSG(CPA_EdIR_EditCtrl)
afx_msg void OnChar(UINT nChar, UINT nRepCnt, UINT nFlags);
afx_msg void OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags);
afx_msg void OnMouseMove(UINT nFlags, CPoint point);
afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
afx_msg void OnLButtonUp(UINT nFlags, CPoint point);
afx_msg void OnKeyUp(UINT nChar, UINT nRepCnt, UINT nFlags);
afx_msg BOOL OnHelpInfo(HELPINFO* pHelpInfo);
afx_msg void OnLButtonDblClk(UINT nFlags, CPoint point);
afx_msg void OnRButtonDown(UINT nFlags, CPoint point);
afx_msg void OnIrRulesAddwatch();
afx_msg void OnIrRulesFindreplace();
afx_msg void OnIrRulesNext();
afx_msg void OnIrRulesPrevious();
afx_msg void OnIrChangeFont();
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
#endif //_EDIRRED_HPP_

View File

@@ -0,0 +1,39 @@
// EdIRREdA.hpp : header file
//
#ifndef _EDIRREDA_HPP_
#define _EDIRREDA_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
/////////////////////////////////////////////////////////////////////////////
// class CPA_EdIR_UndoPressAKey
/////////////////////////////////////////////////////////////////////////////
#include "ITF\CPAMdf.hpp"
class CPA_EdIR_EditCtrl;
class CPA_EdIR_UndoPressAKey : public CPA_Modif
{
// Construction
public:
CPA_EdIR_UndoPressAKey(CPA_EdIR_EditCtrl *,UINT,long,long,BOOL bBlock=FALSE);
~CPA_EdIR_UndoPressAKey();
// Attributes
private:
CPA_EdIR_EditCtrl *m_pclEditCtrl;
UINT m_nKey;
long m_lIndex;
long m_lScrollPosition;
// Operations
public:
BOOL Do();
BOOL Undo();
};
#endif //_EDIRREDA_HPP_

View File

@@ -0,0 +1,39 @@
// EdIRREdD.hpp : header file
//
#ifndef _EDIRREDD_HPP_
#define _EDIRREDD_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
/////////////////////////////////////////////////////////////////////////////
// class CPA_EdIR_UndoDelete
/////////////////////////////////////////////////////////////////////////////
#include "ITF\CPAMdf.hpp"
class CPA_EdIR_EditCtrl;
class CPA_EdIR_UndoDelete : public CPA_Modif
{
// Construction
public:
CPA_EdIR_UndoDelete(CPA_EdIR_EditCtrl *,CString,long,long,BOOL bBlock=FALSE);
~CPA_EdIR_UndoDelete();
// Attributes
private:
CPA_EdIR_EditCtrl *m_pclEditCtrl;
CString m_csString;
long m_lIndex;
long m_lScrollPosition;
// Operations
public:
BOOL Do();
BOOL Undo();
};
#endif //_EDIRREDD_HPP_

View File

@@ -0,0 +1,39 @@
// EdIRREdP.hpp : header file
//
#ifndef _EDIRREDP_HPP_
#define _EDIRREDP_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
/////////////////////////////////////////////////////////////////////////////
// class CPA_EdIR_UndoPaste
/////////////////////////////////////////////////////////////////////////////
#include "ITF\CPAMdf.hpp"
class CPA_EdIR_EditCtrl;
class CPA_EdIR_UndoPaste : public CPA_Modif
{
// Construction
public:
CPA_EdIR_UndoPaste(CPA_EdIR_EditCtrl *,CString,long,long,BOOL bBlock=FALSE);
~CPA_EdIR_UndoPaste();
// Attributes
private:
CPA_EdIR_EditCtrl *m_pclEditCtrl;
CString m_csString;
long m_lIndex;
long m_lScrollPosition;
// Operations
public:
BOOL Do();
BOOL Undo();
};
#endif //_EDIRREDP_HPP_

View File

@@ -0,0 +1,114 @@
// EdIRRVw.hpp : interface of the CEdIAView class
//
/////////////////////////////////////////////////////////////////////////////
#ifndef _EDIRRVW_HPP_
#define _EDIRRVW_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
#include "EdIRRes.h"
#include "EdIRBkLs.hpp"
#include "edirdbls.hpp"
//Stefan Dumitrean 8-06-98 ( new scroll )
#include "edirred.hpp"
//End Stefan Dumitrean 8-06-98
/////////////////////////////////////////////////////////////////////////////
// class CPA_EdIR_View
/////////////////////////////////////////////////////////////////////////////
class CPA_EdIR_View : public CFormView
{
protected: // create from serialization only
CPA_EdIR_View();
DECLARE_DYNCREATE(CPA_EdIR_View)
public:
//{{AFX_DATA(CPA_EdIR_View)
enum{ IDD = IDD_IR_EDIA_FORM };
// NOTE: the ClassWizard will add data members here
//}}AFX_DATA
// Attributes
private:
CPA_EdIR_BreakPointList *m_pclBreakPointList;
//BEGIN ROMTEAM Cristi Petrescu 98-05-
CPA_EdIR_DebugInfoList *m_pclDebugInfoList;
//END ROMTEAM Cristi Petrescu 98-05-
// BEGIN ROMTEAM Cristi Petrescu 98-08-
public:
long m_lExecutedLine;
private:
// END ROMTEAM Cristi Petrescu 98-08-
//Stefan Dumitrean 8-06-98 ( new scroll )
CPA_EdIR_EditCtrl *m_p_clEditControl;
//End Stefan Dumitrean 8-06-98
//Stefan Dumitrean 19-06-98 ( choose font )
void m_fn_vSaveFontSettings( CString csFileName );
BOOL m_fn_bLoadFontSettings( CString csFileName );
LOGFONT m_stCurrentFont;
int m_nFontSize;
//End Stefan Dumitrean 19-06-98 ( choose font )
public:
BOOL m_bIsReadOnly;
// Operations
public:
BOOL Create(LPCTSTR,LPCTSTR,DWORD,const RECT &,CWnd *,UINT,CCreateContext *pContext=NULL);
void m_fn_vSetReadOnly(BOOL);
void m_fn_vSetBreakPointList(CPA_EdIR_BreakPointList *);
void m_fn_vSetDebugInfoList(CPA_EdIR_DebugInfoList *);
//Stefan Dumitrean 8-06-98 ( new scroll )
void m_fn_vSetEditControl( CPA_EdIR_EditCtrl *p_clEditControl ){ m_p_clEditControl = p_clEditControl; };
//End Stefan Dumitrean 8-06-98
//Stefan Dumitrean 19-06-98 ( choose font )
void m_fn_vChooseFont();
CString m_fn_csGetFontType();
int m_fn_nGetFontSize();
CSize m_fn_clGetFontExtent();
//End Stefan Dumitrean 19-06-98 ( choose font )
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CPA_EdIR_View)
public:
virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
virtual void OnInitialUpdate();
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
//}}AFX_VIRTUAL
afx_msg UINT OnNcHitTest( CPoint );
// Implementation
public:
virtual ~CPA_EdIR_View();
#ifdef _DEBUG
virtual void AssertValid() const;
virtual void Dump(CDumpContext& dc) const;
#endif
protected:
// Generated message map functions
protected:
//{{AFX_MSG(CPA_EdIR_View)
afx_msg BOOL OnHelpInfo(HELPINFO* pHelpInfo);
afx_msg void OnPaint();
afx_msg void OnSize(UINT nType, int cx, int cy);
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
#endif //_EDIRRVW_HPP_

View File

@@ -0,0 +1,70 @@
#if !defined(AFX_PA_EDIR_DIAGREPLACE_H__42E042DB_BE4E_11D1_8787_00A0245D4701__INCLUDED_)
#define AFX_PA_EDIR_DIAGREPLACE_H__42E042DB_BE4E_11D1_8787_00A0245D4701__INCLUDED_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
// PA_EdIR_DiagReplace.h : header file
//
#include "EdIRRes.h"
#include "EdIRRed.hpp"
#include "EdIRBVw.hpp"
#include "edirfrm.hpp"
#include "edirird.hpp"
#include "edirbvw.hpp"
#include "edirbeha.hpp"
#define C_DEFAULTCOLOR RGB(0,0,0)
#define C_COMMENTCOLOR RGB(150,70,150)
/////////////////////////////////////////////////////////////////////////////
// CPA_EdIR_DiagReplace dialog
class CPA_EdIR_EditCtrl;
class CPA_EdIR_DiagReplace : public CDialog
{
// Construction
public:
CPA_EdIR_DiagReplace(CPA_EdIR_EditCtrl *EditCtrl , CWnd* pParent = NULL); // standard constructor
// Dialog Data
//{{AFX_DATA(CPA_EdIR_DiagReplace)
enum { IDD = IDD_DIALOG_FIND_AND_REPLACE };
CComboBox m_replace;
CComboBox m_find;
BOOL m_bCaseSensitive;
BOOL m_bAllAi;
//}}AFX_DATA
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CPA_EdIR_DiagReplace)
public:
virtual BOOL DestroyWindow();
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
//}}AFX_VIRTUAL
// Implementation
protected:
// Generated message map functions
//{{AFX_MSG(CPA_EdIR_DiagReplace)
afx_msg void OnButtonFindNext();
afx_msg void OnButtonReplace();
afx_msg void OnButtonReplaceAll();
virtual BOOL OnInitDialog();
virtual void OnCancel();
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
public :
BOOL fn_ExistFind(CString);
BOOL fn_ExistReplace(CString);
CPA_EdIR_EditCtrl *m_EditCtrl;
BOOL m_bFirst;
CPA_EdIR_DiagView * m_DiagView ;
};
//{{AFX_INSERT_LOCATION}}
// Microsoft Developer Studio will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_PA_EDIR_DIAGREPLACE_H__42E042DB_BE4E_11D1_8787_00A0245D4701__INCLUDED_)

View File

@@ -0,0 +1,130 @@
//{{NO_DEPENDENCIES}}
// Microsoft Developer Studio generated include file.
// Used by EdIR.rc
//
#define IDNOALL 8
#define IDDELETE 9
#define IDDELETEALL 10
#define IDD_IR_EDIA_FORM 101
#define IDD_IR_DIAGRAMME_VIEW 102
#define IDD_IR_ACTIONS_CONDITIONS_BOX 129
#define IDR_IR_MENU_POPUP_DIAGVIEW 134
#define IDD_IR_BUTTONVIEW 135
#define IDD_IR_DESVAR_VIEW 167
#define IDD_IR_PRINT_DIALOG 194
#define IDI_ICON_IR_PRINT 196
#define IDI_ICON_IR_NEW 197
#define IDI_ICON_IR_PROCESS 198
#define IDI_ICON_IR_VIEW_MODE_LIST 199
#define IDI_ICON_IR_IDR_REFLEX 200
#define IDI_ICON_IR_VIEW_MODE_DIAG 201
#define IDI_ICON_IR_IDR_INTEL 202
#define IDI_ICON_IR_IDR_DECL 203
#define IDI_ICON_IR_SAVE_ALL 204
#define IDI_ICON_IR_CHECK 205
#define IDI_ICON_IR_STOP 206
#define IDI_ICON_IR_BREAKPOINT 207
#define IDI_ICON_IR_PROCESS_ALL 208
#define IDI_ICON_IR_CONSTANT 209
#define IDI_ICON_IR_QUICKSAVE 210
#define IDI_ICON_IR_IDR_SUBR 211
#define IDD_IR_CONSTANTS_DIALOG 229
#define IDD_IR_NEW_CONSTANT 230
#define IDI_ICON_IR_ERROR 231
#define IDD_DIALOG_FIND_AND_REPLACE 231
#define IDD_QUICKSAVE 232
#define IDI_ICON_IR_IDR_MACRO 232
#define IDI_ICON_IR_IDR_MACRO1 233
#define IDI_ICON_IR_MARKEXECUTED 233
#define IDD_DIALOG_SELECT_IA_OBJECTS 234
#define IDI_ICON_IR_GENERATE_FASTC 234
#define IDR_IR_MENU_POPUP_RULES 235
#define IDI_ICON_IR_DEBUG 235
#define IDI_ICON_EXECUTED_LINE 238
#define IDI_ICON_IR_U64 239
#define IDI_ICON_IR_ONERULE 240
#define IDI_ICON_IR_MACROTOSUBR_ALL 241
#define IDI_ICON_IR_MACROTOSUBR_ONE 242
#define IDD_IR_BEHAVIOUR_NAME 310
#define IDC_IR_LISTBOX 1000
#define IDC_IR_BUTTON_PROCESS 1000
#define IDC_IR_BUTTON_SAVE_ALL 1001
#define IDC_IR_BUTTON_CHECK 1002
#define IDC_IR_BUTTON_VIEW_MODE 1003
#define IDC_IR_BUTTON_NEW_BEHAVIOUR 1004
#define IDC_IR_BUTTON_PRINT 1005
#define IDC_IR_BUTTON_STOP 1006
#define IDC_IR_BUTTON_PROCESS_ALL 1007
#define IDC_IR_BUTTON_CONSTANT 1008
#define IDC_IR_BUTTON_QUICKSAVE 1009
#define IDC_IR_BUTTON_GENERATE_FASTC 1010
#define IDC_IR_BUTTON_MACROTOSUBR_ALL 1011
#define IDC_IR_BUTTON_MACROTOSUBR_ONE 1012
#define IDD_IR_BEHAVIOUR_LIST 1097
#define IDC_BUTTON_CHANGE_FONT 1116
#define IDC_STATIC_FONT_NAME 1117
#define IDC_BUTTON_PREVIEW 1120
#define IDC_RADIO_ALL_BEHAVIOURS 1124
#define IDC_RADIO_ALL_IA 1125
#define IDC_RADIO_CURRENT_BEHAVIOUR 1126
#define IDC_CHECK_ONE_BEHAVIOUR_ON_PAGE 1127
#define IDC_IR_RADIO_INTEL 1136
#define IDC_IR_RADIO_REFLEX 1139
#define IDC_IR_RADIO_DECL 1140
#define IDC_IR_RADIO_MACRO 1141
#define IDC_IR_RADIO_SUBR 1142
#define IDC_CONSTANT_LIST 1179
#define IDC_BUTTON_NEW_CONSTANT 1180
#define IDC_BUTTON_DELETE_CONSTANT 1181
#define IDC_COMBO_TYPE 1182
#define IDC_BUTTON_CHANGE_CONSTANT 1182
#define IDC_EDIT_CONSTNAME 1183
#define IDC_EDIT_VALUE 1184
#define IDC_BUTTON_FIND_NEXT 1184
#define IDC_CHECK1 1184
#define IDC_BUTTON_REPLACE 1185
#define IDC_CHECK_SHOW_PRIVATE 1185
#define IDC_BUTTON_REPLACE_ALL 1186
#define IDC_CHECK_HIDE_VAR_FOR_MODEL 1186
#define IDC_STATIC1 1187
#define IDC_STATIC2 1188
#define IDC_COMBO_FIND 1189
#define IDC_COMBO_REPLACE 1190
#define IDC_CHECK_CASE_SENSITIVE 1192
#define IDC_BUTTON_REPLACE_ALL_BEHAVIOURS 1194
#define IDC_LIST_TYPES 1196
#define IDC_LIST_PARENTS 1197
#define IDC_LIST_DATA 1198
#define IDC_BUTTON_SHOW_HIDE 1199
#define IDC_CHECK_ALL_AI 1203
#define IDC_IR_BUTTON_DEBUG 1204
#define IDC_IR_BUTTON_U64 1205
#define IDC_IR_BUTTON_ONERULE 1206
#define IDC_EDIT_BEHAVIOUR_NAME 2001
#define ID_IR_DIAGVIEW_ADD_BEHAVIOUR 32771
#define ID_IR_DIAGVIEW_DEL_ALL_BEHAVIOUR 32773
#define ID_IR_BEHAVIOUR_DELETE_BEHAVIOUR 32774
#define ID_IR_LIST_REFRESH 32775
#define ID_IR_BEHAVIOURLIST_ADD_BEHAVIOUR 32786
#define ID_IR_BEHAVIOURLIST_DEL_ALL_BEHAVIOUR 32787
#define ID_IR_BEHAVIOURLIST_DELETE_BEHAVIOUR 32788
#define ID_IR_BEHAVIOURLIST_RENAME_BEHAVIOUR 32789
#define ID_IR_RULES_NEXT 32802
#define ID_IR_RULES_PREVIOUS 32803
#define ID_IR_RULES_FINDREPLACE 32804
#define ID_IR_RULES_ADDWATCH 32807
#define ID_RIGHTBUTTONCLICKMENU_SHOWPARAMETERS_TEST 32808
#define ID_IR_RULES_CHANGEFONT 32809
#define ID_IR_BEHAVIOUR_RENAME_BEHAVIOUR 33005
// Next default values for new objects
//
#ifdef APSTUDIO_INVOKED
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_3D_CONTROLS 1
#define _APS_NEXT_RESOURCE_VALUE 239
#define _APS_NEXT_COMMAND_VALUE 32812
#define _APS_NEXT_CONTROL_VALUE 1205
#define _APS_NEXT_SYMED_VALUE 102
#endif
#endif

View File

@@ -0,0 +1,26 @@
// Microsoft Developer Studio generated Help ID include file.
// Used by EdIR.rc
//
#define HIDC_IR_BUTTON_CHECK 0x808703ea // IDD_IR_BUTTONVIEW
#define HIDC_IR_BUTTON_CONSTANT 0x808703f0 // IDD_IR_BUTTONVIEW
#define HIDC_IR_BUTTON_DEBUG 0x808704b4 // IDD_IR_BUTTONVIEW
#define HIDC_IR_BUTTON_GENERATE_FASTC 0x808703f2 // IDD_IR_BUTTONVIEW
#define HIDC_IR_BUTTON_MACROTOSUBR_ALL 0x808703f3 // IDD_IR_BUTTONVIEW
#define HIDC_IR_BUTTON_MACROTOSUBR_ONE 0x808703f4 // IDD_IR_BUTTONVIEW
#define HIDC_IR_BUTTON_NEW_BEHAVIOUR 0x808703ec // IDD_IR_BUTTONVIEW
#define HIDC_IR_BUTTON_ONERULE 0x808704b6 // IDD_IR_BUTTONVIEW
#define HIDC_IR_BUTTON_PRINT 0x808703ed // IDD_IR_BUTTONVIEW
#define HIDC_IR_BUTTON_PROCESS 0x808703e8 // IDD_IR_BUTTONVIEW
#define HIDC_IR_BUTTON_PROCESS_ALL 0x808703ef // IDD_IR_BUTTONVIEW
#define HIDC_IR_BUTTON_QUICKSAVE 0x808703f1 // IDD_IR_BUTTONVIEW
#define HIDC_IR_BUTTON_SAVE_ALL 0x808703e9 // IDD_IR_BUTTONVIEW
#define HIDC_IR_BUTTON_STOP 0x808703ee // IDD_IR_BUTTONVIEW
#define HIDC_IR_BUTTON_U64 0x808704b5 // IDD_IR_BUTTONVIEW
#define HIDC_IR_BUTTON_VIEW_MODE 0x808703eb // IDD_IR_BUTTONVIEW
#define HID_BUTTONS_ZONE 0x10000000
#define HID_BEHAVIOURS_ZONE 0x10000001
#define HID_RULES_ZONE 0x10000002
#define HID_CONDITIONS 0x10000003
#define HID_OPERATIONS 0x10000004
#define HID_DESIGNER_VARIABLES 0x10000005

View File

@@ -0,0 +1,17 @@
// EdIRSave.hpp : header file
//
#ifndef _EDIRSAVE_HPP_
#define _EDIRSAVE_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
class CPA_Actor;
void EdIR_fn_vSaveInitValuesInBrainMS(CPA_Actor *,struct SCR_tdst_File_Description_ *);
CString EdIR_fn_csGetInitialValue(void *,enum tdeDsgVarTypeId_);
#endif //_EDIRSAVE_HPP_

View File

@@ -0,0 +1,218 @@
// Constant string definitions
////////////////////////////////
#ifndef _EDIRSTRG_HPP_
#define _EDIRSTRG_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
#include "SCR.h"
#include "AI\AIBase\ReadRule.h"
#ifndef M_MAKECHAR
#define M_MAKECHAR(a) ((char *)(LPCTSTR(a)))
#endif //M_MAKECHAR
#define C_VERSION_NUMBER "v4.18.0"
#define C_MODULE_NAME "IA Editor"
#define C_VERSION C_MODULE_NAME" "C_VERSION_NUMBER" "__DATE__
//////////////////////
// Used for Scripts //
//////////////////////
const CString g_c_csBrainName ="EditorBrain";
const CString g_c_csIntelligenceSectionName ="CreateEditorIntelligence";
const CString g_c_csIntelligenceFileExtension =".eru";
/* CHRISTOPHE QUICK SAVE MODIFICATIONS */
const CString g_c_csIntelligenceFileExtensionQS =".tru";
/* END CHRISTOPHE QUICK SAVE MODIFICATIONS */
const CString g_c_csIntelligenceTextFileExtension =".eit";
const CString g_c_csReflexSectionName ="CreateEditorReflex";
const CString g_c_csReflexFileExtension =".erf";
/* CHRISTOPHE QUICK SAVE MODIFICATIONS */
const CString g_c_csReflexFileExtensionQS =".trf";
/* END CHRISTOPHE QUICK SAVE MODIFICATIONS */
const CString g_c_csReflexTextFileExtension =".ert";
const CString g_c_csDeclarationSectionName ="CreateEditorDeclaration";
const CString g_c_csDeclarationFileExtension =".ede";
/* CHRISTOPHE QUICK SAVE MODIFICATIONS */
const CString g_c_csDeclarationFileExtensionQS =".tde";
/* END CHRISTOPHE MODIFICATIONS */
const CString g_c_csDeclarationTextFileExtension =".edt";
// BEGIN CPA2 Cristi Petrescu 98-03-
const CString g_c_csMacroSectionName ="CreateEditorMacro";
const CString g_c_csMacroFileExtension =".emc";
const CString g_c_csMacroTextFileExtension =".emt";
const CString g_c_csMacroFileExtensionQS =".tmc";
// END CPA2 Cristi Petrescu 98-03-
// BEGIN ROMTEAM CPA2 Cristi Petrescu 98-04-
const CString g_c_csSubrSectionName ="CreateEditorSubr";
const CString g_c_csSubrFileExtension =".esb";
const CString g_c_csSubrTextFileExtension =".est";
const CString g_c_csSubrFileExtensionQS =".tsb";
// END ROMTEAM CPA2 Cristi Petrescu 98-04-
const CString g_c_csBehaviourSectionName ="CreateEditorBehaviour";
const CString g_c_csBehaviourLanguage ="Language";
const CString g_c_csBehaviourName ="Name";
const CString g_c_csBehaviourBoundingBox ="BoundingBox";
const CString g_c_csBehaviourText ="Text";
//BEGIN ROMTEAM Cristi Petrescu 98-06-
const CString g_c_csShowPrivateVariable = "ShowPrivate";
//END ROMTEAM Cristi Petrescu 98-06-
//////////////////////////////
// Used for DsgVar Controls //
//////////////////////////////
const CString g_c_csDsgVarInitText =" (Init)";
const CString g_c_csDsgVarSaveTypeText =" (Save Type)";
const CString g_c_csDsgVarInitTypeText =" (Init Type)";
const CString g_c_csDsgVarIndexText ="Index of ";
//////////////////////////////
// Used for Engine Scripts //
//////////////////////////////
const CString g_c_csAISectionName =C_CreateAIModel_String;
const CString g_c_csAIFileExtension =".ai";
const CString g_c_csAIDecSectionName =C_CreateVariableDeclarationAIModel_String;
const CString g_c_csAIDecFileExtension =".dec";
const CString g_c_csAIRulSectionName =C_CreateIntellAIModel_String;
const CString g_c_csAIRulFileExtension =".rul";
const CString g_c_csAIRfxSectionName =C_CreateReflexAIModel_String;
const CString g_c_csAIRfxFileExtension =".rfx";
//BEGIN ROMTEAM Cristi Petrescu 98-04-
const CString g_c_csAISubrSectionName =C_CreateMacroAIModel_String;
const CString g_c_csAISubrFileExtension =".mac";
//END ROMTEAM Cristi Petrescu 98-04-
// Shaitan FastC {
const CString g_c_csAICrrSectionName ="CreateRefAIModel";
const CString g_c_csAINodeSectionName ="CreateRefTree";
const CString g_c_csAICrrFileExtension =".crr";
const CString g_c_csAINodeFileExtension =".nod";
const CString g_c_csAIFastIsC_SectionName ="CFast_IsC";
const CString g_c_csAIFastFId_SectionName ="CFast_FunctionIndex";
//End Shaitan FastC }
const CString g_c_csAIDefineFileName =C_DefineAIFiles;
const CString g_c_csAIDefineSectionName =C_CreateAIDefines_String;
const CString g_c_csAIDefineConstantRef =C_ConstantRefString;
const CString g_c_csAIDefineRealRef =C_RealRefString;
const CString g_c_csRulSectionName =C_CreateIntelligence_String;
const CString g_c_csRfxSectionName =C_CreateIntelligence_String;
const CString g_c_csDecSectionName =C_CreateVariables_String;
const CString g_c_csCarDecSectionName =C_InitVariables_String;
const CString g_c_csCarRulSectionName =C_InitComportIntelligence_String;
const CString g_c_csCarRfxVarSectionName =C_InitComportReflex_String;
//BEGIN ROMTEAM Cristi Petrescu 98-04-
const CString g_c_csEngSubrSectionName =C_CreateListOfMacro_String;
//END ROMTEAM Cristi Petrescu 98-04-
const CString g_c_csBehavSectionName =C_CreateComport_String;
const CString g_c_csDecSaveTypeEntryName =C_TypeSaveVariables_String;
const CString g_c_csDecInitTypeEntryName =C_TypeInitVariables_String;
////////////////////
// Used for Bison //
////////////////////
const CString g_c_csCreateSchedule =C_CreateSchedule_String;
const CString g_c_csCreateRule =C_CreateRule_String;
const CString g_c_csCreateDsgVar =C_CreateVariables_String;
//BEGIN ROMTEAM Cristi Petrescu 98-04-
const CString g_c_csCreateSubr =C_CreateMacro_String;
//END ROMTEAM Cristi Petrescu 98-04-
const CString g_c_csBeginMacro ="BeginMacro";
const CString g_c_csEndMacro ="EndMacro";
const CString g_c_csKeyWord =C_KeyWordString;
const CString g_c_csCondition =C_ConditionString;
const CString g_c_csMetaAction =C_MetaActionString;
const CString g_c_csProcedure =C_ProcedureString;
//BEGIN ROMTEAM Cristi Petrescu 98-04-
const CString g_c_csSubrRef =C_MacroRefString;
//END ROMTEAM Cristi Petrescu 98-04-
const CString g_c_csField =C_FieldString;
const CString g_c_csConstant =C_ConstantString;
const CString g_c_csConstantRef =C_ConstantRefString;
const CString g_c_csOperator =C_OperatorString;
const CString g_c_csFunction =C_FunctionString;
const CString g_c_csDsgVarRef =C_DsgVarRefString;
const CString g_c_csPerso =C_PersoRefString;
const CString g_c_csReal =C_RealString;
const CString g_c_csRealRef =C_RealRefString;
const CString g_c_csZdd ="Zdd";
const CString g_c_csZde ="Zde";
const CString g_c_csZdm ="Zdm";
const CString g_c_csZdr ="Zdr";
const CString g_c_csVector =C_VectorString;
const CString g_c_csVectorConstant =C_ConstantVectorString;
const CString g_c_csAction =C_ActionRefString;
const CString g_c_csState ="State";
const CString g_c_csWayPoint =C_WayPointString;
const CString g_c_csModule =C_ModuleString;
const CString g_c_csDsgVarId =C_DsgVarIdString;
const CString g_c_csKeyButton =C_ButtonString;
const CString g_c_csComport =C_ComportRefString;
const CString g_c_csMaskType =C_MaskString;
const CString g_c_csPower =C_ConstantString;
// Shaitan Clean Env {
//const CString g_c_csSurface =C_SurfaceRefString;
//const CString g_c_csEnvironment =C_EnvironmentRefString;
//End Shaitan Clean Env }
const CString g_c_csSector =C_SectorRefString;
const CString g_c_csSuperObject =C_SuperObjectRefString;
const CString g_c_csLipSynchro =C_LipSynchroRefString;
const CString g_c_csObjectTable =C_ObjectTableRefString;
const CString g_c_csFamily =C_FamilyRefString;
const CString g_c_csModel =C_ModelRefString;
const CString g_c_csSoundEvent =C_SoundEventRefString;
const CString g_c_csString =C_StringString;
const CString g_c_csTextRef =C_TextRefString;
//const CString g_c_csFontRef =C_FontRefString;
const CString g_c_csGameMaterial =C_GameMaterialRefString;
const CString g_c_csLight =C_LightString;
const CString g_c_csCaps =C_CapsString;
const CString g_c_csGraph =C_GraphString;
const CString g_c_csParticleGenerator =C_ParticleGeneratorString;
const CString g_c_csMyRfxBehaviour ="MyReflexBehaviour";
const CString g_c_csMyIABehaviour ="MyIntelligenceBehaviour";
const CString g_c_csRfxBehaviour ="ReflexBehaviour";
const CString g_c_csIABehaviour ="IntelligenceBehaviour";
////////////////////
// Used for Other //
////////////////////
const CString g_c_csDsgVarName ="Variables designer";
const CString g_c_csMacroName ="Macros";
const CString g_c_csReturn ="\xd\xa";
const CString g_c_csInteger ="Integer";
const CString g_c_csDecimal ="Decimal";
const CString g_c_csBoolean ="Boolean";
const CString g_c_csEnum ="Enum";
const CString g_c_csText ="Text";
const CString g_c_csObjectList ="ObjectList";
const CString g_c_csTrue ="True";
const CString g_c_csFalse ="False";
const CString g_c_csInitialIABehaviour ="Initial IA Behaviour";
const CString g_c_csInitialRfxBehaviour ="Initial Reflex Behaviour";
const CString g_c_csCurrentIABehaviour ="Current IA Behaviour";
const CString g_c_csCurrentRfxBehaviour ="Current Reflex Behaviour";
#endif //_EDIRSTRG_HPP_

View File

@@ -0,0 +1,18 @@
// EdIRWaW.hpp : header file
//
#ifndef _EDIRWAW_HPP_
#define _EDIRWAW_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
class CTL_Editor_Data;
void fn_vCallBackForWatchWindow(enum WAW_tdeMessage_,void *);
void fn_vAddValueInWatch(CTL_Editor_Data *);
void fn_vRemoveValueFromWatch(CTL_Editor_Data *);
#endif //_EDIRWAW_HPP_

View File

@@ -0,0 +1,18 @@
// stdafx.h : include file for standard system include files,
// or project specific include files that are used frequently, but
// are changed infrequently
//
#ifndef __STDAAFX_H__
#define __STDAAFX_H__
#define VC_EXTRALEAN // Exclude rarely-used stuff from Windows headers
#include <afxwin.h> // MFC core and standard components
#include <afxext.h> // MFC extensions
#ifndef _AFX_NO_AFXCMN_SUPPORT
#include <afxcmn.h> // MFC support for Windows 95 Common Controls
#endif // _AFX_NO_AFXCMN_SUPPORT
#endif //__STDAAFX_H__

View File

@@ -0,0 +1,91 @@
// ai_intf.hpp : header file
//
#ifndef _AI_INTF_HPP_
#define _AI_INTF_HPP_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
#define DLL_ONLY_ONE_INSTANCE
#include "ACP_Base.h"
#include "ITF.h"
class CPA_EdIR_Frame;
//////////////////////////////////////////////////////////////////
// For Actors IA communication
//////////////////////////////////////////////////////////////////
typedef struct stActorsIACom
{
void *pvThis;
void *pvData;
long lData;
CString csData;
}tdstActorsIACom;
//////////////////////////////////////////////////////////////////
// class CPA_EdIR_Interface
//////////////////////////////////////////////////////////////////
class CPA_EdIR_Interface : public CPA_ToolDLLBase
{
//Attributes
public:
BOOL m_bIsOpened;
BOOL m_bIsSaving;
BOOL m_bIsProcessing;
public:
CPA_EdIR_Frame *m_pclIRMainFrame;
CString m_csBrainHelpFileNameAndPath;
// Operations
public:
// Constructor
CPA_EdIR_Interface();
// ACP Messages Functions overload
void fn_vJustAfterRegistered();
void fn_vConstruct();
void fn_vLevelChanges();
BOOL fn_bAcceptToRunEngine();
BOOL fn_bAcceptToSave();
void fn_vBeforeSaveAll();
void fn_vAfterSaveAll();
void fn_vBeforeEngine();
void fn_vBeforeEditor();
BOOL fn_bOnInvalidateLink(CPA_BaseObject *,CPA_BaseObject *,BOOL);
BOOL fn_bCanActivateEditor(CPA_List<CPA_BaseObject> *);
void fn_vOnActivateEditor(CPA_List<CPA_BaseObject> *,BOOL bBackActivated=FALSE);
BOOL fn_bCanCloseEditor(void);
void fn_vOnCloseEditor(void);
BOOL fn_bDefineSubMenu(EDT_SubMenu *);
void _OnSubMenuCommand(EDT_SubMenu *,UINT);
void m_fn_vShowEditor();
void m_fn_vHideEditor();
// To communicate with ai editor
long OnQueryAction(CPA_EditorBase *,WPARAM,LPARAM);
static SCR_tde_Anl_ReturnValue m_fn_tdeCallBackReloadInitValues(SCR_tdst_File_Description *pfFile, char *szAction, char *szPars[], SCR_tde_Anl_Action eType);
};
/*
*=======================================================================================
* DLL identity structure
*=======================================================================================
*/
#undef extern
extern tdstDLLIdentity g_stAIIdentity;
extern CPA_EdIR_Interface *g_pclAIInterface;
#endif //_AI_INTF_HPP_

View File

@@ -0,0 +1,48 @@
#if !defined(AFX_EDIRCTSL_HPP__F46BCBAF_E3F7_11D1_95CC_00A02416A985__INCLUDED_)
#define AFX_EDIRCTSL_HPP__F46BCBAF_E3F7_11D1_95CC_00A02416A985__INCLUDED_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
// edirctsl.hpp : header file
//
/////////////////////////////////////////////////////////////////////////////
// CPA_EdIR_SelCtrlList window
class CPA_EdIR_SelCtrlList : public CListCtrl
{
// Construction
public:
CPA_EdIR_SelCtrlList();
// Attributes
public:
// Operations
public:
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CPA_EdIR_SelCtrlList)
//}}AFX_VIRTUAL
// Implementation
public:
virtual ~CPA_EdIR_SelCtrlList();
// Generated message map functions
protected:
//{{AFX_MSG(CPA_EdIR_SelCtrlList)
afx_msg void OnKeyUp(UINT nChar, UINT nRepCnt, UINT nFlags);
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
/////////////////////////////////////////////////////////////////////////////
//{{AFX_INSERT_LOCATION}}
// Microsoft Developer Studio will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_EDIRCTSL_HPP__F46BCBAF_E3F7_11D1_95CC_00A02416A985__INCLUDED_)

View File

@@ -0,0 +1,80 @@
#if !defined(AFX_EDIRSELE_HPP__4C2763E5_DDDB_11D1_95C3_00A02416A985__INCLUDED_)
#define AFX_EDIRSELE_HPP__4C2763E5_DDDB_11D1_95C3_00A02416A985__INCLUDED_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
// edirsele.hpp : header file
//
#include "EdIRCtSl.hpp"
/////////////////////////////////////////////////////////////////////////////
// CPA_EdIR_Select_IAObj dialog
class CPA_EdIR_Select_IAObj : public CDialog
{
// Construction
public:
CString m_csRetWord;
BOOL m_bParentsShow;
CPA_EdIR_Select_IAObj(CWnd* pParent = NULL, BOOL bPShow = FALSE, CString csIncomplete = "" ); // standard constructor
~CPA_EdIR_Select_IAObj();
// Dialog Data
//{{AFX_DATA(CPA_EdIR_Select_IAObj)
enum { IDD = IDD_DIALOG_SELECT_IA_OBJECTS };
CPA_EdIR_SelCtrlList m_clCListTypes;
CPA_EdIR_SelCtrlList m_clCListParents;
CPA_EdIR_SelCtrlList m_clCListData;
CButton m_cbCButton;
//}}AFX_DATA
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CPA_EdIR_Select_IAObj)
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
virtual BOOL OnCommand(WPARAM wParam, LPARAM lParam);
//}}AFX_VIRTUAL
// Implementation
protected:
// Generated message map functions
//{{AFX_MSG(CPA_EdIR_Select_IAObj)
afx_msg void OnButtonShowHide();
virtual BOOL OnInitDialog();
afx_msg void OnClickListTypes(NMHDR* pNMHDR, LRESULT* pResult);
afx_msg void OnClickListParents(NMHDR* pNMHDR, LRESULT* pResult);
afx_msg void OnDblclkListData(NMHDR* pNMHDR, LRESULT* pResult);
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
private:
void OnOK();
CString m_csIncompleteWord;
void OnDataSelection();
BOOL m_fn_bTrySelectModelOrFamily();
void m_fn_vRefreshListData( );
void m_fn_vRefreshListParents( );
void OnParentsSelection();
BOOL m_fn_bCheckComplete( CString );
CString m_csCurrentParent;
CString m_csCurrentType;
CString m_csCurrentFamily;
CString m_csCurrentModel;
void OnTypeSelection( );
CStringList * m_pclTypesList;
CStringList * m_pclParentsList;
CStringList * m_pclDataList;
void m_fn_vToggleParents();
CRect m_crCRectData1;
CRect m_crCRectTypes1;
CRect m_crCRectData2;
CRect m_crCRectTypes2;
};
//{{AFX_INSERT_LOCATION}}
// Microsoft Developer Studio will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_EDIRSELE_HPP__4C2763E5_DDDB_11D1_95C3_00A02416A985__INCLUDED_)

View File

@@ -0,0 +1,73 @@
#if !defined(AFX_RICHEDITCTRLWITHLINEMANAGEMENT_H__60A10EEF_EEEE_11D1_BAFF_00A0245476ED__INCLUDED_)
#define AFX_RICHEDITCTRLWITHLINEMANAGEMENT_H__60A10EEF_EEEE_11D1_BAFF_00A0245476ED__INCLUDED_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
// RichEditCtrlWithLineManagement.h : header file
//
#include <afxtempl.h>
/////////////////////////////////////////////////////////////////////////////
// CRichEditCtrlWithLineManagement window
class CRichEditCtrlWithLineManagement : public CRichEditCtrl
{
// Construction
public:
CRichEditCtrlWithLineManagement();
// Attributes
private:
CStringList m_cslHiddenLines;
CList <long, long> m_clHiddenLinesNumbers;
COLORREF m_rgbMarkColor;
CList <CStatic *, CStatic *> m_clMarkWindows;
CList <long, long> m_clMarkedLinesNumbers;
// Operations
public:
// single line
CString m_fn_csGetLine (long);
void m_fn_vDeleteLine (long);
void m_fn_vAddLine (long, CString);
void m_fn_vReplaceLine (long, CString);
void m_fn_vAppendLine (CString);
// multi line
// hides only the required lines
// to show all lines call with an empty list
void m_fn_vHideLines (CList <long, long> &);
//void m_fn_vMarkLines (CList <long, long> &, COLORREF = RGB (0, 0, 0));
// ...
void m_fn_vSetSelLine (long lLineIndex);
long m_fn_lGetSelLine (void);
void m_fn_vMarkLine (long lLineIndex);
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CRichEditCtrlWithLineManagement)
public:
//}}AFX_VIRTUAL
// Implementation
public:
virtual ~CRichEditCtrlWithLineManagement();
// Generated message map functions
protected:
//{{AFX_MSG(CRichEditCtrlWithLineManagement)
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
/////////////////////////////////////////////////////////////////////////////
//{{AFX_INSERT_LOCATION}}
// Microsoft Developer Studio will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_RICHEDITCTRLWITHLINEMANAGEMENT_H__60A10EEF_EEEE_11D1_BAFF_00A0245476ED__INCLUDED_)

View File

@@ -0,0 +1,9 @@
#ifndef __SHOWFLAG_HPP__
#define __SHOWFLAG_HPP__
// Build by Cristi Petrescu
// May 1998
typedef enum {E_MarkExecutedLines, E_ShowTestsAndActions, E_ShowActions} tdeShowFlags;
#endif //__SHOWFLAG_HPP__

View File

@@ -0,0 +1,6 @@
ACT_ProposeAbsoluteSpeed
assiet
DEFINE
ennemi
INT_ChoixCourant
MACRO_AfficheQuoi

View File

@@ -0,0 +1 @@

View File

@@ -0,0 +1,2 @@
subst x: /d
subst t: /d

View File

@@ -0,0 +1,2 @@
subst x: d:\
subst t: c:\

View File

@@ -0,0 +1,786 @@
# Microsoft Developer Studio Project File - Name="TIA" - Package Owner=<4>
# Microsoft Developer Studio Generated Build File, Format Version 5.00
# ** DO NOT EDIT **
# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102
CFG=TIA - Win32 Debug with Editors
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
!MESSAGE use the Export Makefile command and run
!MESSAGE
!MESSAGE NMAKE /f "Tia.mak".
!MESSAGE
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE NMAKE /f "Tia.mak" CFG="TIA - Win32 Debug with Editors"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE "TIA - Win32 Debug with Editors" (based on\
"Win32 (x86) Dynamic-Link Library")
!MESSAGE "TIA - Win32 Debug Glide with Editors" (based on\
"Win32 (x86) Dynamic-Link Library")
!MESSAGE
# Begin Project
# PROP Scc_ProjName ""$/cpa/tempgrp/TIA/Make", USEAAAAA"
# PROP Scc_LocalPath "."
CPP=cl.exe
MTL=midl.exe
RSC=rc.exe
!IF "$(CFG)" == "TIA - Win32 Debug with Editors"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "Debug with Editors"
# PROP BASE Intermediate_Dir "Debug with Editors"
# PROP BASE Target_Dir ""
# PROP Use_MFC 2
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "Tmp\TIAP5Evd"
# PROP Intermediate_Dir "Tmp\TIAP5Evd"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX /FD /c
# ADD CPP /nologo /MD /W3 /Gm /GX /Zi /Od /I "X:\CPA\Public" /I ".\inc" /D "CPA_WANTS_IMPORT" /D "ACTIVE_EDITOR" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "CPA_VISUAL" /D "CPA_DEBUG" /D "_WINDLL" /D "_AFXDLL" /YX /FD /c
# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o NUL /win32
# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /o NUL /win32
# ADD BASE RSC /l 0x40c /d "_DEBUG"
# ADD RSC /l 0x40c /d "_DEBUG" /d "_AFXDLL"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /debug /machine:I386 /pdbtype:sept
# ADD LINK32 X:\CPA\Exe\GAM\GAMP5Evd.lib /nologo /subsystem:windows /dll /pdb:"x:\CPA\EXE\GAMEDT_Data\Tools\TIAP5Evd.pdb" /debug /machine:I386 /out:"X:\CPA\EXE\GAM\EDT_Data\Tools\TIAP5Evd.dll" /pdbtype:sept
# SUBTRACT LINK32 /pdb:none
!ELSEIF "$(CFG)" == "TIA - Win32 Debug Glide with Editors"
# PROP BASE Use_MFC 2
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "Debug Glide with Editors"
# PROP BASE Intermediate_Dir "Debug Glide with Editors"
# PROP BASE Target_Dir ""
# PROP Use_MFC 2
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "x:\cpa\exe\main\edt_data\tools"
# PROP Intermediate_Dir "..\Tmp\TIADFEvd"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /MDd /W3 /Gm /GX /Zi /Od /I "X:\CPA\Public" /D "CPA_WANTS_IMPORT" /D "ACTIVE_EDITOR" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "CPA_VISUAL" /D "CPA_DEBUG" /D "_WINDLL" /D "_AFXDLL" /YX /FD /c
# ADD CPP /nologo /MD /W3 /GX /Z7 /Od /I "..\inc" /I "x:\cpa\TempGrp\Oac\Inc" /I "x:\cpa\TempGrp\Oac\Inc\EdActors" /I "x:\cpa\TempGrp\Oac\Inc\DatCtrl" /I "X:\CPA\Public" /I "X:\CPA\Public\Oac" /I "t:\dxsdk\sdk\inc" /D "CPA_WANTS_IMPORT" /D "ACTIVE_EDITOR" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "CPA_VISUAL" /D "CPA_DEBUG" /D "_WINDLL" /D "_AFXDLL" /D "RAYII" /FR /Yu"stdafx.h" /FD /c
# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o NUL /win32
# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /o NUL /win32
# ADD BASE RSC /l 0x40c /d "_DEBUG" /d "_AFXDLL"
# ADD RSC /l 0x40c /d "_DEBUG" /d "_AFXDLL"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo /o"x:\cpa\tempgrp\tia\tmp\TIA.bsc"
LINK32=link.exe
# ADD BASE LINK32 X:\CPA\Exe\GAM\GAMP5Evd.lib /nologo /subsystem:windows /dll /pdb:"x:\CPA\EXE\GAMEDT_Data\Tools\TIAP5Evd.pdb" /debug /machine:I386 /out:"X:\CPA\EXE\GAM\EDT_Data\Tools\TIAP5Evd.dll" /pdbtype:sept
# SUBTRACT BASE LINK32 /pdb:none
# ADD LINK32 /nologo /subsystem:windows /dll /profile /debug /machine:I386 /nodefaultlib:"msvcrtd.lib" /out:"X:\CPA\EXE\main\EDT_Data\TOOLS\TIADFEvd.dll"
!ENDIF
# Begin Target
# Name "TIA - Win32 Debug with Editors"
# Name "TIA - Win32 Debug Glide with Editors"
# Begin Group "Source Files"
# PROP Default_Filter ""
# Begin Source File
SOURCE=..\Src\ai_dll.def
# End Source File
# Begin Source File
SOURCE=..\Src\ai_intf.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\CFast_1.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\CFast_2.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\CFast_3.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\dllcom.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIR2Eng.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIR_bis.cpp
!IF "$(CFG)" == "TIA - Win32 Debug with Editors"
!ELSEIF "$(CFG)" == "TIA - Win32 Debug Glide with Editors"
# PROP Exclude_From_Build 1
!ENDIF
# End Source File
# Begin Source File
SOURCE=..\Src\EdIR_flx.cpp
!IF "$(CFG)" == "TIA - Win32 Debug with Editors"
!ELSEIF "$(CFG)" == "TIA - Win32 Debug Glide with Editors"
# PROP Exclude_From_Build 1
!ENDIF
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRBeEn.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRBeha.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRBELs.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRBis.cpp
!IF "$(CFG)" == "TIA - Win32 Debug with Editors"
!ELSEIF "$(CFG)" == "TIA - Win32 Debug Glide with Editors"
# SUBTRACT CPP /YX /Yc /Yu
!ENDIF
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRBk.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRBkLs.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRBLB.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRBNam.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRBtVw.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRBVw.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRBVwA.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRBVwD.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRBVwR.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRBVwX.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRCsLs.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRCsNB.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRCst.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRCstB.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRCtl.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\edirctsl.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRDat.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRDbg.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRDbLs.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRDict.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRDV.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRDVLs.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRDVVw.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRFlx.cpp
!IF "$(CFG)" == "TIA - Win32 Debug with Editors"
!ELSEIF "$(CFG)" == "TIA - Win32 Debug Glide with Editors"
# SUBTRACT CPP /YX /Yc /Yu
!ENDIF
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRFrm.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRGlob.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRIAGl.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRIAWd.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRIC.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRICLs.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRIRD.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRLoad.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRMac.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRMacL.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRPrtB.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRPrtF.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRPrtV.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRQuer.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRRBox.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRREd.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRREdA.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRREdD.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRREdP.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRReplce.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRRVw.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRSave.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\edirsele.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\EdIRWaW.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\richeditctrlwithlinemanagement.cpp
# End Source File
# Begin Source File
SOURCE=..\Src\StdAfx.cpp
!IF "$(CFG)" == "TIA - Win32 Debug with Editors"
!ELSEIF "$(CFG)" == "TIA - Win32 Debug Glide with Editors"
# ADD CPP /Yc"stdafx.h"
!ENDIF
# End Source File
# End Group
# Begin Group "Header Files"
# PROP Default_Filter ""
# Begin Source File
SOURCE=..\Inc\ai_intf.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\CFast_1.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\CFast_2.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\CFast_3.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\Defines.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIR2Eng.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRBeEn.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRBeha.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRBELs.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRBis.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRBk.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRBkLs.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRBLB.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRBNam.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRBtVw.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRBVw.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRBVwA.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRBVwD.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRBVwR.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRBVwX.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRCsLs.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRCsNB.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRCst.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRCstB.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRCtl.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\edirctsl.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRDat.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRDbg.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRDbLs.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRDict.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRDV.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRDVLs.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRDVVw.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRFlx.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRFrm.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRGlob.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRIAGl.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRIAWd.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRIC.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRICLs.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRIRD.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRMac.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRMacL.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRPrtB.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRPrtF.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRPrtV.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRQuer.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRRBox.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRREd.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRREdA.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRREdD.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRREdP.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRReplce.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRRes.h
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRRVw.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRSave.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\edirsele.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRStrg.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\EdIRWaW.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\richeditctrlwithlinemanagement.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\showflag.hpp
# End Source File
# Begin Source File
SOURCE=..\Inc\StdAfx.h
# End Source File
# End Group
# Begin Group "libs debug"
# PROP Default_Filter ""
# Begin Source File
SOURCE=..\..\..\Exe\Main\EDT_DATA\CTL___vd.lib
# End Source File
# Begin Source File
SOURCE=X:\Cpa\Exe\Main\MaiDFEvd.lib
# End Source File
# Begin Source File
SOURCE=..\..\..\Exe\Main\EDT_DATA\objects\OAcDFEvd.lib
# End Source File
# Begin Source File
SOURCE=..\..\..\Exe\Main\EDT_DATA\WAW___vd.lib
# End Source File
# End Group
# Begin Group "Resources"
# PROP Default_Filter ""
# Begin Source File
SOURCE=..\Inc\EdIR.rc
!IF "$(CFG)" == "TIA - Win32 Debug with Editors"
!ELSEIF "$(CFG)" == "TIA - Win32 Debug Glide with Editors"
!ENDIF
# End Source File
# Begin Source File
SOURCE=..\Res\icon1.ico
# End Source File
# Begin Source File
SOURCE=..\Res\icon_exe.ico
# End Source File
# Begin Source File
SOURCE=..\Res\icon_ir_.ico
# End Source File
# Begin Source File
SOURCE=..\Res\icoonerule.ico
# End Source File
# Begin Source File
SOURCE=..\Res\irappall.ico
# End Source File
# Begin Source File
SOURCE=..\Res\irapply.ico
# End Source File
# Begin Source File
SOURCE=..\Res\irbreak.ico
# End Source File
# Begin Source File
SOURCE=..\Res\ircheck.ico
# End Source File
# Begin Source File
SOURCE=..\Res\irconst.ico
# End Source File
# Begin Source File
SOURCE=..\Res\irdebug.ico
# End Source File
# Begin Source File
SOURCE=..\Res\irdecl.ico
# End Source File
# Begin Source File
SOURCE=..\Res\irdiag.ico
# End Source File
# Begin Source File
SOURCE=..\Res\irgenfc.ico
# End Source File
# Begin Source File
SOURCE=..\Res\irintel.ico
# End Source File
# Begin Source File
SOURCE=..\Res\irlist.ico
# End Source File
# Begin Source File
SOURCE=..\Res\irmacro.ico
# End Source File
# Begin Source File
SOURCE=..\Res\irMtoS1.ico
# End Source File
# Begin Source File
SOURCE=..\Res\irMtoSA.ico
# End Source File
# Begin Source File
SOURCE=..\Res\irnew.ico
# End Source File
# Begin Source File
SOURCE=..\Res\irprint.ico
# End Source File
# Begin Source File
SOURCE=..\Res\irqsave.ico
# End Source File
# Begin Source File
SOURCE=..\Res\irreflex.ico
# End Source File
# Begin Source File
SOURCE=..\Res\irsave.ico
# End Source File
# Begin Source File
SOURCE=..\Res\irstop.ico
# End Source File
# Begin Source File
SOURCE=..\Res\irU64.ico
# End Source File
# Begin Source File
SOURCE=..\Res\me.ico
# End Source File
# End Group
# End Target
# End Project

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,5 @@
SCC = This is a source code control file
[TIA.vcproj]
SCC_Aux_Path = "P4SCC#srvperforce-ma:1666##raymandata##Editor"
SCC_Project_Name = Perforce Project

Binary file not shown.

After

Width:  |  Height:  |  Size: 766 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 766 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 766 B

View File

@@ -0,0 +1,826 @@
/******************************************************************************
* CFast_1.cpp : passage de l'ia en C, 1<>re passe
* auteur : Fred "Bart" Compagnon
******************************************************************************/
#include "stdafx.h"
#include <malloc.h>
#include "ai.h"
#include "CFast_1.hpp"
extern char CFast_IsAReference(tdstNodeInterpret *_pst_Node, int *pi_Indice);
bool bGoToFatherNode ( tdstNodeInterpret** p_p_stNode ) ;
CFast_tdstComportTree g_stFastTree;
CFast_tdstNode* g_p_stPseudoNode;
unsigned short g_uwNbMetaAction; // Nb de MetaAction
unsigned short g_uwNbStopEngine; // Nb de BloquantMoteur
tdstNodeInterpret* g_p_stIf2Node = NULL;
// init, desinit
#if defined (CFAST_DEBUG_FIRST_PASS)
long g_lNbTotalDeNoeud;
long g_lNbTotalDeNoeudToTest;
FILE *g_fdCru = NULL ;
void CFast_FirstPassOpening() {
g_lNbTotalDeNoeud = 0;
g_lNbTotalDeNoeudToTest = 0;
g_fdCru = fopen ( "CFastRul.log", "w" );
}
long lCFast_FirstPassClosing() {
if ( g_fdCru != NULL ) {
if (g_lNbTotalDeNoeudToTest == g_lNbTotalDeNoeud)
fprintf ( g_fdCru, "\nTaille de l'IA : Nb Noeuds = %d / Taille de l'arbre = %d\n", g_lNbTotalDeNoeud, g_lNbTotalDeNoeud*sizeof(struct tdstNodeInterpret_) );
else
fprintf ( g_fdCru, "\nERREUR : Nb Noeuds dans l'IA (%d) diff<66>rent du Nb de Noeuds g<>n<EFBFBD>r<EFBFBD>s (%d)\n" , g_lNbTotalDeNoeudToTest, g_lNbTotalDeNoeud);
fclose ( g_fdCru ) ;
}
return (g_lNbTotalDeNoeudToTest == g_lNbTotalDeNoeud)?g_lNbTotalDeNoeud:-1;
}
void OriginalNodeDescription(tdstNodeInterpret* p_stOriginalNode)
{
tdeTypeInterpret eType=M_GetTypeInterpret(p_stOriginalNode);
//char sz128Temp[128];
if ( g_fdCru != NULL )
{
if (eType == E_ti_KeyWord)
fprintf ( g_fdCru, "KeyWord : %s", szFindKeyWordEditorNameFromId(M_eKeyWordIdInterpret(p_stOriginalNode)));
else if (eType == E_ti_Condition)
fprintf ( g_fdCru, "Condition : %s", szFindConditionEditorNameFromId(M_eCondIdInterpret(p_stOriginalNode)));
else if (eType == E_ti_Operator)
fprintf ( g_fdCru, "Operator : %s", szFindOperatorEditorNameFromId(M_eOperatorIdInterpret(p_stOriginalNode)));
else if (eType == E_ti_Function)
fprintf ( g_fdCru, "Function : %s", szFindFunctionEditorNameFromId(M_eFuncIdInterpret(p_stOriginalNode)));
else if (eType == E_ti_Procedure)
fprintf ( g_fdCru, "Procedure : %s", szFindProcedureEditorNameFromId(M_eProcedureIdInterpret(p_stOriginalNode)));
else if (eType == E_ti_MetaAction)
fprintf ( g_fdCru, "MetaAction : %s", szFindMetaActionEditorNameFromId(M_eMetaActionIdInterpret(p_stOriginalNode)));
else if (eType == E_ti_Field)
fprintf ( g_fdCru, "Field : %s", szFindFieldEditorNameFromId(M_eFieldIdInterpret(p_stOriginalNode)));
else
switch (eType)
{
case E_ti_DsgVar : fprintf ( g_fdCru, "DsgVar : %d", M_GetSetParam_ulValue(p_stOriginalNode)); break;
case E_ti_DsgVarRef : fprintf ( g_fdCru, "DsgVarRef : %d", M_GetSetParam_ulValue(p_stOriginalNode)); break;
case E_ti_PersoRef : fprintf ( g_fdCru, "PersoRef : %d", M_GetSetParam_ulValue(p_stOriginalNode)); break;
case E_ti_ActionRef : fprintf ( g_fdCru, "ActionRef : %d", M_GetSetParam_ulValue(p_stOriginalNode)); break;
case E_ti_SuperObjectRef : fprintf ( g_fdCru, "SuperObjectRef : %d", M_GetSetParam_ulValue(p_stOriginalNode)); break;
case E_ti_WayPointRef : fprintf ( g_fdCru, "WayPointRef : %d", M_GetSetParam_ulValue(p_stOriginalNode)); break;
case E_ti_ComportRef : fprintf ( g_fdCru, "ComportRef : %d", M_GetSetParam_ulValue(p_stOriginalNode)); break;
case E_ti_ModuleRef : fprintf ( g_fdCru, "ModuleRef : %d", M_GetSetParam_ulValue(p_stOriginalNode)); break;
case E_ti_ObjectTableRef : fprintf ( g_fdCru, "ObjectTableRef : %d", M_GetSetParam_ulValue(p_stOriginalNode)); break;
case E_ti_GameMaterialRef : fprintf ( g_fdCru, "GameMaterialRef : %d", M_GetSetParam_ulValue(p_stOriginalNode)); break;
case E_ti_ModelRef : fprintf ( g_fdCru, "ModelRef : %d", M_GetSetParam_ulValue(p_stOriginalNode)); break;
case E_ti_MacroRef : fprintf ( g_fdCru, "MacroRef : %d", M_GetSetParam_ulValue(p_stOriginalNode)); break;
case E_ti_EndTree : fprintf ( g_fdCru, "EndTree : %d", M_GetSetParam_ulValue(p_stOriginalNode)); break;
case E_ti_Constant : fprintf ( g_fdCru, "Constant : %d", M_GetSetParam_ulValue(p_stOriginalNode)); break;
case E_ti_Real : fprintf ( g_fdCru, "Real : %d", M_GetSetParam_ulValue(p_stOriginalNode)); break;
case E_ti_Vector : fprintf ( g_fdCru, "Vector : %d", M_GetSetParam_ulValue(p_stOriginalNode)); break;
case E_ti_Mask : fprintf ( g_fdCru, "Mask : %d", M_GetSetParam_ulValue(p_stOriginalNode)); break;
case E_ti_Module : fprintf ( g_fdCru, "Module : %d", M_GetSetParam_ulValue(p_stOriginalNode)); break;
case E_ti_Caps : fprintf ( g_fdCru, "Caps : %d", M_GetSetParam_ulValue(p_stOriginalNode)); break;
case E_ti_Graph : fprintf ( g_fdCru, "Graph : %d", M_GetSetParam_ulValue(p_stOriginalNode)); break;
case E_ti_BeginMacro :
//strncpy(sz128Temp, M_GetSetParam_szString(p_stOriginalNode), 100);
//sz128Temp[100] = 0;
//fprintf ( g_fdCru, "BeginMacro : \"%s...\"", sz128Temp);
fprintf ( g_fdCru, "BeginMacro : %d", M_GetSetParam_ulValue(p_stOriginalNode));
break;
case E_ti_EndMacro : fprintf ( g_fdCru, "EndMacro : %d", M_GetSetParam_ulValue(p_stOriginalNode)); break;
default : fprintf ( g_fdCru, "%d : %d", eType, M_GetSetParam_ulValue(p_stOriginalNode)); break;
}
}
}
void AddTabsForDepth(tdstNodeInterpret* p_stOriginalNode)
{
for (int n=0 ; n<p_stOriginalNode->ucDepth ; n++)
fprintf ( g_fdCru, " ");
}
void PseudoNodeDescription(CFast_tdstNode* _p_stPseudoNode)
{
if ( g_fdCru != NULL )
{
AddTabsForDepth(&(_p_stPseudoNode->stNode));
OriginalNodeDescription(&(_p_stPseudoNode->stNode));
if (_p_stPseudoNode->lIndexOfRef == -1)
fprintf ( g_fdCru, " (%d)", _p_stPseudoNode->ucNumberOfParamNeeded);
else
fprintf ( g_fdCru, " [Ref:%d] (%d)", _p_stPseudoNode->lIndexOfRef, _p_stPseudoNode->ucNumberOfParamNeeded);
if (_p_stPseudoNode->ucIndexOfEvalParam != 0)
fprintf ( g_fdCru, " -> %d", _p_stPseudoNode->ucIndexOfEvalParam);
if (_p_stPseudoNode->bAffectWithGetVector )
fprintf ( g_fdCru, " *", _p_stPseudoNode->ucIndexOfEvalParam);
if (_p_stPseudoNode->bIsABooleanDsgVarRef)
fprintf ( g_fdCru, " bool", _p_stPseudoNode->ucIndexOfEvalParam);
if (M_GetTypeInterpret(&(g_p_stPseudoNode->stMiscellaneousNode)) != E_ti_Unknown){
fprintf ( g_fdCru, " => { ");
OriginalNodeDescription(&(_p_stPseudoNode->stMiscellaneousNode));
fprintf ( g_fdCru, " }");
}
if ( _p_stPseudoNode->bIsACondition ) {
fprintf ( g_fdCru, " [condition]" ) ;
}
if ( _p_stPseudoNode->bIsATernOpParam ) {
fprintf ( g_fdCru, "[ternop]" ) ;
}
fprintf ( g_fdCru, "\n");
fflush(g_fdCru);
}
}
#endif //defined (CFAST_DEBUG_FIRST_PASS)
bool bIsTheUltraOperator( tdstNodeInterpret* p_stNode ) {
if ( (M_GetTypeInterpret(p_stNode) == E_ti_Operator) && (M_eOperatorIdInterpret(p_stNode) == eOperator_Ultra) )
return TRUE;
return FALSE;
}
bool bIsTheDotOperator( tdstNodeInterpret* p_stNode ) {
if ( (M_GetTypeInterpret(p_stNode) == E_ti_Operator) &&
(M_eOperatorIdInterpret(p_stNode) == eOperator_Dot) )
return TRUE;
return FALSE;
}
bool bIsTheAffectOperator( tdstNodeInterpret* p_stNode ) {
if ( (M_GetTypeInterpret(p_stNode) == E_ti_Operator) && (M_eOperatorIdInterpret(p_stNode) == eOperator_Affect) )
return TRUE;
return FALSE;
}
bool bIsAnAffectOperator( tdstNodeInterpret* p_stNode ) {
if ( (M_GetTypeInterpret(p_stNode) == E_ti_Operator)
&& ( (M_eOperatorIdInterpret(p_stNode) == eOperator_Affect)
|| (M_eOperatorIdInterpret(p_stNode) == eOperator_PlusAffect)
|| (M_eOperatorIdInterpret(p_stNode) == eOperator_MinusAffect)
|| (M_eOperatorIdInterpret(p_stNode) == eOperator_MulAffect)
|| (M_eOperatorIdInterpret(p_stNode) == eOperator_DivAffect)
|| (M_eOperatorIdInterpret(p_stNode) == eOperator_PlusPlusAffect)
|| (M_eOperatorIdInterpret(p_stNode) == eOperator_MinusMinusAffect)
)
)
return TRUE;
return FALSE;
}
bool bIsAGetVectorOperator( tdstNodeInterpret* p_stNode ) {
if ( (M_GetTypeInterpret(p_stNode) == E_ti_Operator)
&& ( (M_eOperatorIdInterpret(p_stNode) == eOperator_GetVectorX)
|| (M_eOperatorIdInterpret(p_stNode) == eOperator_GetVectorY)
|| (M_eOperatorIdInterpret(p_stNode) == eOperator_GetVectorZ)
)
)
return TRUE;
return FALSE;
}
bool bIsAnIfKeyWord( tdstNodeInterpret* p_stNode ) {
if (M_GetTypeInterpret(p_stNode) != E_ti_KeyWord)
return FALSE;
if ( (M_eKeyWordIdInterpret(p_stNode) == eKeyWord_If)
|| (M_eKeyWordIdInterpret(p_stNode) == eKeyWord_IfNot)
|| (M_eKeyWordIdInterpret(p_stNode) == eKeyWord_If2)
|| (M_eKeyWordIdInterpret(p_stNode) == eKeyWord_If4)
|| (M_eKeyWordIdInterpret(p_stNode) == eKeyWord_If8)
|| (M_eKeyWordIdInterpret(p_stNode) == eKeyWord_If16)
)
return TRUE;
return FALSE;
}
bool bIsTheElseKeyWord( tdstNodeInterpret* p_stNode ) {
if ( (M_GetTypeInterpret(p_stNode) == E_ti_KeyWord) && (M_eKeyWordIdInterpret(p_stNode) == eKeyWord_Else) )
return TRUE;
//jawaka : new keyword sidebug
if ( (M_GetTypeInterpret(p_stNode) == E_ti_KeyWord) && (M_eKeyWordIdInterpret(p_stNode) == eKeyWord_IfDebug) )
return TRUE;
if ( (M_GetTypeInterpret(p_stNode) == E_ti_KeyWord) && (M_eKeyWordIdInterpret(p_stNode) == eKeyWord_IfNotU64) )
return TRUE;
return FALSE;
}
bool bIsTheThenKeyWord( tdstNodeInterpret* p_stNode ) {
if ( (M_GetTypeInterpret(p_stNode) == E_ti_KeyWord) && (M_eKeyWordIdInterpret(p_stNode) == eKeyWord_Then) )
return TRUE;
return FALSE;
}
bool bIsTheEndifKeyWord( tdstNodeInterpret* p_stNode ) {
if ( (M_GetTypeInterpret(p_stNode) == E_ti_KeyWord) && (M_eKeyWordIdInterpret(p_stNode) == eKeyWord_Endif) )
return TRUE;
return FALSE;
}
bool bIsABooleanCondition( tdstNodeInterpret* p_stNode ) {
if (M_GetTypeInterpret(p_stNode) != E_ti_Condition)
return FALSE;
if ( (M_eCondIdInterpret(p_stNode) == eCond_Et)
|| (M_eCondIdInterpret(p_stNode) == eCond_Ou)
|| (M_eCondIdInterpret(p_stNode) == eCond_Not)
|| (M_eCondIdInterpret(p_stNode) == eCond_XOr)
)
return TRUE;
return FALSE;
}
bool bNeedBooleanParam( tdstNodeInterpret* p_stNode ) {
if (bIsAnIfKeyWord(p_stNode))
return TRUE;
if (bIsABooleanCondition(p_stNode))
return TRUE;
/* if ( M_GetTypeInterpret(p_stNode) == E_ti_Function &&
M_eFuncIdInterpret(p_stNode) == eFunc_TernOp )
return TRUE ;*/
return FALSE;
}
bool bIsATernOpFunction (tdstNodeInterpret* p_stNode) {
if ( (M_GetTypeInterpret(p_stNode) == E_ti_Function) &&
( (M_eFuncIdInterpret(p_stNode) == eFunc_TernOp) ||
(M_eFuncIdInterpret(p_stNode) == eFunc_TernSup) ||
(M_eFuncIdInterpret(p_stNode) == eFunc_TernEq) ||
(M_eFuncIdInterpret(p_stNode) == eFunc_TernInfEq) ||
(M_eFuncIdInterpret(p_stNode) == eFunc_TernSupEq) ) )
return TRUE;
return FALSE;
}
bool bCheckForTernOp ( tdstNodeInterpret* p_stNode ) {
tdstNodeInterpret* p_stFatherNode ;
if ( bIsATernOpFunction(p_stNode) )
return (TRUE) ;
p_stFatherNode = p_stNode;
while ( bGoToFatherNode(&p_stFatherNode) ) {
if ( bIsATernOpFunction(p_stFatherNode) )
return ( TRUE ) ;
}
return (FALSE) ;
}
bool bCheckForCondition (tdstNodeInterpret* p_stNode ) {
tdstNodeInterpret* p_stFatherNode ;
if ( M_GetTypeInterpret(p_stNode) == E_ti_Condition ){
p_stFatherNode = p_stNode;
bGoToFatherNode(&p_stFatherNode) ;
if ( bIsTheUltraOperator(p_stFatherNode) )
bGoToFatherNode(&p_stFatherNode) ;
if ( M_GetTypeInterpret(p_stFatherNode) != E_ti_Condition &&
(!bIsAnIfKeyWord(p_stFatherNode) ) )
return ( TRUE ) ;
}
return (FALSE) ;
}
CFast_tdstComportTree* CFast_FirstPassInitComport ( tdstComport* p_stComport ) {
unsigned short uwNbTotalNode, uwNodesCount;
unsigned char ucRulesCount;
tdstTreeInterpret* p_stCurrentRule;
tdstNodeInterpret* p_stCurrentNode;
if (p_stComport->p_stSchedule != NULL) {
p_stCurrentRule = p_stComport->p_stSchedule;
uwNbTotalNode = p_stCurrentRule->uwNbNode;
for (uwNodesCount = 0, p_stCurrentNode = p_stCurrentRule->p_stNodeInterpret ; uwNodesCount<p_stCurrentRule->uwNbNode ; uwNodesCount++, p_stCurrentNode++)
if (bIsTheElseKeyWord(p_stCurrentNode))
uwNbTotalNode++;
}
else {
uwNbTotalNode = 0;
for (ucRulesCount = 0, p_stCurrentRule = p_stComport->p_stRules ; ucRulesCount<p_stComport->ucNbRules ; ucRulesCount++, p_stCurrentRule++) {
uwNbTotalNode += p_stCurrentRule->uwNbNode;
// to count the number of "Else"
for (uwNodesCount = 0, p_stCurrentNode = p_stCurrentRule->p_stNodeInterpret ; uwNodesCount<p_stCurrentRule->uwNbNode ; uwNodesCount++, p_stCurrentNode++)
if (bIsTheElseKeyWord(p_stCurrentNode))
uwNbTotalNode++;
}
}
g_stFastTree.p_stCFastNode = NULL ;
g_stFastTree.p_stCFastNode = (CFast_tdstNode*)malloc ( uwNbTotalNode * sizeof(struct CFast_tdstNode_) ) ;
g_stFastTree.uwNbNode = uwNbTotalNode;
g_stFastTree.d_cDeclarations = NULL;
#if defined (CFAST_DEBUG_FIRST_PASS)
g_lNbTotalDeNoeudToTest += uwNbTotalNode;
if ( g_fdCru != NULL )
fprintf ( g_fdCru, "\n***** %s *****\n\n", M_GetNameComport(p_stComport));
#endif //defined (CFAST_DEBUG_FIRST_PASS)
return (&g_stFastTree) ;
}
CFast_tdstComportTree* CFast_FirstPassInitSubr ( tdstMacro* p_stMacro )
{
unsigned short uwNbTotalNode , uwNodesCount ;
tdstTreeInterpret *p_stCurrentRule = p_stMacro->p_stInitTree ;
tdstNodeInterpret* p_stCurrentNode;
uwNbTotalNode = p_stCurrentRule->uwNbNode ;
for
(
uwNodesCount = 0, p_stCurrentNode = p_stCurrentRule->p_stNodeInterpret ;
uwNodesCount < p_stCurrentRule->uwNbNode ;
uwNodesCount ++ , p_stCurrentNode ++
)
if ( bIsTheElseKeyWord ( p_stCurrentNode ) )
uwNbTotalNode ++ ;
g_stFastTree.p_stCFastNode = NULL ;
g_stFastTree.p_stCFastNode = ( CFast_tdstNode * ) malloc ( uwNbTotalNode * sizeof(struct CFast_tdstNode_) ) ;
g_stFastTree.uwNbNode = uwNbTotalNode;
g_stFastTree.d_cDeclarations = NULL;
#if defined (CFAST_DEBUG_FIRST_PASS)
g_lNbTotalDeNoeudToTest += uwNbTotalNode;
if ( g_fdCru != NULL )
fprintf ( g_fdCru, "\n***** %s *****\n\n", "Subroutine");
#endif //defined (CFAST_DEBUG_FIRST_PASS)
return (&g_stFastTree) ;
}
void CFast_FirstPassDesinit () {
if (g_stFastTree.p_stCFastNode != NULL) {
CFast_tdstNode* p_stCurrentPseudoNode;
unsigned short uwPseudoNodesCount;
for (uwPseudoNodesCount = 0, p_stCurrentPseudoNode = g_stFastTree.p_stCFastNode ; uwPseudoNodesCount<g_stFastTree.uwNbNode ; uwPseudoNodesCount++, p_stCurrentPseudoNode++) {
if (p_stCurrentPseudoNode->d_cOptimisedNode != NULL)
free(p_stCurrentPseudoNode->d_cOptimisedNode);
}
free (g_stFastTree.p_stCFastNode) ;
}
g_stFastTree.p_stCFastNode = NULL ;
if (g_stFastTree.d_cDeclarations != NULL) {
free(g_stFastTree.d_cDeclarations);
}
#if defined (CFAST_DEBUG_FIRST_PASS)
if ( g_fdCru != NULL )
fprintf ( g_fdCru, "\n############################################################\n\n" );
#endif //defined (CFAST_DEBUG_FIRST_PASS)
}
// nodes manipulation
tdstNodeInterpret* NextNode (tdstNodeInterpret* p_stNode ) {
return (p_stNode + 1);
}
tdstNodeInterpret* PrevNode (tdstNodeInterpret* p_stNode ) {
return (p_stNode - 1);
}
bool bGoToNextParam ( tdstNodeInterpret** p_p_stNode ) {
tdstNodeInterpret* p_stCurrentNode = *p_p_stNode;
unsigned char ucNodeDepth = p_stCurrentNode->ucDepth;
do {
p_stCurrentNode = NextNode(p_stCurrentNode) ; //p_stCurrentNode++;
}
while (p_stCurrentNode->ucDepth > ucNodeDepth);
*p_p_stNode = p_stCurrentNode;
return (p_stCurrentNode->ucDepth == ucNodeDepth) ;
}
bool bGoToPrevParam ( tdstNodeInterpret** p_p_stNode ) {
tdstNodeInterpret* p_stCurrentNode = *p_p_stNode;
unsigned char ucNodeDepth = p_stCurrentNode->ucDepth;
// careful : you must be sure not to be the first node of a tree (no test possible !)
do {
p_stCurrentNode = PrevNode(p_stCurrentNode) ; //p_stCurrentNode--;
}
while (p_stCurrentNode->ucDepth > ucNodeDepth);
*p_p_stNode = p_stCurrentNode;
return (p_stCurrentNode->ucDepth == ucNodeDepth) ;
}
bool bGoToFatherNode ( tdstNodeInterpret** p_p_stNode ) {
tdstNodeInterpret* p_stCurrentNode = *p_p_stNode;
unsigned char ucNodeDepth = p_stCurrentNode->ucDepth;
if (ucNodeDepth == 0)
return FALSE; // no father !
do {
p_stCurrentNode = PrevNode(p_stCurrentNode) ; //p_stCurrentNode--;
}
while (p_stCurrentNode->ucDepth >= ucNodeDepth);
*p_p_stNode = p_stCurrentNode;
return (p_stCurrentNode->ucDepth == ucNodeDepth-1) ;
}
tdstNodeInterpret* p_stNeedInfoWithThisNode(tdstNodeInterpret* p_stFakeOrOriginalNode, tdstNodeInterpret* p_stOriginalNode)
{
tdstNodeInterpret* p_stNodeForInfo;
// case 1 : 1st param of If2
if (g_p_stIf2Node != NULL) {
p_stNodeForInfo = g_p_stIf2Node;
g_p_stIf2Node = NULL;
return p_stNodeForInfo;
}
if (bIsTheEndifKeyWord(p_stFakeOrOriginalNode)) {
// case 2 : Then of If2, without Else
if (bIsTheThenKeyWord(p_stOriginalNode))
{
p_stNodeForInfo = p_stOriginalNode;
if (bGoToNextParam(&p_stNodeForInfo))
{
if (bIsTheElseKeyWord(p_stNodeForInfo))
return NULL; // Then is followed by Else => no info !
}
p_stNodeForInfo = p_stOriginalNode;
if (bGoToPrevParam(&p_stNodeForInfo)) // If
{
if (bIsAnIfKeyWord(p_stNodeForInfo))
return p_stNodeForInfo;
}
}
// case 3 : Else of If2
if (bIsTheElseKeyWord(p_stOriginalNode))
{
p_stNodeForInfo = p_stOriginalNode;
if (bGoToPrevParam(&p_stNodeForInfo)) // Then
{
if (bGoToPrevParam(&p_stNodeForInfo)) // If
{
if (bIsAnIfKeyWord(p_stNodeForInfo))
return p_stNodeForInfo;
}
}
}
}
// default : No info !
return NULL;
}
// node
BOOL fn_bIsABooleanDsgVarRef(tdstNodeInterpret* p_stOriginalNode) {
if ( M_GetTypeInterpret(p_stOriginalNode) == E_ti_Constant ||
M_GetTypeInterpret(p_stOriginalNode) == E_ti_Real ||
M_GetTypeInterpret(p_stOriginalNode) == E_ti_DsgVarRef ||
M_GetTypeInterpret(p_stOriginalNode) == E_ti_Field ||
( M_GetTypeInterpret(p_stOriginalNode) == E_ti_Operator &&
M_eOperatorIdInterpret(p_stOriginalNode) == eOperator_Dot ) ||
M_GetTypeInterpret(p_stOriginalNode) == E_ti_Function )
{
tdstNodeInterpret* p_stTempNode = p_stOriginalNode;
if (bGoToFatherNode(&p_stTempNode)) {
if ( bNeedBooleanParam(p_stTempNode) ) {
return TRUE;
}
}
}
return FALSE;
}
void CFast_FillOneNode( tdstNodeInterpret* p_stFakeOrOriginalNode, tdstNodeInterpret* p_stOriginalNode, unsigned char _ucIndexOfEvalParam, unsigned char _ucNumberOfParamNeeded, BOOL _bAffectWithGetVector) {
// <20> revoir car certainement plusieurs nodes <20> copier ...
int iIndice;
memcpy(&g_p_stPseudoNode->stNode, p_stFakeOrOriginalNode, sizeof(struct tdstNodeInterpret_) );
tdstNodeInterpret* p_stNodeForInfo = p_stNeedInfoWithThisNode(p_stFakeOrOriginalNode, p_stOriginalNode);
if (p_stNodeForInfo == NULL) {
memset(&g_p_stPseudoNode->stMiscellaneousNode, 0, sizeof(struct tdstNodeInterpret_) );
M_SetTypeInterpret(&(g_p_stPseudoNode->stMiscellaneousNode), E_ti_Unknown);
}
else
memcpy(&g_p_stPseudoNode->stMiscellaneousNode, p_stNodeForInfo, sizeof(struct tdstNodeInterpret_) );
g_p_stPseudoNode->ucIndexOfEvalParam = _ucIndexOfEvalParam;
g_p_stPseudoNode->ucNumberOfParamNeeded = _ucNumberOfParamNeeded;
g_p_stPseudoNode->bAffectWithGetVector = _bAffectWithGetVector;
g_p_stPseudoNode->bIsABooleanDsgVarRef = fn_bIsABooleanDsgVarRef(p_stOriginalNode); // FROM two past two TO two to two
g_p_stPseudoNode->bIsACondition = bCheckForCondition(p_stOriginalNode) ;
g_p_stPseudoNode->bIsATernOpParam = bCheckForTernOp(p_stOriginalNode) ;
g_p_stPseudoNode->d_cOptimisedNode = NULL;
g_p_stPseudoNode->ucNumberOfNodeToSkipAfterOptimisation = 0;
if (CFast_IsAReference(p_stFakeOrOriginalNode, &iIndice)) {
g_p_stPseudoNode->lIndexOfRef = (long)iIndice;
} else {
g_p_stPseudoNode->lIndexOfRef = -1L;
}
#if defined (CFAST_DEBUG_FIRST_PASS)
PseudoNodeDescription(g_p_stPseudoNode);
g_lNbTotalDeNoeud++;
#endif //defined (CFAST_DEBUG_FIRST_PASS)
g_p_stPseudoNode++;
}
// misc tests on nodes
bool bToBeMemorised ( tdstNodeInterpret* p_stNode ) {
if (bIsTheUltraOperator(p_stNode)) // bicose on teste plutot le retour de la fonction ultraable
p_stNode = NextNode(NextNode(p_stNode)); //p_stNode += 2;
switch (M_GetTypeInterpret(p_stNode))
{
case E_ti_DsgVarRef:
if (fn_bIsABooleanDsgVarRef(p_stNode))
return TRUE;
else
return FALSE;
break;
case E_ti_KeyWord:
if (szGetKeyWordTypeOutParamFromId(M_eKeyWordIdInterpret(p_stNode))[0] == 0) // USE_NO_PARAM
return FALSE;
else
return TRUE;
break;
case E_ti_Operator:
if (M_eOperatorIdInterpret(p_stNode) == eOperator_ModelCast)
return FALSE; // a la demande de JMD !
if (szGetOperatorTypeOutParamFromId(M_eOperatorIdInterpret(p_stNode))[0] == 0) // USE_NO_PARAM
return FALSE;
else
return TRUE;
break;
case E_ti_Function:
case E_ti_Condition:
case E_ti_Vector:
return TRUE;
break;
default:
return FALSE;
}
}
bool bToBeEvalued ( tdstNodeInterpret* p_stNode ) {
if (NextNode(p_stNode)->ucDepth > p_stNode->ucDepth) // at least one param (because next node has deeper depth)
return TRUE;
else
return FALSE;
}
bool bIsTheEndingNode( tdstNodeInterpret* p_stNode ) {
if (M_GetTypeInterpret(p_stNode) == E_ti_EndTree)
return TRUE;
return FALSE;
}
// special nodes
tdstNodeInterpret* p_stNode_TreatSpecialNodes(tdstNodeInterpret* p_stOriginalNode, BOOL* p_bSkipFirstParam, BOOL* p_bAffectWithGetVector) {
tdstNodeInterpret* p_stFirstParamNode;
tdstNodeInterpret* p_stFakeNode=NULL;
*p_bSkipFirstParam = FALSE;
*p_bAffectWithGetVector = FALSE;
//MAJ des compteurs
if (M_GetTypeInterpret(p_stOriginalNode) == E_ti_MetaAction)
g_uwNbMetaAction++;
else if ( (M_GetTypeInterpret(p_stOriginalNode) == E_ti_Procedure) && (M_eProcedureIdInterpret(p_stOriginalNode) == eProc_SetActionReturn) )
g_uwNbStopEngine++;
/* special nodes */
if (bIsAnIfKeyWord(p_stOriginalNode))
g_p_stIf2Node = p_stOriginalNode;
// ELSE
if (bIsTheElseKeyWord(p_stOriginalNode)) //eKeyWord_Else
CFast_FillOneNode(p_stOriginalNode, p_stOriginalNode, 0, 0, FALSE);
// ELSE or THEN
if (bIsTheElseKeyWord(p_stOriginalNode) || bIsTheThenKeyWord(p_stOriginalNode))
{
p_stFakeNode = (tdstNodeInterpret*)malloc ( sizeof(struct tdstNodeInterpret_) ) ;
memcpy(p_stFakeNode, p_stOriginalNode, sizeof(struct tdstNodeInterpret_) );
M_eKeyWordIdInterpret(p_stFakeNode) = eKeyWord_Endif; // because "Endif" is the end of an "If" (or an "Else")
}
// AFFECT with .X .Y or .Z
else if ( bIsAnAffectOperator(p_stOriginalNode) )
{
p_stFirstParamNode = NextNode(p_stOriginalNode); // the param to be changed
if ( bIsAGetVectorOperator(p_stFirstParamNode) )
{
if ( bIsTheAffectOperator(p_stOriginalNode) ) // for the real AFFECT operator (:=) it is better to change the node !
{
p_stFakeNode = (tdstNodeInterpret*)malloc ( sizeof(struct tdstNodeInterpret_) ) ;
memcpy(p_stFakeNode, p_stOriginalNode, sizeof(struct tdstNodeInterpret_) );
//M_SetTypeInterpret(p_stFakeNode, E_ti_Operator);
switch (M_eOperatorIdInterpret(p_stFirstParamNode))
{
case eOperator_GetVectorX:
M_eOperatorIdInterpret(p_stFakeNode) = eOperator_SetVectorX;
break;
case eOperator_GetVectorY:
M_eOperatorIdInterpret(p_stFakeNode) = eOperator_SetVectorY;
break;
case eOperator_GetVectorZ:
M_eOperatorIdInterpret(p_stFakeNode) = eOperator_SetVectorZ;
break;
}
*p_bSkipFirstParam = TRUE;
}
else
{
*p_bAffectWithGetVector = TRUE;
}
}
}
if (*p_bSkipFirstParam)
{
g_stFastTree.uwNbNode--;
#if defined (CFAST_DEBUG_FIRST_PASS)
g_lNbTotalDeNoeudToTest--;
#endif //defined (CFAST_DEBUG_FIRST_PASS)
}
if (p_stFakeNode!=NULL)
return p_stFakeNode;
else
return p_stOriginalNode;
}
// main fct (recursive)
void CFast_TreatOneDepthRecursively(tdstNodeInterpret* p_stOriginalNode, unsigned char _ucParamIndex, BOOL _bEvaluatingUltra, BOOL _bGetVectorVariableForAffect) ;
void CFast_TreatOneDepthRecursively(tdstNodeInterpret* p_stOriginalNode, unsigned char _ucParamIndex, BOOL _bEvaluatingUltra, BOOL _bGetVectorVariableForAffect) {
unsigned char ucNumberOfParamNeeded;
tdstNodeInterpret* p_stFakeOrOriginalNode;
tdstNodeInterpret* p_stCurrentParamNode;
tdstNodeInterpret* p_stParamNodeToTreat;
unsigned char ucIndexOfParam;
BOOL bStillOneParamToTreat;
BOOL bShiftNodeForFirstParam=FALSE;
BOOL bAffectWithGetVector=FALSE;
tdstNodeInterpret* p_stUltraNode=NULL; // != NULL if fct w/ Ultra
if ( (!_bEvaluatingUltra) && (bIsTheUltraOperator(p_stOriginalNode)) ) {
p_stUltraNode = p_stOriginalNode;
p_stOriginalNode = NextNode(NextNode(p_stOriginalNode));
}
p_stFakeOrOriginalNode = p_stNode_TreatSpecialNodes(p_stOriginalNode, &bShiftNodeForFirstParam, &bAffectWithGetVector);
ucNumberOfParamNeeded = 0;
//ucIndexOfParam = (_ucParamIndex==0)? 1:_ucParamIndex;
ucIndexOfParam = _ucParamIndex;
if (bToBeEvalued(p_stOriginalNode)) { // it has some params ?
p_stCurrentParamNode = NextNode(p_stOriginalNode) ; // the first param in the list
do {
ucNumberOfParamNeeded++;
if (bShiftNodeForFirstParam) {
p_stParamNodeToTreat = NextNode(p_stCurrentParamNode);
bShiftNodeForFirstParam = FALSE;
}
else
p_stParamNodeToTreat = p_stCurrentParamNode;
if ((!bAffectWithGetVector) && (bToBeMemorised(p_stParamNodeToTreat))) {
CFast_TreatOneDepthRecursively( p_stParamNodeToTreat, ucIndexOfParam+1, FALSE, FALSE);
ucIndexOfParam++;
}
else
CFast_TreatOneDepthRecursively( p_stParamNodeToTreat, 0, FALSE, bAffectWithGetVector);
bAffectWithGetVector = FALSE;
bStillOneParamToTreat = bGoToNextParam(&p_stCurrentParamNode);
} while ( (!_bEvaluatingUltra) && (bStillOneParamToTreat) );
}
if (p_stUltraNode) { // has ULTRA (we add the ULTRA as a new param of the fct)
ucNumberOfParamNeeded++;
CFast_TreatOneDepthRecursively( p_stUltraNode, ucIndexOfParam, TRUE, FALSE); // EvaluatingUltra
}
if ( _bEvaluatingUltra )
CFast_FillOneNode(p_stFakeOrOriginalNode, p_stOriginalNode, 0, ucNumberOfParamNeeded, FALSE);
else
CFast_FillOneNode(p_stFakeOrOriginalNode, p_stOriginalNode, _ucParamIndex, ucNumberOfParamNeeded, _bGetVectorVariableForAffect);
// desallocation <20>ventuelle :
if (p_stFakeOrOriginalNode != p_stOriginalNode)
free (p_stFakeOrOriginalNode);
}
CFast_tdstNode* CFast_FillTreeWithOneRule(CFast_tdstNode* p_stPseudoNode, tdstNodeInterpret* p_stOriginalNode) {
tdstNodeInterpret* p_stCurrentNode = p_stOriginalNode;
g_p_stPseudoNode = p_stPseudoNode;
BOOL bOk = TRUE;
while ( (!bIsTheEndingNode(p_stCurrentNode)) && bOk )
{
CFast_TreatOneDepthRecursively(p_stCurrentNode, bToBeMemorised(p_stCurrentNode)? 1:0, FALSE, FALSE);
bOk = bGoToNextParam(&p_stCurrentNode);
}
if (bIsTheEndingNode(p_stCurrentNode))
CFast_FillOneNode(p_stCurrentNode, p_stCurrentNode, 0 ,0, FALSE);
return (g_p_stPseudoNode);
}
void CFast_FirstPassFillTreeComport ( CFast_tdstComportTree* p_stFastTree, tdstComport* p_stComport ) {
unsigned char ucRulesCount;
tdstTreeInterpret* p_stCurrentRule;
CFast_tdstNode* p_stCurrentPseudoNode;
// init special nodes
g_uwNbMetaAction = 0;
g_uwNbStopEngine = 0;
p_stCurrentPseudoNode = p_stFastTree->p_stCFastNode;
if (p_stComport->p_stSchedule != NULL)
p_stCurrentPseudoNode = CFast_FillTreeWithOneRule(p_stCurrentPseudoNode, (p_stComport->p_stSchedule)->p_stNodeInterpret);
else {
for (ucRulesCount = 0, p_stCurrentRule = p_stComport->p_stRules ; ucRulesCount<p_stComport->ucNbRules ; ucRulesCount++, p_stCurrentRule++) {
#if defined (CFAST_DEBUG_FIRST_PASS)
if ( g_fdCru != NULL ) fprintf ( g_fdCru, "\n* Rule No %d *\n", ucRulesCount);
#endif //defined (CFAST_DEBUG_FIRST_PASS)
p_stCurrentPseudoNode = CFast_FillTreeWithOneRule(p_stCurrentPseudoNode, p_stCurrentRule->p_stNodeInterpret);
}
}
// report special nodes
p_stFastTree->uwNbMetaAction = g_uwNbMetaAction;
p_stFastTree->uwNbStopEngine = g_uwNbStopEngine;
}
void CFast_FirstPassFillTreeSubr ( CFast_tdstComportTree* p_stFastTree, tdstMacro* p_stMacro ) {
CFast_tdstNode* p_stCurrentPseudoNode;
// init special nodes
g_uwNbMetaAction = 0;
g_uwNbStopEngine = 0;
p_stCurrentPseudoNode = p_stFastTree->p_stCFastNode;
p_stCurrentPseudoNode = CFast_FillTreeWithOneRule(p_stCurrentPseudoNode, p_stMacro->p_stInitTree->p_stNodeInterpret ) ;
// report special nodes
p_stFastTree->uwNbMetaAction = g_uwNbMetaAction;
p_stFastTree->uwNbStopEngine = g_uwNbStopEngine;
}

File diff suppressed because it is too large Load Diff

Some files were not shown because too many files have changed in this diff Show More