#include #include #include "ca0.h" #include "ca0300a.h" //-----AUTOMASK---------------------------------------------------------------------------------// class TConf_mask : public TAutomask { protected: bool on_field_event(TOperable_field& o, TField_event e, long jolly); public: TConf_mask(const TFilename& f); virtual ~TConf_mask(){}; }; TConf_mask::TConf_mask(const TFilename& f) :TAutomask (f) { } bool TConf_mask::on_field_event(TOperable_field& o, TField_event e, long jolly) { switch (o.dlg()) { case F_LEVEL_1 : if (e == fe_modify || e == fe_init) { TToken_string cod, desc; cod = " "; desc = TR("Nessuno"); if (o.get() == "CDC") { cod.add("CMS"); desc.add(TR("Commessa")); } else { cod.add("CDC"); desc.add(TR("Centro di Costo")); } TList_field& lev2 = (TList_field&)field(F_LEVEL_2); const TString4 laccio = lev2.get(); lev2.replace_items(cod, desc); lev2.set(laccio); } break; case F_FATHER_FASI : if (e == fe_close) { const TString& lev1 = get(F_LEVEL_1); const TString& lev2 = get(F_LEVEL_2); if (lev2.blank()) { if (o.get() != lev1 && o.get() != lev2) return error_box(TR("Livello superiore di fase non valido")); } } default: break; } return TRUE; } //-----CONFIG APPLICATION------------------------------------------------------------------------------------------// class TConf_Analitica : public TConfig_application { TMask* _cm; protected: virtual TMask* create_mask(const TFilename& f); virtual TMask* get_mask(); public: // @cmember Disabilita la verifica del modulo in chiave virtual bool check_autorization() const { return FALSE; } virtual bool preprocess_config (TMask& mask, TConfig& config); virtual bool postprocess_config (TMask& mask, TConfig& config); virtual bool user_create( ); virtual bool user_destroy( ); TConf_Analitica() : TConfig_application( CONFIG_DITTA ), _cm(NULL) { } virtual ~TConf_Analitica( ){ } }; TMask* TConf_Analitica::get_mask() { return _cm; } TMask* TConf_Analitica::create_mask(const TFilename& f) { if (_cm == NULL) _cm = new TConf_mask(f); return _cm; } bool TConf_Analitica::preprocess_config (TMask& mask, TConfig& config) { return TRUE; } bool TConf_Analitica::postprocess_config (TMask& mask, TConfig& config) { return TRUE; } bool TConf_Analitica::user_create( ) { TConfig config(CONFIG_DITTA, "ca"); config.set( "EdMask", "ca0300a", "ca"); return TRUE; } bool TConf_Analitica::user_destroy( ) { if (_cm != NULL) delete _cm; return TRUE; } int ca0300(int argc, char* argv[]) { TConf_Analitica app; app.run(argc, argv, TR("Parametri Contabilita' Analitica")); return 0; }