#ifndef __CONFAPP_H #define __CONFAPP_H #ifndef __APPLICAT_H #include #endif #ifndef __CONFIG_H #include #endif #ifndef __MASK_H #include #endif // @doc EXTERNAL // @class TConfig_application | le applicazioni di questo tipo servono a leggere - // scrivere - modificare files di configurazione. // // @base public | TApplication class TConfig_application : public TApplication // @author:(INTERNAL) Villa // // @comm La linea di comando e' // // app [-f filename] [-d] [paragraph, ...] // // dopo

si dara' il nome file che si vuole editare, default e' CONFIG_FILE // definito in config.h. // Se si da'

viene considerato quello relativo alla // ditta corrente, che viene creato copiando il principale se non c'e'. // Quindi si da' la lista dei paragrafi che si vuole editare; se non ne vengono // dati sara' il modulo corrente preso dal nome dell'applicazione. Se si // indicano piu' paragrafi questi vengono assegnati nell'ordine alle voci // di menu (da mettere nell'URL) da 1 in poi. La maschera usata e' la // EditMask specificata nel paragrafo; se non c'e', non accade nulla // Ogni modifica puo' essere controllata e porcessata con la // che agisce come la . // La voce Scelta parametri di rimane come prima. // @access Private Member { // @cmember Array di paragrafi da editare TArray _paragraphs; // @cmember Numero del file di configurazione da modificare int _which_config; // @cmember Ultima voce di menu' selezionata MENU_TAG _last_choice; // @cmember Crea la finestra principale (vedi ) virtual bool create(); // @cmember Rimuove l'applicazione (vedi ) virtual bool destroy(); // @cmember Controlla il menu' (vedi ) virtual bool menu(MENU_TAG); // @cmember Permette di modificare la configurazione del paragrafo

void do_config(int m); // @access Protected Member protected: // @cmember Ritorna TRUE virtual bool user_create() { return TRUE; } // @cmember Ritorna TRUE virtual bool user_destroy() { return TRUE; } // @cmember Viene chiamata prima della e ferma tutto se ritorna FALSE virtual bool preprocess_config (TMask& mask, TConfig& config); // @cmember Viene chiamata dopo la e blocca tutto se ritorna FALSE virtual bool postprocess_config (TMask& mask, TConfig& config); // @cmember Simile alla , ma viene usata // dalla maschera principale. virtual bool postprocess_config_changed (const char* par, const char* var, const char* oldv, const char* newv); // @access Public Member public: // @cmember Costruttore TConfig_application(int which_config = CONFIG_GENERAL) : _which_config(which_config) {} // @cmember Distruttore virtual ~TConfig_application() {} }; #endif