From 199ef85a71bb45ce08e0b48129e5b581970a9f93 Mon Sep 17 00:00:00 2001 From: guy Date: Tue, 21 Nov 1995 08:27:37 +0000 Subject: [PATCH] mask.cpp Azzerato anche focusdirty e non solo dirty in reset della maschera msksheet.cpp Forzato update in reset dello spreadsheet git-svn-id: svn://10.65.10.50/trunk@2181 c028cbd2-c16b-5b4b-a496-9718f37d4682 --- include/mask.cpp | 4 ++-- include/msksheet.cpp | 8 ++++++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/include/mask.cpp b/include/mask.cpp index b1359eeb0..9ce9fd36b 100755 --- a/include/mask.cpp +++ b/include/mask.cpp @@ -1126,12 +1126,12 @@ void TMask::show_page(int p) void TMask::reset(short fld_id) { - if (fld_id < 1) + if (fld_id <= 0) { for (int f = 0; f < fields(); f++) { TMask_field& c = fld(f); - c._flags.dirty = FALSE; + c._flags.dirty = c._flags.focusdirty = FALSE; c.reset(); } } diff --git a/include/msksheet.cpp b/include/msksheet.cpp index 73dee5866..b2f526ee3 100755 --- a/include/msksheet.cpp +++ b/include/msksheet.cpp @@ -1014,9 +1014,12 @@ void TSpreadsheet::list_handler(XI_EVENT *xiev) { case E_FOCUS: if (_check_enabled && ep->v.active == FALSE) - { + { + if (!mask().is_running()) + _row_dirty = _cell_dirty = FALSE; + const bool ok = (bool)xi_move_focus(_itf); - if (!ok && mask().is_running()) + if (!ok) { set_dirty(3); xiev->refused = TRUE; @@ -1737,6 +1740,7 @@ void TSheet_field::reset() { _sheet->destroy(); _sheet->sheet_mask().reset(); + force_update(); } // Certified 100%