Descrizione da ripristinare per commit rifatto
git-svn-id: svn://10.65.10.50/trunk@4306 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
9649685092
commit
bbb94e2cbd
@ -165,9 +165,7 @@ public:
|
|||||||
int add(TToken_string* s)
|
int add(TToken_string* s)
|
||||||
{ return _str.add(s); }
|
{ return _str.add(s); }
|
||||||
// @cmember Inserisce un record in una posizione stabilita
|
// @cmember Inserisce un record in una posizione stabilita
|
||||||
int insert(int rec);
|
int insert(int rec, bool update_sheet, bool call_notify);
|
||||||
// @cmember Inserisce un record (da prgramma) in una posizione stabilita
|
|
||||||
int _insert(int rec, bool update_sheet = TRUE);
|
|
||||||
// @cmember Elimina il record <p rec>
|
// @cmember Elimina il record <p rec>
|
||||||
bool destroy(int rec = -1, bool update_sheet = TRUE);
|
bool destroy(int rec = -1, bool update_sheet = TRUE);
|
||||||
// @cmember Ritorna l'array di tutte le stringhe delle righe
|
// @cmember Ritorna l'array di tutte le stringhe delle righe
|
||||||
@ -674,7 +672,9 @@ void TSpreadsheet::set_focus_cell(int riga, int colonna)
|
|||||||
// @rdesc Ritorna la posizione nella quale e' stato inserito il record. Se non riesce ad inserirlo
|
// @rdesc Ritorna la posizione nella quale e' stato inserito il record. Se non riesce ad inserirlo
|
||||||
// ritorna -1.
|
// ritorna -1.
|
||||||
int TSpreadsheet::insert(
|
int TSpreadsheet::insert(
|
||||||
int rec) // @parm Numero del record da inserire nello spreadsheet
|
int rec, // @parm Numero del record da inserire nello spreadsheet
|
||||||
|
bool update_sheet, // @parm Chiama cell request
|
||||||
|
bool call_notify) // @parm Chiama funzione di notify
|
||||||
|
|
||||||
// @comm Non e' possibile inserire un nuovo record nel caso nello spreadsheet vi siano
|
// @comm Non e' possibile inserire un nuovo record nel caso nello spreadsheet vi siano
|
||||||
// almeno 999 righe oppure se lo spreadsheet non e' attivo.
|
// almeno 999 righe oppure se lo spreadsheet non e' attivo.
|
||||||
@ -696,16 +696,20 @@ int TSpreadsheet::insert(
|
|||||||
ininsert = TRUE;
|
ininsert = TRUE;
|
||||||
int r = rec < 0 ? items() : rec;
|
int r = rec < 0 ? items() : rec;
|
||||||
|
|
||||||
const bool ok = notify(r, K_INS);
|
const bool ok = call_notify ? notify(r, K_INS) : TRUE;
|
||||||
if (ok)
|
if (ok)
|
||||||
{
|
{
|
||||||
r = _str.insert(new TToken_string(80), rec);
|
r = _str.insert(new TToken_string(80), rec);
|
||||||
_property.insert(NULL, r);
|
_property.insert(NULL, r);
|
||||||
|
|
||||||
// Notifica che l'inserimento h terminato
|
// Notifica che l'inserimento e' terminato
|
||||||
xi_insert_row(_obj, INT_MAX);
|
xi_insert_row(_obj, INT_MAX);
|
||||||
owner().post_insert(r);
|
owner().post_insert(r);
|
||||||
|
|
||||||
|
if (call_notify)
|
||||||
notify(r, K_CTRL + K_INS);
|
notify(r, K_CTRL + K_INS);
|
||||||
|
|
||||||
|
if (update_sheet)
|
||||||
xi_cell_request(_obj);
|
xi_cell_request(_obj);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@ -716,33 +720,6 @@ int TSpreadsheet::insert(
|
|||||||
|
|
||||||
// @doc INTERNAL
|
// @doc INTERNAL
|
||||||
|
|
||||||
// @mfunc Inserisce un record (da programma) in una posizione stabilita
|
|
||||||
//
|
|
||||||
// @rdesc Ritorna la posizione nella quale e' stato inserito il record. Se non riesce ad inserirlo
|
|
||||||
// ritorna -1.
|
|
||||||
int TSpreadsheet::_insert(
|
|
||||||
int rec, // @parm Numero del record da inserire nello spreadsheet
|
|
||||||
bool update_sheet) // @parm Aggiornamento visuale dell sheet
|
|
||||||
|
|
||||||
// @comm Non e' possibile inserire un nuovo record nel caso nello spreadsheet vi siano
|
|
||||||
// almeno 999 righe oppure se lo spreadsheet non e' attivo.
|
|
||||||
{
|
|
||||||
if (items() >= 999)
|
|
||||||
return -1;
|
|
||||||
|
|
||||||
int r = _str.insert(new TToken_string(80), rec);
|
|
||||||
|
|
||||||
_property.insert(NULL, r);
|
|
||||||
owner().post_insert(r);
|
|
||||||
xi_insert_row(_obj, INT_MAX);
|
|
||||||
|
|
||||||
if (update_sheet)
|
|
||||||
xi_cell_request(_obj);
|
|
||||||
return r;
|
|
||||||
}
|
|
||||||
|
|
||||||
// @doc INTERNAL
|
|
||||||
|
|
||||||
// @mfunc Elimina una riga
|
// @mfunc Elimina una riga
|
||||||
//
|
//
|
||||||
// @rdesc Ritorna il risultato dell'operazione:
|
// @rdesc Ritorna il risultato dell'operazione:
|
||||||
@ -1016,7 +993,7 @@ bool TSpreadsheet::event_handler(XI_OBJ* itf, XI_EVENT *xiev)
|
|||||||
if (xiev->v.xi_obj->type == XIT_LIST)
|
if (xiev->v.xi_obj->type == XIT_LIST)
|
||||||
{
|
{
|
||||||
owner().mask().notify_focus_field(owner().dlg());
|
owner().mask().notify_focus_field(owner().dlg());
|
||||||
insert(-1);
|
insert(-1, TRUE, TRUE);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -1302,7 +1279,7 @@ bool TSpreadsheet::event_handler(XI_OBJ* itf, XI_EVENT *xiev)
|
|||||||
break;
|
break;
|
||||||
case K_CTRL + '+':
|
case K_CTRL + '+':
|
||||||
owner().mask().notify_focus_field(owner().dlg());
|
owner().mask().notify_focus_field(owner().dlg());
|
||||||
insert(-1);
|
insert(-1, TRUE, TRUE);
|
||||||
refused = TRUE;
|
refused = TRUE;
|
||||||
break;
|
break;
|
||||||
case K_CTRL + 'A':
|
case K_CTRL + 'A':
|
||||||
@ -2076,9 +2053,9 @@ void TSheet_field::destroy(int r, bool update_sheet)
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Certified 100%
|
// Certified 100%
|
||||||
int TSheet_field::insert(int r, bool update_sheet)
|
int TSheet_field::insert(int r, bool update_sheet, bool call_notify)
|
||||||
{
|
{
|
||||||
return ((TSpreadsheet*)_ctl)->_insert(r, update_sheet);
|
return ((TSpreadsheet*)_ctl)->insert(r, update_sheet, call_notify);
|
||||||
}
|
}
|
||||||
|
|
||||||
void TSheet_field::parse_head(TScanner& scanner)
|
void TSheet_field::parse_head(TScanner& scanner)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user