#ifndef __EXECP_H #define __EXECP_H #ifndef __STRINGS_H #include #endif // Nome segreto per la finestra che deve ospitare un programma #define __MAGIC_CAPTION__ "__CAMPO_HOST_WINDOW__" // @doc EXTERNAL // @class TExternal_app | Classe per l'esecuzione di oggetti esterni // // @base public | TObject class TExternal_app : public TObject // @author:(INTERNAL) Villa // @comm Gli oggetti della presente classe possono essere eseguiti // in background in tutti gli ambienti, oppure in modo sincrono. // @access:(INTERNAL) Private Member { // @cmember:(INTERNAL) Nome dell'applicazione (deve essere allocata dall'utente) TFilename _path; // @cmember:(INTERNAL) Ultimo exit code int _exitcode; protected: void copy(const TExternal_app& a) { _path = a._path; _exitcode = 0; } // @access Public Member public: // @cmember Controlla se l'utente puo' eseguire il programma bool can_run() const; // @cmember Esegue il processo long run(bool async = FALSE, byte user = TRUE, bool iconizetask = true); // @cmember Ritorna l'ultimo codice di uscita int exitcode() const { return _exitcode; } const TExternal_app& operator = (const TExternal_app& a) { copy(a); return a; } // @cmember Costruttore TExternal_app(const char* p); TExternal_app(const TExternal_app& a) { copy(a); } virtual ~TExternal_app() { } }; #endif