#include #include #include #include "bs0.h" class TParametri_mask : public TAutomask { protected: virtual bool on_field_event(TOperable_field& o, TField_event e, long jolly); public: TParametri_mask(const char* n) : TAutomask(n) {} }; bool TParametri_mask::on_field_event(TOperable_field& o, TField_event e, long jolly) { if (e == fe_button && o.is_edit()) { TConfig odbc("c:/windows/odbc.ini", "ODBC 32 bit Data Sources"); TAssoc_array& var = odbc.list_variables(); if (!var.empty()) { TArray_sheet dsn(-1, -1, 78, 20, TR("Sorgenti dati ODBC"), HR("Nome@25|Driver@50")); TToken_string row; FOR_EACH_ASSOC_OBJECT(var, obj, key, itm) { row = key; row.add(*(TString*)itm); dsn.add(row); } if (dsn.run() == K_ENTER) o.set(dsn.row(-1).get(0)); } } return true; } class TParametri_ditta : public TConfig_application { TParametri_mask* _pm; protected: virtual TMask* create_mask(const TFilename& fname); virtual TMask* get_mask() { return _pm; } virtual void destroy_mask() { delete _pm; } public: virtual bool check_autorization() const { return false; } virtual const char* get_mask_name() const { return "bs0100a"; } TParametri_ditta() : TConfig_application(CONFIG_DITTA), _pm(NULL) {} }; TMask* TParametri_ditta::create_mask(const TFilename& fname) { if (_pm == NULL) _pm = new TParametri_mask(fname); return _pm; } int bs0100(int argc, char* argv[]) { TParametri_ditta appc; appc.run(argc, argv, TR("Parametri Bee Store")); return 0; }