source: Sophya/trunk/SophyaPI/PIext/piacmd.h@ 2463

Last change on this file since 2463 was 2463, checked in by ansari, 22 years ago

Modification du code de PIACmd : La classe PIACmd herite maintenant de la classe Commander (de SysTools) - Reza 26/11/2003

File size: 2.3 KB
Line 
1// This may look like C code, but it is really -*- C++ -*-
2// Classe interpreteur de commande pour piapp
3// Reza Aout 97 , Juillet,Aout 98
4// LAL-IN2P3/CNRS
5
6#ifndef PIACMD_H_SEEN
7#define PIACMD_H_SEEN
8
9#include "machdefs.h"
10#include "commander.h"
11#include <string>
12#include <vector>
13
14#include "dlftypes.h"
15
16// Forward declaration of some classes ...
17class NamedObjMgr;
18class PIStdImgApp;
19
20class PIAHelpWind; // Fenetre d'aide en ligne
21class CxxExecWind; // Fenetre pour CxxExecutor
22class CxxOptionWind; // Option de CxxExecutor
23
24// ---------------------------------------------------------------------
25// Classe Interpreteur de commande, gestionnaire de module chargeable,
26// et de fonctions dynamiquement linke pour PIStdImgApp
27// Permet de gerer plusieurs Interpreter differents
28// ---------------------------------------------------------------------
29
30
31class PIACmd : public Commander {
32public:
33 // static PIACmd* GetInterpreter();
34
35 PIACmd(NamedObjMgr* omg, PIStdImgApp* app);
36 virtual ~PIACmd();
37
38
39 virtual int ExecuteCommandLine(string & kw, vector<string> & tokens,
40 string & toks);
41 void ShowHelpWindow();
42 void ShowCxxOptionWindow();
43 void ShowCxxExecWindow();
44
45 // inline CmdInterpreter* CurrentInterpreter() { return(curcmdi); }
46
47 inline CmdExecutor* BaseExecutor() { return(basexec); }
48 inline CmdExecutor* ContExecutor() { return(cntexec); } //_OP_
49 inline PIStdImgApp* GetImgApp() { return(mImgApp); }
50
51// Pour utilisation par PIAHelpWind uniquement
52 virtual void UpdateHelpList(PIAHelpWind* hw, int gid);
53
54protected:
55 virtual int CheckHelpGrp(string& grp);
56
57 virtual void SetCurrentPrompt(const char* pr);
58 virtual void ShowMessage(const char * msg, int att);
59
60 NamedObjMgr* mObjMgr;
61 PIStdImgApp* mImgApp;
62
63 CmdExecutor* basexec; // basic command executor
64 CmdExecutor* fitexec; // Fit command executor
65 CmdExecutor* pawexec; // paw-like command executor
66 CmdExecutor* cxxexec; // on-line c++ compile/execution command executor
67
68 CmdExecutor *cntexec; // contour executor _OP_
69 CmdExecutor *flwexec; // flow chart executor _OP_
70
71// Fenetre d'aide interactive
72 PIAHelpWind* helpwin;
73 CxxExecWind* cxxexwin;
74 CxxOptionWind* cxxoptwin;
75};
76
77
78
79#endif
Note: See TracBrowser for help on using the repository browser.