diff --git a/include/msksheet.cpp b/include/msksheet.cpp index 8366e84d4..4a97d3b48 100755 --- a/include/msksheet.cpp +++ b/include/msksheet.cpp @@ -153,7 +153,7 @@ public: // @cmember Inserisce un record in una posizione stabilita int insert(int rec); // @cmember Elimina il record
- bool destroy(int rec = -1); + bool destroy(int rec = -1, bool update_sheet = TRUE); // @cmember Ritorna l'array di tutte le stringhe delle righe TString_array& rows_array() { return _str; } @@ -677,7 +677,8 @@ int TSpreadsheet::insert( // @flag TRUE | Se la riga esisteve e quindi e' stata eliminata // @flag FALSE | Se la riga non esisteve bool TSpreadsheet::destroy( - int rec) // @parm Numero della riga da eliminare + int rec, // @parm Numero della riga da eliminare + bool update_sheet) // @parm Aggiornamento visuale dell sheet // @comm Se il parametro
assume valore -1 vengono eliminate tutte le righe presenti // nello spreadsheet @@ -702,7 +703,7 @@ bool TSpreadsheet::destroy( ok = _str.destroy(rec, TRUE); // Destroy line } - if (ok && mask().is_running()) + if (ok && mask().is_running() && update_sheet) update(-1); indestroy = FALSE; @@ -1805,12 +1806,11 @@ void TSheet_field::reset() } // Certified 100% -void TSheet_field::destroy(int r) +void TSheet_field::destroy(int r, bool update_sheet) { - _sheet->destroy(r); + _sheet->destroy(r, update_sheet); } - void TSheet_field::parse_head(TScanner& scanner) { _width = scanner.integer(); diff --git a/include/msksheet.h b/include/msksheet.h index 2bd7deaf3..516e0d175 100755 --- a/include/msksheet.h +++ b/include/msksheet.h @@ -87,7 +87,7 @@ public: void on_idle(); // @cmember Elimina una riga - void destroy(int r = -1); + void destroy(int r = -1, bool update_sheet = TRUE); // @cmember Forza l'aggiornamento dei dati della riga sullo schermo void force_update(int r = -1);