// gestione tabelle cooperative #include #include #include #include "cotbcoa.h" class TMask_tabco : public TAutomask { protected: bool on_field_event(TOperable_field& o, TField_event e, long jolly); public: TMask_tabco(const char* name); virtual ~TMask_tabco(); }; TMask_tabco::TMask_tabco(const char* name) : TAutomask(name) { } TMask_tabco::~TMask_tabco() { } bool TMask_tabco::on_field_event(TOperable_field& o, TField_event e, long jolly) { return true; } class TTab_app_co : public Tab_application { protected: // TRelation_application virtual bool user_destroy() ; virtual bool user_create() ; virtual int rewrite(const TMask& m); virtual TString& get_mask_name(TString& name) const; virtual TMask* set_mask(TMask * m=NULL); public: TTab_app_co(); }; HIDDEN inline TTab_app_co& app() { return (TTab_app_co&)main_app(); } // costruttore TTab_app_co::TTab_app_co() {} TString& TTab_app_co::get_mask_name(TString& name) const { name = get_tabname(); if (name[0] == '%') name = name.mid(1); name.insert("cotb", 0); return name; } TMask* TTab_app_co::set_mask(TMask* m) { if (m == NULL) { TFilename name; get_mask_name(name); m = new TMask_tabco(name); if (get_tabname() == "%COA") set_search_field(F_CODARTMER); } return TTable_application::set_mask(m); } bool TTab_app_co::user_create() { bool ok = Tab_application::user_create(); if (ok) { TMask& mask = *set_mask(); } return ok; } bool TTab_app_co::user_destroy() { return Tab_application::user_destroy(); } int TTab_app_co::rewrite(const TMask& m) { return Tab_application::rewrite(m); } int co0100(int argc, char* argv[]) { TTab_app_co a; a.run(argc, argv, TR("Tabella")); return 0; }