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

TDoubleLinkedBufIndex

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

Implements an index using a doubly-linked list

Declaration

Source position: bufdataset.pas line 189

type TDoubleLinkedBufIndex = class(TBufIndex)

public

  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;

  

end;

Inheritance

TDoubleLinkedBufIndex

  

Implements an index using a doubly-linked list

|

TBufIndex

  

Defines the interface used to implement indexes in TBufDataset

|

TObject

Description

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

TBufIndex

  

Defines the interface used to implement indexes in TBufDataset

TBufRecLinkItem

  

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

PBufRecLinkItem

  

Pointer to a TBufRecLinkItem type

TBufDataset

  

Implements a database-aware buffered dataset


Documentation generated on: May 14 2021