#include #include #include #include #include #include "tc1800a.h" //////////////////////////////////////////////////////////////////////// //MASCHERA //////////////////////////////////////////////////////////////////////// class TZC_ricl_msk : public TAutomask { virtual bool on_field_event(TOperable_field& o, TField_event e, long jolly); public: TZC_ricl_msk() : TAutomask("tc1800a") {} }; bool TZC_ricl_msk::on_field_event(TOperable_field& o, TField_event e, long jolly) { switch (o.dlg()) { case F_CONTO: break; default: break; } return true; } class TZCRiclass_application : public TRelation_application // @author:(INTERNAL) Vari // @access:(INTERNAL) Private Member { // @cmember:(INTERNAL) Maschera corrente dell'applicazione TMask* _msk; // @cmember:(INTERNAL) Relazione corrente dell'applicazione TRelation* _rel; // @cmember:(INTERNAL) valori iniziale dei gruppo conto sottoconto int _gruppo; int _conto; long _sottoconto; // @access Protected Member protected: virtual TMask* get_mask(int mode = MODE_QUERY) { CHECK(_msk, "Null mask"); return _msk; } // @cmember Indica se la futura ritornera' una maschera diversa // dalla corrente. virtual bool changing_mask(int mode) { return false; } // @cmember Ritorna la relazione da modificare virtual TRelation* get_relation() const { CHECK(_rel, "Null relation"); return _rel; } // @cmember Inizializza la maschera per il modo inserimento // @cmember Inizializzazione dei dati dell'utente virtual void init_query_mode(TMask& m) ; // @cmember Inizializza la maschera per il modo ricerca ed inserimento (chiama ) virtual void init_query_insert_mode(TMask& m) ; virtual void init_insert_mode(TMask& m); // @cmember Inizializza la maschera per il modo modifica virtual void init_modify_mode(TMask& m); virtual bool user_create() ; // @cmember Distruzione dei dati dell'utente virtual bool user_destroy() ; // @cmember Chiama il programma di stampa virtual void print(); // @access Public Member public: // @cmember Costruttore TZCRiclass_application() : _msk(NULL), _rel(NULL) { } // @cmember Distruttore virtual ~TZCRiclass_application() {} }; void TZCRiclass_application::print() { TFilename rep("tcscricl.rep"); TString cmd; rep.custom_path(); cmd << "ba8 -4 "<< rep; TExternal_app stampa(cmd); stampa.run(); } void TZCRiclass_application::init_insert_mode(TMask& m) { m.show(-1); m.disable(-1); m.hide(-2); m.disable(-3); } void TZCRiclass_application::init_query_mode(TMask& m) { m.show(-1); m.hide(-2); m.enable(-3); } void TZCRiclass_application::init_query_insert_mode(TMask& m) { m.hide(-1); m.show(-2); m.enable(-3); } void TZCRiclass_application::init_modify_mode(TMask& m) { TRelation_application::init_modify_mode(m); _gruppo = m.get_int(F_GRUPPO); _conto = m.get_int(F_CONTO); _sottoconto = m.get_long(F_SOTTOCONTO); m.show(-1); m.disable(-1); m.hide(-2); m.disable(-3); } bool TZCRiclass_application::user_create() { _rel = new TRelation(LF_RICLPDC); _msk = new TZC_ricl_msk; set_search_field(F_SOTTOCONTO); TFilename rep("tczcricl.rep"); if (rep.custom_path()) enable_menu_item(M_FILE_PRINT); TString title; _msk->get_caption(title); set_title(title); return true; } bool TZCRiclass_application::user_destroy() { if (_msk) delete _msk; if (_rel) delete _rel; return true; } int tc1800(int argc, char **argv) { TZCRiclass_application a; a.run(argc, argv, TR("Riclassificazione piano dei conti Zucchetti")); return 0; }