Possibilita' di settare la maschera dall'esterno
(permette di definire la maschera di una classe derivata dalla TMask) git-svn-id: svn://10.65.10.50/trunk@4222 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
b3848fbeed
commit
00b0f2b8c2
@ -57,6 +57,33 @@ bool Tab_application::protected_record(TRectype& rec)
|
||||
return rec.get_bool(FPC);
|
||||
}
|
||||
|
||||
TString Tab_application::mask_name()
|
||||
{
|
||||
TString16 t(_tabname);
|
||||
|
||||
if (t[0] == '%') t.ltrim(1);
|
||||
TString16 m; m << "batb" << t;
|
||||
return m.upper();
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
TMask * Tab_application::set_mask(TMask * _m)
|
||||
{
|
||||
if (_m!=NULL)
|
||||
{
|
||||
// imposta la maschera come maschera della applicazione
|
||||
if (_msk!=NULL)
|
||||
delete _msk;
|
||||
_msk=_m;
|
||||
} else {
|
||||
// alloca la maschera standard come maschera della applicazione
|
||||
_msk = new TMask((const char *)mask_name()) ;
|
||||
}
|
||||
return _msk;
|
||||
}
|
||||
|
||||
bool Tab_application::user_create()
|
||||
{
|
||||
if (argc() < 3)
|
||||
@ -65,11 +92,9 @@ bool Tab_application::user_create()
|
||||
_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) ;
|
||||
|
||||
|
||||
set_mask();
|
||||
|
||||
const int campi = _msk->fields();
|
||||
for (int i = 0; i < campi; i++)
|
||||
@ -82,13 +107,12 @@ bool Tab_application::user_create()
|
||||
}
|
||||
}
|
||||
|
||||
TFilename rpt("batb"); rpt << t << ".rpt";
|
||||
TFilename rpt(mask_name()); rpt << ".rpt";
|
||||
if (fexist(rpt))
|
||||
enable_menu_item(M_FILE_PRINT);
|
||||
|
||||
const char* title = _msk->get_caption();
|
||||
set_title(title);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
@ -19,7 +19,6 @@
|
||||
class Tab_application : public TRelation_application
|
||||
|
||||
// @author:(INTERNAL) Nicola
|
||||
|
||||
// @access:(INTERNAL) Private Member
|
||||
{
|
||||
// @cmember:(INTERNAL) Maschera corrente dell'applicazione
|
||||
@ -28,9 +27,10 @@ class Tab_application : public TRelation_application
|
||||
TRelation* _rel;
|
||||
// @cmember:(INTERNAL) Nome della tabella da utilizzare
|
||||
TString _tabname;
|
||||
|
||||
|
||||
// @access Protected Member
|
||||
protected:
|
||||
|
||||
// @cmember Richiede se il record corrente e' protetto (non cancellabile)
|
||||
virtual bool protected_record(TRectype& rec);
|
||||
// @cmember Richiede la maschera da usare
|
||||
@ -50,6 +50,12 @@ protected:
|
||||
virtual bool user_destroy() ;
|
||||
// @cmember Chiama il programma di stampa
|
||||
virtual void print();
|
||||
// Nuovi membri:
|
||||
// @cmember Ritorna il nome della maschera associata
|
||||
virtual TString mask_name();
|
||||
// @cmember imposta la maschera (se non indicata, usa le convenzioni di default) ed eventualmente disalloca quella usata in precedenza
|
||||
virtual TMask * set_mask(TMask * mask=NULL);
|
||||
|
||||
|
||||
// @access Public Member
|
||||
public:
|
||||
|
Loading…
x
Reference in New Issue
Block a user