Patch level : 10.0

Files correlati     : ve0.exe
Ricompilazione Demo : [ ]
Commento            :
Corretto collegamento tra righe documento e documento origine


git-svn-id: svn://10.65.10.50/trunk@19780 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
guy 2009-12-15 13:43:55 +00:00
parent 67791b207f
commit 74da0e0b9f
2 changed files with 14 additions and 13 deletions

View File

@ -374,18 +374,19 @@ void TMask_field::construct(TScanner& scanner, WINDOW parent)
scanner.popkey(); // BEGIN scanner.popkey(); // BEGIN
#ifdef DBG #ifdef DBG
const TMask& m = mask();
if (scanner.key() != "BE") if (scanner.key() != "BE")
{ {
NFCHECK("Testata errata o BEGIN mancante nel campo %d", _ctl_data._dlg); NFCHECK("Testata errata o BEGIN mancante nel campo %d della maschera",
_ctl_data._dlg, (const char*)m.source_file());
scanner.push(); scanner.push();
} }
if (_ctl_data._dlg > 0) if (_ctl_data._dlg > 0)
{ {
const TMask& m = mask(); FOR_EACH_MASK_FIELD(m, i, mf)
for (int f = m.fields()-1; f >= 0; f--)
{ {
const TMask_field& mf = m.fld(f); if (mf->dlg() == _ctl_data._dlg && mf->parent() == parent)
if (mf.dlg() == _ctl_data._dlg && mf.parent() == parent)
NFCHECK("Esistono due campi con identificatore %d", _ctl_data._dlg); NFCHECK("Esistono due campi con identificatore %d", _ctl_data._dlg);
} }
} }

View File

@ -1267,7 +1267,7 @@ bool TSpreadsheet::event_handler(XI_OBJ* itf, XI_EVENT *xiev)
case XIE_SELECT: case XIE_SELECT:
if (xiev->v.xi_obj->type == XIT_ROW) if (xiev->v.xi_obj->type == XIT_ROW)
{ {
_check_enabled = FALSE; _check_enabled = false;
refused = TRUE; refused = TRUE;
if (!test_focus_change()) if (!test_focus_change())
@ -1309,33 +1309,33 @@ bool TSpreadsheet::event_handler(XI_OBJ* itf, XI_EVENT *xiev)
} }
else else
{ {
TMask & sm = owner().sheet_mask(); TMask& sm = owner().sheet_mask();
const int button_pos = sm.id2pos(FIRST_FIELD-1); const int button_pos = sm.id2pos(FIRST_FIELD-1);
if (button_pos >= 0) if (button_pos >= 0)
{ {
TMask_field& button = sm.fld(button_pos); TMask_field& button = sm.fld(button_pos);
if (button.active()) if (button.active())
{ {
button.disable(); // Impedisce che un doppio click indesiderato abbia effetto
if (!_row_dirty) if (!_row_dirty)
{ {
notify_change(); notify_change();
_row_dirty = _cell_dirty = FALSE; _row_dirty = _cell_dirty = FALSE;
for (int i = sm.fields() - 1; i >= 0; i--) FOR_EACH_MASK_FIELD(sm, i, fld)
sm.fld(i).set_dirty(FALSE); fld->set_dirty(false);
} }
button.on_hit(); button.on_hit();
if (sm.dirty()) if (sm.dirty())
{ {
_row_dirty = TRUE; _row_dirty = TRUE;
mask2str(_cur_rec); mask2str(_cur_rec);
} }
button.enable();
} }
owner().highlight(); owner().highlight();
} }
} }
_check_enabled = TRUE; _check_enabled = true;
} }
break; break;
case XIE_DBL_CELL: case XIE_DBL_CELL: