applicat.cpp Aggiornata alla 4.5 la gestione dei 3d controls,
corretto routing di certi E_COMMAND
corretta gestione title di XVT_CONFIG
controls.cpp Intercettati eventi XIE_COLMOVE e XIE_COLSIZE
intrappolato bottone sinistro del mouse e ignorati gli altri
config.cpp Migliorata gestione paragrafi con righe vuote
probabile ottimizzazione del reperimento delle variabili
config.h Tolto un CAZZ di Ferdinando
colors.cpp Creato per gestire scelta colori
colors.h Aggiunta funzione di conversione colori
mask.cpp Gestione popup menu
sheet.cpp Salvataggio colonne
msksheet.cpp Salvataggio colonne e colorazione righe
printer.cpp Migliorato riconoscimento fax e calcolo dimensioni foglio
tabapp.cpp Ora prima creo la relazione e poi la maschera principale
xvtility.cpp Aggiornata la gestione dei controlli 3D di Windows
mask.h Aggiunto metodo per avere il numero della sottomaschera
git-svn-id: svn://10.65.10.50/trunk@3890 c028cbd2-c16b-5b4b-a496-9718f37d4682
103 lines
2.0 KiB
C++
Executable File
103 lines
2.0 KiB
C++
Executable File
#include <execp.h>
|
|
#include <tabapp.h>
|
|
#include <tabutil.h>
|
|
#include <utility.h>
|
|
|
|
// @cmember Costruttore
|
|
Tab_application::Tab_application()
|
|
: _msk(NULL), _rel(NULL)
|
|
{ }
|
|
|
|
// @cmember Distruttore
|
|
Tab_application::~Tab_application()
|
|
{ }
|
|
|
|
// @cmember Indica se la futura <mf Tab_application::get_mask> ritornera' una maschera diversa
|
|
// dalla corrente.
|
|
bool Tab_application::changing_mask(int mode)
|
|
{ return FALSE; }
|
|
|
|
// @cmember Richiede la maschera da usare
|
|
TMask* Tab_application::get_mask(int mode)
|
|
{
|
|
CHECK(_msk, "Null mask");
|
|
return _msk;
|
|
}
|
|
|
|
// @cmember Ritorna la relazione da modificare
|
|
TRelation* Tab_application::get_relation() const
|
|
{
|
|
CHECK(_rel, "Null relation");
|
|
return _rel;
|
|
}
|
|
|
|
void Tab_application::print()
|
|
{
|
|
TString16 cmd;
|
|
cmd << "ba3 -1 " << get_tabname();
|
|
TExternal_app stampa(cmd);
|
|
stampa.run();
|
|
}
|
|
|
|
void Tab_application::init_query_mode(TMask& m)
|
|
{
|
|
m.enable(-GR_MODIFY_PROTECTED);
|
|
m.enable(-GR_RECORD_PROTECTED);
|
|
}
|
|
|
|
void Tab_application::init_modify_mode(TMask& m)
|
|
{
|
|
m.disable(-GR_MODIFY_PROTECTED);
|
|
const bool enable = !(_rel->curr().get_bool(FPC));
|
|
m.enable(-GR_RECORD_PROTECTED,enable);
|
|
}
|
|
|
|
bool Tab_application::protected_record(TRectype& rec)
|
|
{
|
|
return rec.get_bool(FPC);
|
|
}
|
|
|
|
bool Tab_application::user_create()
|
|
{
|
|
if (argc() < 3)
|
|
return FALSE;
|
|
|
|
_tabname = argv(2);
|
|
_tabname.upper();
|
|
_rel = new TRelation(_tabname);
|
|
|
|
TString16 t(_tabname);
|
|
if (t[0] == '%') t.ltrim(1);
|
|
TString16 m; m << "BATB" << t;
|
|
_msk = new TMask(m) ;
|
|
|
|
const int campi = _msk->fields();
|
|
for (int i = 0; i < campi; i++)
|
|
{
|
|
const TMask_field& f = _msk->fld(i);
|
|
if (f.in_group(GR_SEARCH))
|
|
{
|
|
set_search_field(f.dlg());
|
|
break;
|
|
}
|
|
}
|
|
|
|
TFilename rpt("batb"); rpt << t << ".rpt";
|
|
if (fexist(rpt))
|
|
enable_menu_item(M_FILE_PRINT);
|
|
|
|
const char* title = _msk->get_caption();
|
|
set_title(title);
|
|
|
|
return TRUE;
|
|
}
|
|
|
|
bool Tab_application::user_destroy()
|
|
{
|
|
if (_msk) delete _msk;
|
|
if (_rel) delete _rel;
|
|
|
|
return TRUE;
|
|
}
|
|
|