#include #include "lv4.h" #include "lvcg.h" class TCOGECO_multirel_app : public TMultirel_application { bool _use_tab; protected: virtual void set_descr(TMask & m, const TString & desc); virtual void get_mask_name(TString& tabname) const; //magico metodo per impedire la navigazione su tabelle diverse da quella corrente del cursore virtual bool has_filtered_cursor() const { return true; } virtual void init_query_mode(TMask& m); virtual void init_query_insert_mode(TMask& m); virtual void init_modify_mode(TMask& m); virtual void init_insert_mode(TMask& m); virtual bool user_create(); public: TCOGECO_multirel_app() : _use_tab(true) {} virtual ~TCOGECO_multirel_app() {} }; void TCOGECO_multirel_app::set_descr(TMask & m, const TString & desc) { m.set(F_DESC, desc); } void TCOGECO_multirel_app::get_mask_name(TString& tabname) const { TMultirel_application::get_mask_name(tabname); tabname.overwrite("cg", 2); } void TCOGECO_multirel_app::init_query_mode(TMask& m) { TMultirel_application::init_query_mode(m); m.show(-1); m.hide(-2); m.enable(-3, _use_tab); } void TCOGECO_multirel_app::init_query_insert_mode(TMask& m) { TMultirel_application::init_query_insert_mode(m); m.show(-1, !_use_tab); m.show(-2, _use_tab); m.enable(-3, _use_tab); } void TCOGECO_multirel_app::init_modify_mode(TMask& m) { TMultirel_application::init_modify_mode(m); m.show(-1); m.disable(-1); m.hide(-2); m.disable(-3); } void TCOGECO_multirel_app::init_insert_mode(TMask& m) { TMultirel_application::init_insert_mode(m); m.show(-1); m.disable(-1); m.hide(-2); m.disable(-3); } bool TCOGECO_multirel_app::user_create() { bool ok = TMultirel_application::user_create(); if (ok) { TConfig config(CONFIG_DITTA); TMask & m = *get_mask(); set_search_field(F_CODTAB); } return ok; } int lv4700(int argc, char* argv[]) { TCOGECO_multirel_app a; a.run(argc, argv, TR("Tabella")); return 0; }