[Properties (by Name)] [Methods (by Name)]
Holds several parallel, integer-indexed arrays
Source position: mselookupbuffer.pas line 104
type tcustomlookupbuffer = class(tactcomponent) |
||
public |
||
constructor create(); override; |
||
destructor destroy; override; |
||
procedure beginupdate; |
||
procedure endupdate; |
||
procedure clearbuffer; virtual; |
||
procedure checkbuffer; |
||
procedure loadbuffer; |
||
function find(); |
||
function findphys(); |
||
function integervaluephys(); |
||
function integervaluelog(); |
||
function integerindex(); |
||
function integerindexar(); |
||
function integerar(); |
||
function floatvaluephys(); |
||
function floatvaluelog(); |
||
function floatindex(); |
||
function floatindexar(); |
||
function floatar(); |
||
function int64valuephys(); |
||
function int64valuelog(); |
||
function int64index(); |
||
function int64indexar(); |
||
function int64ar(); |
||
function textvaluephys(); |
||
function textvaluelog(); |
||
function textindex(); |
||
function textindexar(); |
||
function textar(); |
||
function lookupinteger(); |
||
function lookupint64(); |
||
function lookuptext(); |
|
A lookup buffer cannot distinguish a NULL value from a "zero" value |
function lookupfloat(); |
||
function count; virtual; |
||
procedure addrow(); |
|
Adds one row to each array, taking values from the *values arrays up to the field count of each type (fieldcounttext etc.) |
procedure addrows(); |
|
Adds several rows to each array; only the minimum length across the input *values[i] arrays is inserted, longer ones are truncated |
function fieldnamestext; virtual; |
||
function fieldnamesfloat; virtual; |
||
function fieldnamesinteger; virtual; |
||
function fieldnamesint64; virtual; |
||
property fieldcounttext: Integer; [rw] |
||
property fieldcountfloat: Integer; [rw] |
||
property fieldcountinteger: Integer; [rw] |
||
property fieldcountint64: Integer; [rw] |
||
property integervalue []: Integer; [r] |
||
property floatvalue []: realty; [r] |
||
property int64value []: Int64; [r] |
||
property textvalue []: msestring; [r] |
||
property beforeload: lookupbuffereventty; [rw] |
||
property afterload: lookupbuffereventty; [rw] |
||
property onchange: notifyeventty; [rw] |
||
end; |
|
Holds several parallel, integer-indexed arrays |
|
| | | ||
| | | ||
|
Extends the FPC tcomponent with object linking facilities and the like; base of every MSEgui component |
|
| | | ||
tcomponent,ievent,iificommand,iificlient |
||
| | | ||
| | | ||
TObject |
Holds several parallel, integer-indexed arrays (of integer, int64, realty — also used for datetimes — and msestring) and lets you search a value in one array and read the corresponding value in another (see the lookup* functions), or search and then walk an array's values (find* and *value* functions). Each array can be addressed by its physical index (its raw storage row number, the *phys functions) or by a logical index (the *log functions and find): the logical index is built automatically, lazily, by sorting the array's values, and is what makes find (as opposed to findphys) fast on a large array. Fill the arrays manually with addrow/addrows; doloadbuffer (called by checkbuffer) is a no-op here, but is overridden by descendants such as tdblookupbuffer to (re)load the arrays automatically from a data source.