Class TTableCompList

Unit

Declaration

type TTableCompList = class(TSelfCopiedCompList, IGridDataSource)

Description

Component list which can display component properties in grid. Class implements functions of saving/reading table properties, but does not bind grid positions with list items. If number of columns returned by GetColCount is changed then corresponding changes in SetCaption, SetColOptions, SetColFunc, SetRowContents, GetRowContents should be done.

Hierarchy

Overview

Fields

Protected FAreColWidthsReady: boolean;
Protected FAreRowHeightsReady: boolean;
Protected FCaption: string;
Protected FDestroying: boolean;
Protected FHeightsSaved: boolean;
Protected FSavedCol: longint;
Protected FSavedColWidths: TLongArray;
Protected FSavedLeftCol: longint;
Protected FSavedRow: longint;
Protected FSavedRowHeights: TLongArray;
Protected FSavedSelection: TGridRect;
Protected FSavedTopRow: longint;
Protected FSettingsSaved: boolean;
Protected FWidthsSaved: boolean;

Methods

Public constructor Create;
Public destructor Destroy; override;
Public function AutoHeights: boolean;
Public function AutoWidths: boolean;
Public function GetCellColor( const ACol, ARow: longint; var Color: TColor): boolean; virtual;
Public function GetCellEditMask(const ACol, ARow: longint): string; virtual;
Public function GetCellEnabledCharSet(const ACol, ARow: longint): TCharSet; virtual; abstract;
Public function GetCol: longint;
Public function GetColCount: longint; virtual;
Public function GetColNumFixed: boolean; virtual;
Public function GetColWidth(const Col: longint): longint;
Public function GetColWidthByDefault(const Index: longint): longint; virtual;
Public function GetDataFromGrid(Grid: TStringGrid): boolean; virtual; abstract;
Public function GetFixedCols: longint; virtual;
Public function GetFixedRows: longint; virtual;
Public function GetInfoCols: longint; virtual; abstract;
Public function GetInfoRows: longint; virtual; abstract;
Public function GetLeftCol: longint;
Public function GetRow: longint;
Public function GetRowCount: longint; virtual;
Public function GetRowHeight(const Row: longint): longint;
Public function GetRowHeightByDefault(const Index: longint): longint; virtual;
Public function GetRowNumFixed: boolean; virtual;
Public function GetSelection: TGridRect;
Public function GetTopRow: longint;
Public function IsCellDisabled( const ACol, ARow: longint): boolean; virtual;
Public function IsDataSourceEmpty: boolean; virtual; abstract;
Public function IsDataValid(const ACol, ARow: longint; const AString: string): boolean; virtual; abstract;
Public function MayIDoAddColumn: boolean; virtual;
Public function MayIDoAddRow: boolean; virtual;
Public function MayIDoClearAllCells: boolean; virtual;
Public function MayIDoClearSelectedArea: boolean; virtual;
Public function MayIDoDeleteAllData: boolean; virtual;
Public function MayIDoDeleteColumns(StartCol, ColsCount: longint): boolean; virtual;
Public function MayIDoDeleteRows(StartRow, RowsCount: longint): boolean; virtual;
Public function MayIDoInsertColumns(StartCol, ColsCount: longint): boolean; virtual;
Public function MayIDoInsertRows(StartRow, RowsCount: longint): boolean; virtual;
Public function ValueToString(const ACol, ARow: longint): string; virtual; abstract;
Public procedure AddColWidthItem;
Public procedure AddRowHeightItem;
Public procedure AllDataDeleted; virtual;
Public procedure BeforeStringToValue(const ACol, ARow: longint; const AString: string); virtual; abstract;
Public procedure ColumnAdded; virtual;
Public procedure ColumnsDeleted(const StartCol, ColsCount: longint); virtual;
Public procedure ColumnsInserted(const StartCol, ColsCount: longint); virtual;
Public procedure DeleteAllColWidthItems;
Public procedure DeleteAllRowHeightItems;
Public procedure DeleteColWidthItem(const Index: longint);
Public procedure DeleteRowHeightItem(const Index: longint);
Public procedure GetColWidths(Grid: TStringGrid);
Public procedure GetRowHeights(Grid: TStringGrid);
Public procedure GridAssign(Grid: TStringGrid); virtual;
Public procedure GridRelease(Grid: TStringGrid); virtual;
Public procedure InitColWidths;
Public procedure InitRowHeights;
Public procedure InsertColWidthItem(const Index: longint);
Public procedure InsertRowHeightItem(const Index: longint);
Public procedure RowAdded; virtual;
Public procedure RowsDeleted(const StartRow, RowsCount: longint); virtual;
Public procedure RowsInserted(const StartRow, RowsCount: longint); virtual;
Public procedure SaveCol(const Col: longint);
Public procedure SaveColWidth(const Col, Width: longint);
Public procedure SaveLeftCol(const LeftCol: longint);
Public procedure SaveRow(const Row: longint);
Public procedure SaveRowHeight(const Row, Height: longint);
Public procedure SaveSelection(const Selection: TGridRect);
Public procedure SaveTopRow(const TopRow: longint);
Public procedure SetCaption(Grid: TStringGrid); virtual; abstract;
Public procedure SetColFunc(Grid: TStringGrid); virtual;
Public procedure SetColOptions(Grid: TStringGrid); virtual; abstract;
Public procedure SetColWidths(Grid: TStringGrid);
Public procedure SetDataToGrid(Grid: TStringGrid); virtual; abstract;
Public procedure SetRowHeights(Grid: TStringGrid);
Public procedure SetValueByDefault(const ACol, ARow: longint); virtual; abstract;
Public procedure StringToValue(const ACol, ARow: longint; const AString: string); virtual; abstract;
Protected procedure CheckColIndex(const Index: longint);
Protected procedure CheckRowIndex(const Index: longint);

Properties

Public property Caption: string read FCaption write FCaption;
Public property SavedCol: longint read GetCol write SaveCol;
Public property SavedLeftCol: longint read GetLeftCol write SaveLeftCol;
Public property SavedRow: longint read GetRow write SaveRow;
Public property SavedSelection: TGridRect read GetSelection write SaveSelection;
Public property SavedTopRow: longint read GetTopRow write SaveTopRow;

Description

Fields

Protected FAreColWidthsReady: boolean;

Indicates that array is already initialized.

Protected FAreRowHeightsReady: boolean;
 
Protected FCaption: string;
 
Protected FDestroying: boolean;

Indicates that the object is destroyed.

Protected FHeightsSaved: boolean;
 
Protected FSavedCol: longint;

Saved table properties.

Protected FSavedColWidths: TLongArray;

Arrays are deleted from the destructor. Therefore deleting array items should be disabled during deleting the whole object.

Protected FSavedLeftCol: longint;

Saved table properties.

Protected FSavedRow: longint;

Saved table properties.

Protected FSavedRowHeights: TLongArray;
 
Protected FSavedSelection: TGridRect;
 
Protected FSavedTopRow: longint;

Saved table properties.

Protected FSettingsSaved: boolean;

Indicates that grid parameters were saved. It is set up in GridRelease.

Protected FWidthsSaved: boolean;
 

Methods

Public constructor Create;
 
Public destructor Destroy; override;
 
Public function AutoHeights: boolean;
 
Public function AutoWidths: boolean;
 
Public function GetCellColor( const ACol, ARow: longint; var Color: TColor): boolean; virtual;

устанавливает правильное значение "по умолчанию" для данной ячейки; используется при обработке операции очистки ячейки

Public function GetCellEditMask(const ACol, ARow: longint): string; virtual;

Returns default empty mask.

Public function GetCellEnabledCharSet(const ACol, ARow: longint): TCharSet; virtual; abstract;
 
Public function GetCol: longint;
 
Public function GetColCount: longint; virtual;
 
Public function GetColNumFixed: boolean; virtual;

число фиксированных строк (по умолчанию = 1)

Public function GetColWidth(const Col: longint): longint;

(по умолчанию = False)

Public function GetColWidthByDefault(const Index: longint): longint; virtual;
 
Public function GetDataFromGrid(Grid: TStringGrid): boolean; virtual; abstract;
 
Public function GetFixedCols: longint; virtual;

число строк информационной части таблицы

Public function GetFixedRows: longint; virtual;

число фиксированных колонок (по умолчанию = 1)

Public function GetInfoCols: longint; virtual; abstract;

полное число строк, включая Fixed

Public function GetInfoRows: longint; virtual; abstract;

число колонок информационной части таблицы

Public function GetLeftCol: longint;
 
Public function GetRow: longint;
 
Public function GetRowCount: longint; virtual;

полное число колонок, включая Fixed

Public function GetRowHeight(const Row: longint): longint;
 
Public function GetRowHeightByDefault(const Index: longint): longint; virtual;
 
Public function GetRowNumFixed: boolean; virtual;

(по умолчанию = False)

Public function GetSelection: TGridRect;
 
Public function GetTopRow: longint;
 
Public function IsCellDisabled( const ACol, ARow: longint): boolean; virtual;
 
Public function IsDataSourceEmpty: boolean; virtual; abstract;

///////////////////////////////////////////////////////////////////// методы нового интерфейса методы данного интерфейса подразумевают, что активной является сетка, а источник данных пассивный (это также отражается в названиях методов) /////////////////////////////////////////////////////////////////////

Public function IsDataValid(const ACol, ARow: longint; const AString: string): boolean; virtual; abstract;
 
Public function MayIDoAddColumn: boolean; virtual;
 
Public function MayIDoAddRow: boolean; virtual;
 
Public function MayIDoClearAllCells: boolean; virtual;
 
Public function MayIDoClearSelectedArea: boolean; virtual;
 
Public function MayIDoDeleteAllData: boolean; virtual;
 
Public function MayIDoDeleteColumns(StartCol, ColsCount: longint): boolean; virtual;
 
Public function MayIDoDeleteRows(StartRow, RowsCount: longint): boolean; virtual;
 
Public function MayIDoInsertColumns(StartCol, ColsCount: longint): boolean; virtual;
 
Public function MayIDoInsertRows(StartRow, RowsCount: longint): boolean; virtual;

все функции проверки возможности выполнения действия возвращают False; классы - потомки должны перекрыть их

Public function ValueToString(const ACol, ARow: longint): string; virtual; abstract;
 
Public procedure AddColWidthItem;
 
Public procedure AddRowHeightItem;
 
Public procedure AllDataDeleted; virtual;
 
Public procedure BeforeStringToValue(const ACol, ARow: longint; const AString: string); virtual; abstract;
 
Public procedure ColumnAdded; virtual;
 
Public procedure ColumnsDeleted(const StartCol, ColsCount: longint); virtual;
 
Public procedure ColumnsInserted(const StartCol, ColsCount: longint); virtual;
 
Public procedure DeleteAllColWidthItems;

функции управления массивами сохраненных значений ширины (высоты) колонок (столбцов)

Public procedure DeleteAllRowHeightItems;
 
Public procedure DeleteColWidthItem(const Index: longint);
 
Public procedure DeleteRowHeightItem(const Index: longint);
 
Public procedure GetColWidths(Grid: TStringGrid);

устанавливает ширину колонок таблицы

Public procedure GetRowHeights(Grid: TStringGrid);

устанавливает высоту строк таблицы

Public procedure GridAssign(Grid: TStringGrid); virtual;

///////////////////////////////////////////////////////////////////// методы старого интерфейса сохранить для совместимости с прежними приложениями, а также для того, чтобы можно было работать с неактивными сетками или когда активность таблицы не требуется методы данного интерфейса подразумевают, что источник данных является активным, а сетка пассивной (это отражается в названиях методов) /////////////////////////////////////////////////////////////////////

Public procedure GridRelease(Grid: TStringGrid); virtual;

установка параметров таблицы; когда данные устанавливаются в сетку по инициативе источника данных ввод в таблицу запрещен

Public procedure InitColWidths;

сохраняет во внутренних полях значения высоты строк таблицы

Public procedure InitRowHeights;

первоначальная инициализация массива

Public procedure InsertColWidthItem(const Index: longint);
 
Public procedure InsertRowHeightItem(const Index: longint);
 
Public procedure RowAdded; virtual;
 
Public procedure RowsDeleted(const StartRow, RowsCount: longint); virtual;

эти методы удаления, вставки, очистки вызывают исключение с сообщением о невозможности выполнить данное действие; классы - потомки должны перекрыть эти методы для реализации требуемых действий

Public procedure RowsInserted(const StartRow, RowsCount: longint); virtual;
 
Public procedure SaveCol(const Col: longint);

номер текущей выбранной колонки

Public procedure SaveColWidth(const Col, Width: longint);
 
Public procedure SaveLeftCol(const LeftCol: longint);
 
Public procedure SaveRow(const Row: longint);

номер текущей выбранной строки

Public procedure SaveRowHeight(const Row, Height: longint);
 
Public procedure SaveSelection(const Selection: TGridRect);
 
Public procedure SaveTopRow(const TopRow: longint);
 
Public procedure SetCaption(Grid: TStringGrid); virtual; abstract;
 
Public procedure SetColFunc(Grid: TStringGrid); virtual;

устанавливает опции колонок в Grid'е

Public procedure SetColOptions(Grid: TStringGrid); virtual; abstract;
 
Public procedure SetColWidths(Grid: TStringGrid);

устанавливает функции для колонок

Public procedure SetDataToGrid(Grid: TStringGrid); virtual; abstract;

сохранение изменений параметров таблицы

Public procedure SetRowHeights(Grid: TStringGrid);

сохраняет во внутренних полях значения ширины колонок таблицы

Public procedure SetValueByDefault(const ACol, ARow: longint); virtual; abstract;
 
Public procedure StringToValue(const ACol, ARow: longint; const AString: string); virtual; abstract;
 
Protected procedure CheckColIndex(const Index: longint);

Checks that column (row) index is valid. Otherwise throws an exception.

Protected procedure CheckRowIndex(const Index: longint);
 

Properties

Public property Caption: string read FCaption write FCaption;
 
Public property SavedCol: longint read GetCol write SaveCol;
 
Public property SavedLeftCol: longint read GetLeftCol write SaveLeftCol;
 
Public property SavedRow: longint read GetRow write SaveRow;
 
Public property SavedSelection: TGridRect read GetSelection write SaveSelection;
 
Public property SavedTopRow: longint read GetTopRow write SaveTopRow;
 

Generated by PasDoc 0.15.0.