Aggiunta la gestione dei campi TLoadable

git-svn-id: svn://10.65.10.50/trunk@4383 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
augusto 1997-05-23 14:03:43 +00:00
parent 3fdd1b2259
commit ca93963091

View File

@ -1278,7 +1278,6 @@ void TMask::show(
} }
// @doc EXTERNAL // @doc EXTERNAL
// @mfunc Rimette lo stato di default del campo // @mfunc Rimette lo stato di default del campo
void TMask::show_default( void TMask::show_default(
short fld_id) // @parm Identificatore del campo da risettare (default -1) short fld_id) // @parm Identificatore del campo da risettare (default -1)
@ -1299,8 +1298,8 @@ void TMask::autoload(const TRelation& r)
for (int i = 0; i < max; i++) for (int i = 0; i < max; i++)
{ {
TMask_field& f = fld(i); TMask_field& f = fld(i);
if (f.is_editable()) if (f.is_loadable())
((TEditable_field&)f).autoload(r); ((TLoadable_field&)f).autoload(r);
} }
} }
@ -1311,25 +1310,23 @@ void TMask::autosave(TRelation& r) const
for (int i = 0; i < max; i++) for (int i = 0; i < max; i++)
{ {
TMask_field& f = fld(i); TMask_field& f = fld(i);
if (f.is_editable()) if (f.is_loadable())
{
TEditable_field& e = (TEditable_field&)f;
if (e.field() != NULL)
{ {
TLoadable_field& l = (TLoadable_field&)f;
bool save = f.shown(); bool save = f.shown();
if (!save) if (!save && f.is_editable())
{ {
//in questo modo si autorovinava il contenuto // tenta di effettuare il save dei campi Edit hidden:
//del campo a maschera // salva il nuovo valore solo se il precedente era blank
//e.autoload(r); TEditable_field& e = (TEditable_field&)f;
//save = e.empty(); if (e.field() != NULL) {
TString str; TString str;
str = e.field()->read(r); str = l.field()->read(r);
save = str.empty(); save = str.empty();
} }
if (save)
e.autosave(r);
} }
if (save)
l.autosave(r);
} }
} }
} }