/* EndUser4gl 4GL V2.OA.0 */ /* Copyright Ph Bergougnoux */ #include #include "EndUser4glwin.h" #include "execute.h" extern long EndUser4glLib(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpszCmdLine, int nCmdShow); extern long OPCExecute_CreateVar(long); extern long OPCExecute_CreateProtoVar(long); extern long OPCExecute_Struct(long); extern long OPCExecute_SynWinScreen(long); extern long OPCExecute_SynWinEdit(long); extern long OPCExecute_SynBtree(long); extern long OPCExecute_SynWinStyle(long); extern long OPCExecute_SynWinToolBar(long); extern long OPCExecute_SynWinReBar(long ) ; extern long OPCExecute_SynWinSynGrid(long ); extern long OPCExecute_SynWinButtonBmp(long); extern long OPCExecute_SynWinButtonIcon(long); extern long OPCExecute_SynWinListView(long ) ; extern long OPCExecute_SynWinTreeView(long ) ; extern long OPCExecute_SynWinTabControl(long ) ; extern long OPCExecute_SynWinPicture(long ) ; extern long OPCExecute_SynWinMenu(long); extern long OPCExecute_ExeSynStatusBar(long); extern long OPCExecute_Table(long); extern long OPCExecute_File(long); extern long OPCExecute_Case(long); extern long OPCExecute_Break(long); extern long OPCExecute_ContinueLeave(long); extern long OPCExecute_For(long); extern long OPCExecute_Do(long); extern long OPCExecute_If(long); extern long OPCExecute_Move(long); extern long OPCExecute_While(long); extern long OPCExecute_CalculSimple(long); extern long OPCExecute_Display(long); extern long OPCExecute_ProcFunction(long); extern long OPCExecute_KeyWord1(long); extern long OPCExecute_KeyWord2String(long); extern long OPCExecute_Btree_Interprete(long); extern long OPCExecute_WinIconBmp(long); extern long OPCExecute_WinObjectScreen(long); extern long OPCExecute_WinImage(long ); extern long OPCExecute_WinGrid(long ); extern long OPCExecute_WinColor(long); extern long OPCExecute_WinButton(long); extern long OPCExecute_WinBox(long); extern long OPCExecute_ListView(long); extern long OPCExecute_TreeView(long); extern long OPCExecute_TabControl(long); extern long OPCExecute_Menu(long); extern long OPCExecute_WinFonts(long); extern long OPCExecute_WinDemo(long); extern long OPCExecute_StatusBar(long); extern long OPCExecute_PopFile(long ); extern long OPCExecute_Apiwindow(long ); extern long OPCExecute_Sortin(long); extern long OPCExecute_Select(long); extern long OPCExecute_Merge(long); extern long OPCExecute_Sort(long); extern long OPCExecute_Sortout(long); extern long OPCExecute_Excel(long) ; extern long OPCExecute_Sql(long); extern long OPCExecute_Query(long); extern long OPCExecute_Internet(long ); extern long OPCExecute_Mapi(long ); extern long OPCExecute_DemoEndUser4gl(long OPCcodeExe) ; extern long OPCExecute_HeaderReport(long); extern void OkMsgBox(char *szCaption, char *szFormat, ...); extern int EU_Error_Code_Exe(long); extern int printfEU(const char * , ...) ; extern int STOP(void); BEGIN_OBJECT_MAP(ObjectMap) END_OBJECT_MAP() CComModule _Module; int PASCAL WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpszCmdLine, int nCmdShow) { HRESULT hRes = CoInitialize(NULL); _ASSERTE(SUCCEEDED(hRes)); _Module.Init(NULL, hInstance, NULL); EndUser4glLib(hInstance, hPrevInstance,lpszCmdLine, nCmdShow) ; } extern long OPCExecute_user(long OPCcodeExe) { MSG msg; /* ************** ***************************************** */ /* DEMO ENDUSER4GL COMPILER */ /************** ***************************************** */ if(( OPCcodeExe == 20600) || ( OPCcodeExe == 70000) ) return OPCExecute_DemoEndUser4gl(OPCcodeExe) ; /* ************************************************************************* */ /* Codes execution Analyseur syntaxique************************************* */ /* 1er cycle du pgm */ /* ************************************************************************* */ if(( OPCcodeExe >= 20000) && ( OPCcodeExe <= 20010) ) return OPCExecute_CreateVar(OPCcodeExe) ; else if(( OPCcodeExe >= 20040) && ( OPCcodeExe <= 20045) ) return OPCExecute_CreateProtoVar(OPCcodeExe); else if(( OPCcodeExe >= 20050) && ( OPCcodeExe < 20060) ) return OPCExecute_Struct( OPCcodeExe); else if(( OPCcodeExe >= 20060) && ( OPCcodeExe < 20070) ) return OPCExecute_Table(OPCcodeExe); else if(( OPCcodeExe >= 20070) && ( OPCcodeExe < 20079) ) return OPCExecute_File(OPCcodeExe); else if(( OPCcodeExe >= 20100) && ( OPCcodeExe <= 20120) ) return OPCExecute_SynWinPicture(OPCcodeExe); else if(( OPCcodeExe >= 20121) && ( OPCcodeExe <= 20150) ) return OPCExecute_SynWinListView(OPCcodeExe); else if(( OPCcodeExe >= 20151) && ( OPCcodeExe <= 20170) ) return OPCExecute_SynWinTreeView(OPCcodeExe); else if(( OPCcodeExe >= 20171) && ( OPCcodeExe <= 20200) ) return OPCExecute_SynWinButtonBmp(OPCcodeExe); else if(( OPCcodeExe >= 20201) && ( OPCcodeExe <= 20220) ) return OPCExecute_SynWinReBar(OPCcodeExe); else if(( OPCcodeExe >= 20221) && ( OPCcodeExe <= 20250) ) return OPCExecute_SynWinToolBar(OPCcodeExe); else if(( OPCcodeExe >= 20251) && ( OPCcodeExe <= 20270) ) return OPCExecute_SynWinButtonIcon(OPCcodeExe); else if(( OPCcodeExe >= 20271) && ( OPCcodeExe <= 20299) ) return OPCExecute_SynWinSynGrid(OPCcodeExe); else if(( OPCcodeExe >= 20380) && ( OPCcodeExe <= 20399) ) return OPCExecute_SynWinEdit(OPCcodeExe) ; else if(( OPCcodeExe >= 20400) && ( OPCcodeExe <= 20410) ) return OPCExecute_SynBtree(OPCcodeExe) ; else if(( OPCcodeExe >= 20420) && ( OPCcodeExe < 20450) ) return OPCExecute_SynWinTabControl(OPCcodeExe) ; else if(( OPCcodeExe >= 20450) && ( OPCcodeExe < 20470) ) return OPCExecute_SynWinMenu(OPCcodeExe) ; else if(( OPCcodeExe >= 20470) && ( OPCcodeExe < 20480) ) return OPCExecute_ExeSynStatusBar(OPCcodeExe) ; /* windows */ else if(( OPCcodeExe >= 20500) && ( OPCcodeExe <= 20599) ) return OPCExecute_SynWinScreen(OPCcodeExe) ; else if(( OPCcodeExe >= 21100) && ( OPCcodeExe <= 21200) ) return OPCExecute_SynWinStyle(OPCcodeExe) ; else if( OPCcodeExe == 20999) return 0 ; /* simule la pile lors du cycle syntaxe */ /* ************************************************************************* */ /* Codes execution interpreteur ******************************************** */ /* 2ème cycle du pgm */ /* ************************************************************************* */ else if(( OPCcodeExe >= 180) && ( OPCcodeExe < 194) ) return OPCExecute_Case(OPCcodeExe); else if(( OPCcodeExe == 195) ) return OPCExecute_Break( OPCcodeExe); else if(( OPCcodeExe >= 400) && ( OPCcodeExe <= 410) ) return OPCExecute_ContinueLeave( OPCcodeExe); else if(( OPCcodeExe >= 700) && ( OPCcodeExe <= 760) ) return OPCExecute_For( OPCcodeExe) ; else if(( OPCcodeExe >= 1300) && ( OPCcodeExe <= 1350) ) return OPCExecute_Do( OPCcodeExe) ; else if(( OPCcodeExe >= 200) && ( OPCcodeExe <= 250) ) return OPCExecute_If( OPCcodeExe); else if(( OPCcodeExe >= 150) && ( OPCcodeExe <= 160) ) return OPCExecute_Move( OPCcodeExe); else if(( OPCcodeExe >= 300) && ( OPCcodeExe <= 380) ) return OPCExecute_While( OPCcodeExe); else if(( OPCcodeExe >= 100) && ( OPCcodeExe <= 120) ) return OPCExecute_CalculSimple( OPCcodeExe); else if(( OPCcodeExe >= 4000) && ( OPCcodeExe <= 4050) ) return OPCExecute_Display(OPCcodeExe); else if(( OPCcodeExe >= 8000) && ( OPCcodeExe <= 8050) ) return OPCExecute_ProcFunction(OPCcodeExe); else if(( OPCcodeExe >= 9000) && ( OPCcodeExe <= 9050) ) return OPCExecute_File(OPCcodeExe); else if(( OPCcodeExe >= 10000) && ( OPCcodeExe <= 25000) ) return OPCExecute_KeyWord1( OPCcodeExe); else if(( OPCcodeExe >= 40000) && ( OPCcodeExe <= 40049) ) return OPCExecute_KeyWord2String( OPCcodeExe); else if(( OPCcodeExe >= 40050) && ( OPCcodeExe <= 40070) ) return OPCExecute_Btree_Interprete(OPCcodeExe) ; /************** ***************************************** */ /* WINDOWS */ /************** ***************************************** */ if(( OPCcodeExe >= 50100) && ( OPCcodeExe <= 50130) ) return OPCExecute_WinIconBmp(OPCcodeExe) ; else if(( OPCcodeExe >= 50300) && ( OPCcodeExe <= 50499) ) return OPCExecute_WinObjectScreen(OPCcodeExe) ; else if(( OPCcodeExe >= 50500) && ( OPCcodeExe <= 50599) ) return OPCExecute_WinColor(OPCcodeExe) ; else if(( OPCcodeExe >= 50700) && ( OPCcodeExe <= 50799) ) return OPCExecute_WinButton(OPCcodeExe) ; else if(( OPCcodeExe >= 50800) && ( OPCcodeExe <= 50999) ) OPCExecute_Apiwindow(OPCcodeExe); else if(( OPCcodeExe >= 51000) && ( OPCcodeExe <= 51099) ) return OPCExecute_WinBox(OPCcodeExe) ; else if(( OPCcodeExe >= 51100) && ( OPCcodeExe <= 51199) ) return OPCExecute_ListView(OPCcodeExe) ; else if(( OPCcodeExe >= 51200) && ( OPCcodeExe <= 51299) ) return OPCExecute_TreeView(OPCcodeExe) ; else if(( OPCcodeExe >= 51300) && ( OPCcodeExe <= 51399) ) return OPCExecute_WinFonts(OPCcodeExe) ; else if(( OPCcodeExe >= 51400) && ( OPCcodeExe <= 51499) ) return OPCExecute_TabControl(OPCcodeExe) ; else if(( OPCcodeExe >= 51500) && ( OPCcodeExe <= 51599) ) return OPCExecute_Menu(OPCcodeExe) ; else if(( OPCcodeExe >= 51600) && ( OPCcodeExe <= 51699) ) return OPCExecute_WinGrid(OPCcodeExe); else if(( OPCcodeExe >= 52000) && ( OPCcodeExe <= 52099) ) return OPCExecute_PopFile(OPCcodeExe) ; else if(( OPCcodeExe >= 65000) && ( OPCcodeExe <= 65200) ) return OPCExecute_SynWinStyle(OPCcodeExe) ; else if(( OPCcodeExe >= 68000) && ( OPCcodeExe <= 68199) ) return OPCExecute_StatusBar(OPCcodeExe) ; /* aussi analyseur syntaxique :21100) && ( OPCcodeExe <= 21200 */ /************** ***************************************** */ /* WINDOWS DEMO */ /************** ***************************************** */ else if(( OPCcodeExe >= 55000) && ( OPCcodeExe <= 55499) ) return OPCExecute_WinDemo(OPCcodeExe) ; /************** ***************************************** */ /* SORT */ /************** ***************************************** */ else if(( OPCcodeExe >= 60001) && ( OPCcodeExe <= 60500) ) return OPCExecute_Sortin(OPCcodeExe); else if(( OPCcodeExe > 60500) && ( OPCcodeExe <= 60600) ) return OPCExecute_Select(OPCcodeExe); else if(( OPCcodeExe > 60600) && ( OPCcodeExe <= 60900) ) return OPCExecute_Merge(OPCcodeExe); else if(( OPCcodeExe > 61000) && (OPCcodeExe <= 61500) ) return OPCExecute_Sort(OPCcodeExe); else if( ( OPCcodeExe > 61500) && (OPCcodeExe <= 62000) ) return OPCExecute_Sortout(OPCcodeExe); else if( ( OPCcodeExe >= 63000) && (OPCcodeExe <= 64999) ) return OPCExecute_HeaderReport(OPCcodeExe); /************** ***************************************** */ /* SQL et ODBC et QUERY */ /************** ***************************************** */ else if( ( OPCcodeExe >= 66000) && (OPCcodeExe <= 66999) ) return OPCExecute_Sql(OPCcodeExe); else if( ( OPCcodeExe >= 67000) && (OPCcodeExe <= 67999) ) return OPCExecute_Query(OPCcodeExe); /************** ***************************************** */ /* WINDOWS INTERNET */ /************** ***************************************** */ else if(( OPCcodeExe >= 68200) && ( OPCcodeExe <= 68400) ) return OPCExecute_Internet( OPCcodeExe); /************** ***************************************** */ /* MAPI */ /************** ***************************************** */ else if(( OPCcodeExe >= 69000) && ( OPCcodeExe <= 69299) ) return OPCExecute_Mapi( OPCcodeExe); /************** ***************************************** */ /* EXCEL */ /************** ***************************************** */ else if(( OPCcodeExe >= 69300) && ( OPCcodeExe <= 69400) ) return OPCExecute_Excel( OPCcodeExe); else { EU_Error_Code_Exe(OPCcodeExe) ; return 9999;//EUError;// } }