[Overview][Types][Classes][Procedures and functions][Index] Reference for unit 'BufDataset' (#fcl)


[Properties (by Name)] [Methods (by Name)] [Events (by Name)]

Implements an index using a doubly-linked list


Source position: bufdataset.pas line 189

type TDoubleLinkedBufIndex = class(TBufIndex)


  FLastRecBuf: PBufRecLinkItem;

  FFirstRecBuf: PBufRecLinkItem;

  FNeedScroll: Boolean;

  function ScrollBackward; override;


Scrolls the index toward the beginning of the index

  function ScrollForward; override;


Scrolls the index towards the end of the index

  function GetCurrent; override;


  function ScrollFirst; override;


Scrolls to the first entry in the index

  procedure ScrollLast; override;


Scrolls to the last entry in the index

  function GetRecord(); override;


  procedure SetToFirstRecord; override;


  procedure SetToLastRecord; override;


  procedure StoreCurrentRecord; override;


  procedure RestoreCurrentRecord; override;


  function CanScrollForward; override;


Indicates if the index can be scrolled towards the end of the index

  procedure DoScrollForward; override;


Implements actions needed to scroll forward using the index

  procedure StoreCurrentRecIntoBookmark(); override;


  procedure StoreSpareRecIntoBookmark(); override;


  procedure GotoBookmark(); override;


Navigates the index to the specified Bookmark

  function CompareBookmarks(); override;


  function SameBookmarks(); override;


Compares Bookmark values for ordering in the index

  procedure InitialiseIndex; override;


Initializes the index

  procedure InitialiseSpareRecord(); override;


Initializes the spare record in the index

  procedure ReleaseSpareRecord; override;


Releases the spare record in the index

  procedure BeginUpdate; override;


  procedure AddRecord; override;


Adds a record to the index

  procedure InsertRecordBeforeCurrentRecord(); override;


Inserts a record prior to the current record in the index

  procedure RemoveRecordFromIndex(); override;


Removes the record at the specified Bookmark from the index

  procedure OrderCurrentRecord; override;


  procedure EndUpdate; override;






Implements an index using a doubly-linked list




Defines the interface used to implement indexes in TBufDataset




TDoubleLinkedBufIndex is a TBufIndex descendant that implements an index using a doubly-linked list. Nodes in the doubly-linked list are implemented using the TBufRecLinkItem record type and the PBufRecLinkItem pointer type. TDoubleLinkedBufIndex provides two sentinel nodes that represent the first and last items in the linked list.

TDoubleLinkedBufIndex is the type used to implement the default index ('DEFAULT_ORDER') in TBufDataset.

See also



Defines the interface used to implement indexes in TBufDataset



Stores bookmarks to the previous and next records in a linked list



Pointer to a TBufRecLinkItem type



Implements a database-aware buffered dataset

Documentation generated on: May 14 2021