Correzzioni varie a Gestione tracciati

git-svn-id: svn://10.65.10.50/trunk@1625 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
alex 1995-07-20 13:38:46 +00:00
parent 3de042b53a
commit 43b3d42d58
3 changed files with 44 additions and 2 deletions

View File

@ -837,7 +837,7 @@ bool TManutenzione_app::menu(MENU_TAG m)
riga_selezionata = _browse->selected();
riga = _browse->row();
insert_riga (riga_selezionata, riga);
break;
break;
case K_ENTER:
riga_selezionata = _browse->selected();

View File

@ -56,6 +56,7 @@ class TRec_sheet : public TObject
protected:
bool check_key_expr(int key, const char* key_expr);
static bool key_notify(int r, KEY k);
static bool fld_notify(int r, KEY k);
void save();
virtual long items() const { return _rec->fields(); }

View File

@ -69,7 +69,9 @@ bool TDir_sheet::on_key(KEY key)
case 'E':
key = K_DEL; break;
case 'I':
key = K_INS; break;
key = K_F6; break;
case K_F4:
key = K_ESC; break;
default:
break;
}
@ -191,12 +193,50 @@ bool TRec_sheet::key_notify(int r, KEY k)
if (k == K_INS)
{
const int items = f.items();
f.disable_cell(0, 1);
if (f.items() >= 8) return FALSE;
if (items > 1)
{
const int s = f.selected() + 1;
for (int i = items - 1; i > s ; i--)
{
TToken_string & r1 = f.row(i);
const TToken_string & r = f.row(i - 1);
r1 = r;
}
f.row(s) = "";
f.force_update();
}
}
return TRUE;
}
bool TRec_sheet::fld_notify(int r, KEY k)
{
TSheet_field& f = (TSheet_field&) _mask->field(F_FIELDS);
if (k == K_INS)
{
const int items = f.items();
if (items > 1)
{
const int s = f.selected() + 1;
for (int i = items - 1; i > s ; i--)
{
TToken_string & r1 = f.row(i);
const TToken_string & r = f.row(i - 1);
r1 = r;
}
f.row(s) = "";
f.force_update();
}
}
return TRUE;
}
void TRec_sheet::save()
{
@ -228,6 +268,7 @@ void TRec_sheet::edit()
_mask->set (F_NUM, _dir->num());
_mask->set (F_DES, _dir->des());
f1.sheet_mask().field(FLD_LEN).set_handler(len_handler);
f1.set_notify(fld_notify);
int nfields = _rec->fields();
f1.enable_column(FLD_DES - 101, _descr != NULL);