[Overview][Constants][Types][Classes][Procedures and functions][Variables][Index] | Reference for unit 'Grids' (#lcl)

# TGridDataCache

Stores cached information about a grid control.

## Declaration

Source position: grids.pas line 688

`type TGridDataCache = record`
`FixedWidth: Integer;` |  | Sum of the column widths for fixed cells in a grid.
`FixedHeight: Integer;` |  | Sum of the row heights for fixed cells in a grid.
`GridWidth: Integer;` |  | Sum of the column widths for all cells in a grid.
`GridHeight: Integer;` |  | Sum of the row heights for all cells in a grid.
`ClientWidth: Integer;` |  | Width of the grid control minus the width for the vertical scroll bar.
`ClientHeight: Integer;` |  | Height of the grid control minus the width of the horizontal scroll bar.
`ClientRect: TRect;`
`ScrollWidth: Integer;` |  | The difference between ClientWidth and FixedWidth.
`ScrollHeight: Integer;` |  | The difference between ClientHeight and FixedHeight.
`HScrollBarNetRange: Integer;` |  | Difference between the scroll bar range and the grid page size.
`VisibleGrid: TRect;` |  | Visible non-fixed cell coordinates rectangle.
`MaxClientXY: Tpoint;` |  | Bottom/Right coordinates in (pixels) for the visible parts of a grid.
`ValidRows: Boolean;` |  | True when there are no fixed columns to display in a grid.
`ValidCols: Boolean;` |  | True when there are no fixed rows to display in the grid.
`ValidGrid: Boolean;` |  | True when there are no fixed cells for columns or rows in a grid.
`AccumWidth: TIntegerList;` |  | Cumulative preceding width per grid column.
`AccumHeight: TIntegerList;` |  | Cumulative preceding height per grid row.
`TLColOff: Integer;` |  | Offset in pixels for the Top/Left column in a grid.
`TLRowOff: Integer;` |  | Offset in pixels for the Top/Left row in a grid.
`MaxTopLeft: TPoint;` |  | Cell coordinates for the last cell that can be used as the grid visual origin.
`MaxTLOffset: TPoint;` |  | Max Top left offset for the last cell in the grid.
`HotCell: TPoint;` |  | The current "hot" cell in the grid.
`HotCellPainted: Boolean;` |  | True if the current "hot" cell has already been painted.
`HotGridZone: TGridZone;` |  | GridZone for the last MouseMove.
`ClickCell: TPoint;` |  | Cell coordinates for the last mouse click event.
`ClickMouse: TPoint;` |  | Mouse coordinates for the last mouse click event.
`PushedCell: TPoint;` |  | Cell coordinates for the cell drawn in the pushed state.
`PushedMouse: TPoint;` |  | Mouse Coordinates for the cell drawn in the pushed state.
`ClickCellPushed: Boolean;` |  | Indicates if the header cell is currently drawn in the pushed state.
`FullVisibleGrid: TRect;` |  | Visible cells excluding partially visible cells.
`MouseCell: TPoint;` |  | Cell which contains the mouse pointer.
`OldMaxTopLeft: TPoint;` |  | Previous MaxTopleft (before column sizing).
`end;`

## Description

TGridDataCache is a record type used to store and cache information about a grid control, its layout, and activity. TGridDataCache is the type used to implement the GCache property in TCustomGrid.

## See also

TCustomGrid.GCache |  | Contains cached data about the visual layout and state for the grid control.