campo-sirio/ef/ef0700.cpp

105 lines
2.4 KiB
C++
Raw Normal View History

#include <tabapp.h>
#include <tabutil.h>
#include "batbbnp.h"
class TBnp_table_app : public Tab_application
{
protected:
virtual bool user_destroy() ;
virtual bool user_create() ;
virtual void init_query_insert_mode(TMask& m) ;
virtual void init_insert_mode(TMask& m) ;
virtual void init_query_mode (TMask&);
virtual int rewrite(const TMask& m);
virtual void print(void);
static bool stampa_handler(TMask_field& f, KEY k);
public:
TBnp_table_app() {}
virtual ~TBnp_table_app() {}
};
HIDDEN inline TBnp_table_app& app() { return (TBnp_table_app&) main_app();}
void TBnp_table_app::init_query_insert_mode(TMask& m)
{
m.show(F_CODICEABI);
m.show(F_CODICECAB);
m.field(F_CODICEABI).check_type(CHECK_REQUIRED);
m.field(F_CODICECAB).check_type(CHECK_REQUIRED);
m.hide(F_ABI);
m.hide(F_CAB);
m.field(F_ABI).check_type(CHECK_NONE);
m.field(F_CAB).check_type(CHECK_NONE);
}
void TBnp_table_app::init_insert_mode(TMask& m)
{
m.show(F_CODICEABI);
m.show(F_CODICECAB);
m.field(F_CODICEABI).check_type(CHECK_REQUIRED);
m.field(F_CODICECAB).check_type(CHECK_REQUIRED);
m.hide(F_ABI);
m.hide(F_CAB);
m.field(F_ABI).check_type(CHECK_NONE);
m.field(F_CAB).check_type(CHECK_NONE);
}
void TBnp_table_app::init_query_mode(TMask& m)
{
Tab_application::init_query_mode(m);
m.show(F_ABI);
m.show(F_CAB);
m.field(F_ABI).check_type(CHECK_REQUIRED);
m.field(F_CAB).check_type(CHECK_REQUIRED);
m.hide(F_CODICEABI);
m.hide(F_CODICECAB);
m.field(F_CODICEABI).check_type(CHECK_NONE);
m.field(F_CODICECAB).check_type(CHECK_NONE);
}
bool TBnp_table_app::user_create()
{
Tab_application::user_create();
const TString& name = get_tabname();
TMask& mask = *get_mask();
mask.set_handler(B_PRINT, stampa_handler);
return TRUE;
}
bool TBnp_table_app::user_destroy()
{
return Tab_application::user_destroy();
}
int TBnp_table_app::rewrite(const TMask& m)
{
return Tab_application::rewrite(m);
}
void TBnp_table_app::print()
{
Tab_application::print();
}
bool TBnp_table_app::stampa_handler(TMask_field& f, KEY k)
{
TMask &m = f.mask();
if (k == K_SPACE)
{
app().print();
}
return TRUE;
}
int ef0700(int argc, char* argv[])
{
TBnp_table_app a ;
a.run(argc, argv, "Tabella Banche di Presentazione");
return 0;
}