Patch level : 4.0
Files correlati : librerie Ricompilazione Demo : [ ] Commento : Corretta generazione bottoni di filtro sulle ricerche. Ora genera ID+500 invece di ID+1000 che causava sovrapposizioni agli ID delle colonne della griglia di ricerca git-svn-id: svn://10.65.10.50/trunk@14061 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
baa929c402
commit
492fdd83d7
@ -1457,9 +1457,10 @@ void TBrowse_sheet::add_custom_filter(const char* regexp)
|
|||||||
if (_original_filter.not_empty())
|
if (_original_filter.not_empty())
|
||||||
filter << ')';
|
filter << ')';
|
||||||
}
|
}
|
||||||
if (filter != cursor()->filter()) // Cambio il filtro se necessarion :-)
|
|
||||||
{
|
|
||||||
TCursor& c = *cursor();
|
TCursor& c = *cursor();
|
||||||
|
if (filter != c.filter()) // Cambio il filtro se necessario :-)
|
||||||
|
{
|
||||||
c.freeze(false);
|
c.freeze(false);
|
||||||
c.setfilter(filter, true);
|
c.setfilter(filter, true);
|
||||||
c.items(); // Forzo la ricostruzione del cursore
|
c.items(); // Forzo la ricostruzione del cursore
|
||||||
@ -1550,7 +1551,7 @@ bool TBrowse_sheet::filter_handler(TMask_field& f, KEY k)
|
|||||||
TString expr; // Espressione di filtro complessiva
|
TString expr; // Espressione di filtro complessiva
|
||||||
if (!f.get().empty()) // Filtro attivato!
|
if (!f.get().empty()) // Filtro attivato!
|
||||||
{
|
{
|
||||||
const short id = f.dlg()-1000;
|
const short id = f.dlg()-500;
|
||||||
TString e = f.mask().get(id); // Espressione regolare
|
TString e = f.mask().get(id); // Espressione regolare
|
||||||
e.strip("\"'"); // Tolgo caratteri che potrebbero dare problemi
|
e.strip("\"'"); // Tolgo caratteri che potrebbero dare problemi
|
||||||
if (!e.blank())
|
if (!e.blank())
|
||||||
@ -1720,14 +1721,14 @@ TBrowse_sheet::TBrowse_sheet(TCursor* cursor, const char* fields,
|
|||||||
const int sz = csize > 50 ? 50 : csize; // Dimensione del campo di ricerca
|
const int sz = csize > 50 ? 50 : csize; // Dimensione del campo di ricerca
|
||||||
e = &add_string(c.dlg(), 0, p, 1, y++, csize, flags, sz);
|
e = &add_string(c.dlg(), 0, p, 1, y++, csize, flags, sz);
|
||||||
// Aggiunge campo con le icone di filtraggio
|
// Aggiunge campo con le icone di filtraggio
|
||||||
add_checkbutton(c.dlg()+1000, 0, "", sz+18, y-1, 2, 1, "", 10112, 10113).set_handler(filter_handler);
|
add_checkbutton(c.dlg()+500, 0, "", sz+18, y-1, 2, 1, "", 10112, 10113).set_handler(filter_handler);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case CLASS_ZOOM_FIELD:
|
case CLASS_ZOOM_FIELD:
|
||||||
{
|
{
|
||||||
e = &add_string(c.dlg(), 0, p, 1, y++, 32000, flags, 50);
|
e = &add_string(c.dlg(), 0, p, 1, y++, 32000, flags, 50);
|
||||||
// Aggiunge campo con le icone di filtraggio
|
// Aggiunge campo con le icone di filtraggio
|
||||||
add_checkbutton(c.dlg()+1000, 0, "", 68, y-1, 2, 1, "", 10112, 10113).set_handler(filter_handler);
|
add_checkbutton(c.dlg()+500, 0, "", 68, y-1, 2, 1, "", 10112, 10113).set_handler(filter_handler);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case CLASS_REAL_FIELD:
|
case CLASS_REAL_FIELD:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user