Class TStringAlignGrid (unit Aligrid) |
Inherits from
TStringGrid
@\\\*) (*@/// TStringAlignGrid=class(TStringGrid)
constructor Create(AOwner: TComponent);
- @\\\*) (*@\\\*) (*@/// TStringAlignGrid = class(TStringGrid) // The grid itself *) (*@/// The component action: create, initialize, destroy the internal data *) { The component action: create, initialize, destroy the internal data } (*@/// constructor TStringAlignGrid.
procedure AdjustColWidth(ACol:integer);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure AdjustColWidths;
@\\\*) (*@/// procedure TStringAlignGrid.
procedure AdjustRowHeight(ARow:integer);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure AdjustRowHeights;
@\\\*) (*@/// procedure TStringAlignGrid.
procedure ClearSelection;
@\\\*) (*@\\\*) (*@/// Miscellaneous stuff *) (*@/// procedure TStringAlignGrid.
procedure ClipboardCSV2Contents(csv:char; range:TGridRect);
@\\\000000091F*) (*@/// procedure TStringAlignGrid.
function CompareColInteger(Sender: TObject; Column, Row1,Row2: longint):t_relation;
@\\\*) (*@/// function TStringAlignGrid.
function CompareColString(Sender: TObject; Column, Row1,Row2: longint):t_relation;
@\\\*) { Some ready-made sorting functions } (*@/// function TStringAlignGrid.
function CompareRowInteger(Sender: TObject; RowNr, Col1,Col2: longint):t_relation;
@\\\*) (*@/// function TStringAlignGrid.
function CompareRowString(Sender: TObject; RowNr, Col1,Col2: longint):t_relation;
@\\\*) (*@/// function TStringAlignGrid.
function Contents2CSV(data:TMemorystream; csv:char; range:TGridRect):TMemorystream;
@\\\*) (*@/// function TStringAlignGrid.
procedure Contents2CSVClipboard(csv:char; range:TGridRect);
@\\\*) (*@/// procedure TStringAlignGrid.
function Contents2HTML(data:TMemorystream):TMemorystream;
@\\\*) (*@/// Import and export functions @\\\*) (*@\\\*) (*@\\\*) (*@/// Import and Export functions *) (*@/// function TStringAlignGrid.
procedure CopyFromClipboard;
@\\\*) (*@/// procedure TStringAlignGrid.
procedure CopyToClipboard;
@\\\000000081F*) (*@/// procedure TStringAlignGrid.
procedure CSV2Contents(data:TStream; csv:char; range:TGridRect);
@\\\*) (*@/// procedure TStringAlignGrid.
destructor Destroy;
@\\\*) (*@/// destructor TStringAlignGrid.
procedure ExchangeCol(FromIndex, ToIndex: Longint);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure ExchangeRow(FromIndex, ToIndex: Longint);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure HideEdit(cancel:boolean);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure InsertCol(ACol:Integer);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure InsertRow(ARow:Integer);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure LoadFromFile(const filename:string);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure NextCell(direction:t_nextcell; LastCellBehaviour:t_lastcell; Var ACol,ARow:integer);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure NextEditableCell(var ACol,ARow:integer);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure RemoveCol(ACol:Integer);
@\\\*) (*@\\\*) (*@/// Insertion, removing, moving and exchanging of Rows and Columns *) { Cols.
procedure RemoveRow(ARow:Integer);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure ResetAlignCell(ACol,ARow:integer);
@\\\*) (*@\\\*) (*@/// Reset alignment and use the one defined a level above *) (*@/// procedure TStringAlignGrid.
procedure ResetAlignCol(ACol:integer);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure ResetAlignFixedCol(ACol:integer);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure ResetAlignFixedRow(ARow:integer);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure ResetAlignment;
@\\\*) (*@/// procedure ResetAlign.
procedure ResetAlignRow(ARow:integer);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure ResetAllCell(ACol,ARow:integer);
@\\\*) (*@\\\*) (*@/// The ResetAll methods as shortcuts @\\\*) (*@\\\*) (*@/// Resetting all the setting at once *) (*@/// procedure TStringAligngrid.
procedure ResetAllCol(ACol:integer);
@\\\*) (*@/// procedure TStringAligngrid.
procedure ResetAllFixedCol(ACol:integer);
@\\\*) (*@/// procedure TStringAligngrid.
procedure ResetAllFixedRow(ARow:integer);
@\\\*) (*@/// procedure TStringAligngrid.
procedure ResetAllRow(ARow:integer);
@\\\*) (*@/// procedure TStringAligngrid.
procedure ResetBrushCell(ACol,ARow:integer);
@\\\*) (*@/// procedure ResetBrush.
procedure ResetBrushCol(ACol:integer);
@\\\*) (*@\\\*) (*@/// Reset brush and use the one defined a level above *) (*@/// procedure TStringAlignGrid.
procedure ResetBrushFixedCol(ACol:integer);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure ResetBrushFixedRow(ARow:integer);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure ResetBrushRow(ARow:integer);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure ResetColorCell(ACol,ARow:integer);
@\\\*) (*@/// procedure ResetColor.
procedure ResetColorCol(ACol:integer);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure ResetColorFixedCol(ACol:integer);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure ResetColorFixedRow(ARow:integer);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure ResetColorRow(ARow:integer);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure ResetEditCell(ACol,ARow:integer);
@\\\*) (*@/// procedure ResetEdit.
procedure ResetEditCol(ACol:integer);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure ResetEditRow(ARow:integer);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure ResetFontCell(ACol,ARow:integer);
@\\\*) (*@/// procedure Reset.
procedure ResetFontCol(ACol:integer);
@\\\*) (*@\\\*) (*@/// Reset font and use the one defined a level above *) (*@/// procedure TStringAlignGrid.
procedure ResetFontFixedCol(ACol:integer);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure ResetFontFixedRow(ARow:integer);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure ResetFontRow(ARow:integer);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure ResetSelectedColorCell(ACol,ARow:integer);
@\\\*) (*@/// procedure ResetColor.
procedure ResetSelectedColorCol(ACol:integer);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure ResetSelectedColorRow(ARow:integer);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure ResetSelectedFontColorCell(ACol,ARow:integer);
@\\\*) (*@/// procedure ResetColor.
procedure ResetSelectedFontColorCol(ACol:integer);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure ResetSelectedFontColorRow(ARow:integer);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure SaveToFile(const filename:string);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure ShowEdit;
@\\\*) (*@/// procedure TStringAlignGrid.
procedure SortColumn(Column: longint; Ascending:boolean);
@\\\*) { The procedures for the user to call } (*@/// procedure TStringAlignGrid.
procedure SortRow(Rownumber: longint; Ascending:boolean);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure BrushChanged(AFont: TObject);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure CalcTextSize(ACol,ARow:integer; var Width,height: integer);
@\\\*) (*@/// procedure TStringAlignGrid.
function CanEditShow: Boolean;
@\\\*) (*@/// function TStringAlignGrid.
procedure CellsToList(var List:TList);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure ColumnMoved(FromIndex, ToIndex: Longint);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure ColWidthsChanged;
@\\\*) (*@/// procedure TStringAlignGrid.
function CreateEditor: TInplaceEdit;
@\\\*) (*@\\\*) (*@/// The Inplace-Editor which also gets the alignment, font and color *) { The Inplace-Editor which also gets the alignment, font and color -
got the idea from James Sager's (jsager@ao.
procedure DefineProperties(Filer: TFiler);
@\\\*) (*@\\\*) (*@/// The stuff for reading and writing the data from/to the DFM file *) (*@/// procedure TStringAlignGrid.
procedure doEnter;
@\\\*) (*@/// procedure TStringAlignGrid.
procedure doExit;
@\\\*) { The stuff to get the editor's events right } (*@/// procedure TStringAlignGrid.
procedure DoSort(ColRow,Min,Max: longint; ByColumn,ascending:boolean);
@\\\*) (*@\\\0000000701*) (*@/// Sorting stuff *) { The sorting itself - currently a simple Bubblesort } (*@/// procedure TStringAlignGrid.
procedure DrawCell(ACol,ARow:Longint; ARect:TRect; AState:TGridDrawState);
@\\\*) (*@/// The main procedure DrawCell @\\\*) (*@\\\*) (*@/// The real action - the draw of a cell *) { the draw of a cell, is called from the Paint Method of TCustomGrid } (*@/// procedure TStringAlignGrid.
procedure FontChanged(AFont: TObject);
@\\\*) { A callback to be sure the displayed font/brush is the same as the internal } (*@/// procedure TStringAlignGrid.
function GetAlign: TMyAlign;
@\\\*) (*@/// property read/write for the alignments @\\\*) (*@\\\*) (*@/// Property read and write and reset for the Alignments *) (*@/// Property read and write for Alignment *) { Property read and write for Alignment } (*@/// function TStringAlignGrid.
function GetAlignCell(ACol,ARow: integer):TMyAlign;
@\\\*) (*@\\\*) (*@/// Property read and write for AlignCell *) { Property read and write for AlignCell } (*@/// function TStringAlignGrid.
function GetAlignCol(ACol: integer):TMyAlign;
@\\\*) (*@\\\*) (*@/// Property read and write for AlignCol and FixedAlignCol *) { Property read and write for AlignCol and FixedAlignCol } (*@/// function TStringAlignGrid.
function GetAlignRow(ARow:Integer):TMyAlign;
@\\\*) (*@\\\*) (*@/// Property read and write for AlignRow and FixedAlignRow *) { Property read and write for AlignRow and FixedAlignRow } (*@/// function TStringAlignGrid.
function GetBrushCell(ACol,ARow: integer):TBrush;
@\\\*) (*@/// property read/write for the brushs @\\\*) (*@\\\*) (*@\\\*) (*@/// Property read and write and reset for Brushs *) (*@/// Property read and write for BrushCell *) { Property read and write for BrushCell } (*@/// function TStringAlignGrid.
function GetBrushCellComplete(ACol,ARow: integer):TBrush;
@\\\*) (*@/// utility functions @\\\*) (*@/// function TStringAlignGrid.
function GetBrushCellInternal(ACol,ARow: integer; create:boolean):TBrush;
@\\\*) (*@/// function TStringAlignGrid.
function GetBrushCol(ACol: integer):TBrush;
@\\\*) (*@\\\*) (*@/// Property read and write for BrushCol/FixedBrushCol *) { Property read and write for BrushCol/FixedBrushCol } (*@/// function TStringAlignGrid.
function GetBrushColRowInternal(AColRow: integer; create:boolean; List:TList):TBrush;
@\\\*) (*@/// function TStringAlignGrid.
function GetBrushFixedCol(ACol: integer):TBrush;
@\\\*) (*@/// function TStringAlignGrid.
function GetBrushFixedRow(ARow: integer):TBrush;
@\\\*) (*@/// function TStringAlignGrid.
function GetBrushRow(ARow: integer):TBrush;
@\\\*) (*@\\\*) (*@/// Property read and write for BrushRow/FixedBrushRow *) { Property read and write for BrushRow } (*@/// function TStringAlignGrid.
function GetColorCell(ACol,ARow: integer):TColor;
@\\\*) (*@\\\*) (*@\\\*) (*@/// Property read and write and reset for Colors (done via Brushes!) *) (*@/// Property read and write for ColorCell *) { Property read and write for ColorCell } (*@/// function TStringAlignGrid.
function GetColorCol(ACol: integer):TColor;
@\\\*) (*@/// property read/write for the colors @\\\*) (*@\\\*) (*@/// Property read and write for ColorCol and FixedColorCol *) { Property read and write for ColorCol and FixedColorCol } (*@/// function TStringAlignGrid.
function GetColorRow(ARow:Integer):TColor;
@\\\*) (*@\\\*) (*@/// Property read and write for ColorRow and FixedColorRow *) { Property read and write for ColorRow and FixedColorRow } (*@/// function TStringAlignGrid.
function GetEditCell(ACol,ARow: integer):Boolean;
@\\\*) (*@\\\*) (*@\\\*) (*@/// Property read and write and reset for the edit-enabled *) (*@/// Property read and write for EditCell *) { Property read and write for EditCell } (*@/// function TStringAlignGrid.
function GetEditCol(ACol: integer):Boolean;
@\\\*) (*@/// property read/write for the edit-enabled @\\\*) (*@\\\*) (*@/// Property read and write for EditCol *) { Property read and write for EditCol } (*@/// function TStringAlignGrid.
function GetEditRow(ARow:Integer):Boolean;
@\\\*) (*@\\\*) (*@/// Property read and write for EditRow *) { Property read and write for EditRow } (*@/// function TStringAlignGrid.
function GetFixAlignCol(ACol: integer):TMyAlign;
@\\\*) (*@/// function TStringAlignGrid.
function GetFixAlignRow(ARow:Integer):TMyAlign;
@\\\*) (*@/// function TStringAlignGrid.
function GetFixColorCol(ACol: integer):TColor;
@\\\*) (*@/// function TStringAlignGrid.
function GetFixColorRow(ARow:Integer):TColor;
@\\\*) (*@/// function TStringAlignGrid.
function GetFontCell(ACol,ARow: integer):TFont;
@\\\*) (*@/// property read/write for the fonts @\\\*) (*@\\\*) (*@\\\*) (*@/// Property read and write and reset for Fonts *) (*@/// Property read and write for FontCell *) { Property read and write for FontCell } (*@/// function TStringAlignGrid.
function GetFontCellComplete(ACol,ARow: integer):TFont;
@\\\*) (*@/// utility functions @\\\*) { The Font/Brush for the Cell through all levels (Cell, Col, Row, Grid) } (*@/// function TStringAlignGrid.
function GetFontCellInternal(ACol,ARow: integer; create:boolean):TFont;
@\\\*) (*@/// function TStringAlignGrid.
function GetFontCol(ACol: integer):TFont;
@\\\*) (*@\\\*) (*@/// Property read and write for FontCol/FixedFontCol *) { Property read and write for FontCol/FixedFontCol } (*@/// function TStringAlignGrid.
function GetFontColRowInternal(AColRow: integer; create:boolean; List:TList):TFont;
@\\\*) (*@\\\*) (*@/// Utility methods for the fonts/brushs *) (*@/// function TStringAlignGrid.
function GetFontFixedCol(ACol: integer):TFont;
@\\\*) (*@/// function TStringAlignGrid.
function GetFontFixedRow(ARow: integer):TFont;
@\\\*) (*@/// function TStringAlignGrid.
function GetFontRow(ARow: integer):TFont;
@\\\*) (*@\\\*) (*@/// Property read and write for FontRow/FixedFontRow *) { Property read and write for FontRow } (*@/// function TStringAlignGrid.
function GetHintCell(ACol,ARow: integer):string;
@\\\*) (*@\\\*) (*@/// Property read and write for HintCell *) { Property read and write for HintCell } (*@/// function TStringAlignGrid.
function GetSelColorCell(ACol,ARow: integer):TColor;
@\\\*) (*@\\\*) (*@/// Property read and write and reset for Selected Colors *) (*@/// Property read and write for SelColorCell *) (*@/// function TStringAlignGrid.
function GetSelColorCol(ACol: integer):TColor;
@\\\*) (*@/// property read/write for the colors @\\\*) (*@\\\*) (*@/// Property read and write for SelColorCol *) (*@/// function TStringAlignGrid.
function GetSelColorRow(ARow:Integer):TColor;
@\\\*) (*@\\\*) (*@/// Property read and write for SelColorRow *) (*@/// function TStringAlignGrid.
function GetSelFontColorCell(ACol,ARow: integer):TColor;
@\\\*) (*@\\\*) (*@/// Property read and write and reset for Selected Font Colors *) (*@/// Property read and write for SelFontColorCell *) (*@/// function TStringAlignGrid.
function GetSelFontColorCol(ACol: integer):TColor;
@\\\*) (*@/// property read/write for the colors @\\\*) (*@\\\*) (*@/// Property read and write for SelFontColorCol *) (*@/// function TStringAlignGrid.
function GetSelFontColorRow(ARow:Integer):TColor;
@\\\*) (*@\\\*) (*@/// Property read and write for SelFontColorRow *) (*@/// function TStringAlignGrid.
procedure Initialize;
@\\\*) (*@/// procedure TStringAlignGrid.
function is_fixed(ACol,ARow: integer):boolean;
@\\\*) (*@/// Miscellaneous stuff like internal calculations etc.
procedure KeyDown(var Key: Word; Shift: TShiftState);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure ListToCells(List:TList);
@\\\*) { To convert TStringGrid's own Cell property to my list and vice versa } (*@/// procedure TStringAlignGrid.
procedure Loaded;
@\\\*) (*@/// For the DFM read/write @\\\*) (*@/// procedure TStringAlignGrid.
procedure mcn_edit_cancel(var msg:TMessage);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure mcn_edit_exit(var msg:TMessage);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure mcn_edit_return(var msg:TMessage);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure mcn_edit_show(var msg:TMessage);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure mcn_edit_show_it(var msg:TMessage);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure MouseMove(Shift: TShiftState; X, Y: Integer);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure ReadAlignCell(Stream: TStream);
@\\\*) (*@/// The DFM read/write procedures @\\\*) (*@/// Read and write several alignment lists to the DFM *) { All the routines for the several alignment lists } (*@/// procedure TStringAlignGrid.
procedure ReadAlignCol(Stream: TStream);
@\\\*) (*@/// procedure TStringAlignGrid.
function ReadAlignColRow(Stream: TStream; list:TList):boolean;
@\\\@\\\*) { All the ReadCol, ReadRow are so similar, so these to routines are there
to avoid code-copy } (*@/// function TStringAlignGrid.
procedure ReadAlignRow(Stream: TStream);
@\\\*) (*@/// procedure TStringAlignGrid.
function ReadBrush(Reader: TReader):TBrush;
@\\\*) (*@/// function TStringAlignGrid.
procedure ReadBrushCell(Reader: TReader);
@\\\*) (*@/// The DFM read/write procedures @\\\*) (*@\\\*) (*@/// Read and write several brush lists to the DFM *) { All the routines for the different Brush lists } (*@/// procedure TStringAlignGrid.
function ReadBrushCellInt(Reader: TReader; list:TList):boolean;
@\\\*) { All the ReadCol, ReadRow are so similar, so these to routines are there
to avoid code-copy } (*@/// function TStringAlignGrid.
procedure ReadBrushCol(Reader: TReader);
@\\\*) (*@/// procedure TStringAlignGrid.
function ReadBrushColRow(Reader: TReader; list:TList):boolean;
@\\\*) (*@/// function TStringAlignGrid.
procedure ReadBrushRow(Reader: TReader);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure ReadCells(Reader: TReader);
@\\\*) (*@\\\*) (*@/// Read and write the cell strings to the DFM *) (*@/// procedure TStringAlignGrid.
procedure ReadColorCell(Reader: TReader);
@/// The DFM read/write procedures @\\\*) (*@\\\*) (*@/// Read several color lists to the DFM *) { Only the read methods to read old DFM files correctly, all is now saved } { via the brushes } (*@/// procedure TStringAlignGrid.
procedure ReadColorCol(Reader: TReader);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure ReadColorColRow(Reader: TReader; kind:byte);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure ReadColorRow(Reader: TReader);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure ReadEditCell(Stream: TStream);
@\\\*) (*@/// The DFM read/write procedures @\\\*) (*@\\\*) (*@/// Read and write several edit-enabled lists to the DFM *) { All the routines for the several edit-enabled lists } (*@/// procedure TStringAlignGrid.
procedure ReadEditCol(Stream: TStream);
@\\\*) (*@/// procedure TStringAlignGrid.
function ReadEditColRow(Stream: TStream; list:TList):boolean;
Utility functions @\\\*) { All the ReadCol, ReadRow are so similar, so these to routines are there
to avoid code-copy } (*@/// function TStringAlignGrid.
procedure ReadEditRow(Stream: TStream);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure ReadFixedAlignCol(Stream: TStream);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure ReadFixedAlignRow(Stream: TStream);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure ReadFixedBrushCol(Reader: TReader);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure ReadFixedBrushRow(Reader: TReader);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure ReadFixedColorCol(Reader: TReader);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure ReadFixedColorRow(Reader: TReader);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure ReadFixedFontCol(Reader: TReader);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure ReadFixedFontRow(Reader: TReader);
@\\\*) (*@/// procedure TStringAlignGrid.
function ReadFont(Reader: TReader):TFont;
@\\\*) (*@/// function TStringAlignGrid.
procedure ReadFontCell(Reader: TReader);
@\\\*) (*@/// The DFM read/write procedures @\\\*) (*@\\\*) (*@/// Read and write several font lists to the DFM *) { All the routines for the different font lists } (*@/// procedure TStringAlignGrid.
function ReadFontCellInt(Reader: TReader; list:TList):boolean;
@\\\*) { All the ReadCol, ReadRow are so similar, so these to routines are there
to avoid code-copy } (*@/// function TStringAlignGrid.
procedure ReadFontCol(Reader: TReader);
@\\\*) (*@/// procedure TStringAlignGrid.
function ReadFontColRow(Reader: TReader; list:TList):boolean;
@\\\*) (*@/// function TStringAlignGrid.
procedure ReadFontRow(Reader: TReader);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure ReadHint(Reader: TReader);
@\\\*) (*@\\\*) (*@/// Read and write the hint strings to the DFM *) { The hint and the cell strings } (*@/// procedure TStringAlignGrid.
procedure ReadSelColorCell(Reader: TReader);
@\\\*) (*@/// The DFM read/write procedures @\\\*) (*@\\\*) (*@/// Read and write several selected color lists to the DFM *) (*@/// procedure TStringAlignGrid.
procedure ReadSelColorCol(Reader: TReader);
@\\\*) (*@/// procedure TStringAlignGrid.
function ReadSelColorColRow(Reader: TReader; list:TList):boolean;
@\\\*) { All the ReadCol, ReadRow are so similar, so these to routines are there
to avoid code-copy } (*@/// function TStringAlignGrid.
procedure ReadSelColorRow(Reader: TReader);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure ReadSelFontColorCell(Reader: TReader);
@\\\*) (*@/// The DFM read/write procedures @\\\*) (*@\\\*) (*@/// Read and write several selected font color lists to the DFM *) (*@/// procedure TStringAlignGrid.
procedure ReadSelFontColorCol(Reader: TReader);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure ReadSelFontColorRow(Reader: TReader);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure RowHeightsChanged;
@\\\*) (*@/// procedure TStringAlignGrid.
procedure RowMoved(FromIndex, ToIndex: Longint);
@\\\*) (*@/// Insertion and removing and moving and exchanging of columns and rows @\\\*) (*@/// procedure TStringAlignGrid.
procedure SetAlign(const Value: TMyAlign);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure SetAlignCell(ACol,ARow: integer; const Value: TMyAlign);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure SetAlignCol(ACol: integer; const Value: TMyAlign);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure SetAlignRow(ARow:integer; const Value: TMyAlign);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure SetBrushCell(ACol,ARow: integer; const Value: TBrush);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure SetBrushCol(ACol: integer; const Value: TBrush);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure SetBrushFixedCol(ACol: integer; const Value: TBrush);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure SetBrushFixedRow(ARow: integer; const Value: TBrush);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure SetBrushRow(ARow: integer; const Value: TBrush);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure SetColorCell(ACol,ARow: integer; const Value: TColor);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure SetColorCol(ACol: integer; const Value: TColor);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure SetColorRow(ARow:integer; const Value: TColor);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure SetEditCell(ACol,ARow: integer; const Value: Boolean);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure SetEditCol(ACol: integer; const Value: Boolean);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure SetEditRow(ARow:integer; const Value: Boolean);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure SetFixAlignCol(ACol: integer; const Value: TMyAlign);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure SetFixAlignRow(ARow:integer; const Value: TMyAlign);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure SetFixColorCol(ACol: integer; const Value: TColor);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure SetFixColorRow(ARow:integer; const Value: TColor);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure SetFixedColor(const Value: TColor);
@\\\*) (*@\\\*) (*@/// procedure TStringAlignGrid.
procedure SetFontCell(ACol,ARow: integer; const Value: TFont);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure SetFontCol(ACol: integer; const Value: TFont);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure SetFontFixedCol(ACol: integer; const Value: TFont);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure SetFontFixedRow(ARow: integer; const Value: TFont);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure SetFontRow(ARow: integer; const Value: TFont);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure SetHintCell(ACol,ARow: integer; const Value: string);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure SetSelCellColor(Value: TColor);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure SetSelColorCell(ACol,ARow: integer; const Value: TColor);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure SetSelColorCol(ACol: integer; const Value: TColor);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure SetSelColorRow(ARow:integer; const Value: TColor);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure SetSelFontColor(Value: TColor);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure SetSelFontColorCell(ACol,ARow: integer; const Value: TColor);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure SetSelFontColorCol(ACol: integer; const Value: TColor);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure SetSelFontColorRow(ARow:integer; const Value: TColor);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure ShowHintCell(var HintStr: string; var CanShow: Boolean; var HintInfo: THintInfo);
@\\\*) (*@\\\*) (*@/// Utility methods for the cell-specific hints *) (*@/// procedure TStringAlignGrid.
function textheight(ACol,ARow:integer):integer;
@\\\*) (*@/// function TStringAlignGrid.
function textwidth(ACol,ARow:integer):integer;
@\\\*) (*@/// function TStringAlignGrid.
procedure WMChar(var Msg: TWMChar);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure WriteAlignCell(Stream: TStream);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure WriteAlignCol(Stream: TStream);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure WriteAlignColRow(Stream: TStream; count: integer; list:TList);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure WriteAlignRow(Stream: TStream);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure WriteBrush(Writer: TWriter; v:TBrush);
@\\\*) { Writing and reading a single Brush entry } (*@/// procedure TStringAlignGrid.
procedure WriteBrushCell(Writer: TWriter);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure WriteBrushCellInt(Writer: TWriter; x,y:integer; list:TList);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure WriteBrushCol(Writer: TWriter);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure WriteBrushColRow(Writer: TWriter; count: integer; list:TList);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure WriteBrushRow(Writer: TWriter);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure WriteCells(Writer: TWriter);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure WriteEditCell(Stream: TStream);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure WriteEditCol(Stream: TStream);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure WriteEditColRow(Stream: TStream; count: integer; list:TList);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure WriteEditRow(Stream: TStream);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure WriteFixedAlignCol(Stream: TStream);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure WriteFixedAlignRow(Stream: TStream);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure WriteFixedBrushCol(Writer: TWriter);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure WriteFixedBrushRow(Writer: TWriter);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure WriteFixedFontCol(Writer: TWriter);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure WriteFixedFontRow(Writer: TWriter);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure WriteFont(Writer: TWriter; v:TFont);
@\\\*) { Writing and reading a single font entry } (*@/// procedure TStringAlignGrid.
procedure WriteFontCell(Writer: TWriter);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure WriteFontCellInt(Writer: TWriter; x,y:integer; list:TList);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure WriteFontCol(Writer: TWriter);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure WriteFontColRow(Writer: TWriter; count: integer; list:TList);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure WriteFontRow(Writer: TWriter);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure WriteHint(Writer: TWriter);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure WriteSelColorCell(Writer: TWriter);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure WriteSelColorCol(Writer: TWriter);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure WriteSelColorColRow(Writer: TWriter; count:integer; list:TList);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure WriteSelColorRow(Writer: TWriter);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure WriteSelFontColorCell(Writer: TWriter);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure WriteSelFontColorCol(Writer: TWriter);
@\\\*) (*@/// procedure TStringAlignGrid.
procedure WriteSelFontColorRow(Writer: TWriter);
@\\\*) (*@/// procedure TStringAlignGrid.
property AfterLastCellEdit : t_lastcell
property AfterLastCellTab : t_lastcell
property Alignment : TMyAlign
@\\\
property AutoEditNextCell : boolean
property DrawSelection : boolean
property Editable : boolean
@\\\
property FixedColor :
@\\\
property NextCellEdit : T_nextcell
property NextCellTab : T_nextcell
property SelectedCellColor : TColor
property SelectedFontColor : TColor
property ShowCellHints : boolean
property AlignCell : TMyAlign
@/// property AlignCell/AlignCol/FixAlignCol/AlignRow/FixAlignRow
property AlignCol : TMyAlign
property AlignRow : TMyAlign
property CellBrush : TBrush
@/// property CellBrush/ColBrush/FixedColBrush/RowBrush/FixedRowBrush *) { The Brush for each cell and for col and row
property CellFont : TFont
@/// property CellFont/ColFont/FixedColFont/RowFont/FixedRowFont
property ColBrush : TBrush
property ColFont : TFont
property ColorCell : TColor
@/// property ColorCell/ColorCol/FixColorCol/ColorRow/FixColorRow
property ColorCol : TColor
property ColorRow : TColor
property EditCell : Boolean
@/// property EditCell/EditCol/EditRow
property EditCol : Boolean
property EditRow : Boolean
property FixAlignCol : TMyAlign
property FixAlignRow : TMyAlign
property FixColorCol : TColor
property FixColorRow : TColor
property FixedColBrush : TBrush
property FixedColFont : TFont
property FixedRowBrush : TBrush
property FixedRowFont : TFont
property HintCell : string
property RowBrush : TBrush
property RowFont : TFont
property SelectedColorCell : TColor
@/// property ColorCell/ColorCol/FixColorCol/ColorRow/FixColorRow
property SelectedColorCol : TColor
property SelectedColorRow : TColor
property SelectedFontColorCell : TColor
@/// property ColorCell/ColorCol/FixColorCol/ColorRow/FixColorRow
property SelectedFontColorCol : TColor
property SelectedFontColorRow : TColor
event OnAfterEdit : TCellEvent
event OnBeforeEdit : TCellEvent
event OnCancelEdit : TCellEvent
event OnColWidthsChanged : TNotifyEvent
event OnCompareCol : TCompareFunction
event OnCompareRow : TCompareFunction
event OnRowHeightsChanged : TNotifyEvent
edit_visible : boolean;
@\\\*) (*@/// The Inplace-Edit and it's events sent to the grid
FAlign : TMyAlign;
@\\\*) (*@/// Routines and variables for the alignments
FAlignCell : TList;
FAlignCol : TList;
@/// The lists
FAlignRow : TList;
FAlwaysEdit : boolean;
allow switching on editing for single objects only
FBrushCell : TList;
FBrushCol : TList;
@/// The lists
FBrushRow : TList;
FCell : TList;
@\\\*) (*@/// Routines and variables for the cells itself
FEditable : boolean;
@\\\*) (*@/// Routines and variables for the edit-enabled
FEditCell : TList;
FEditCol : TList;
for the component editor to have all cell editable } (*@/// The lists
FEditRow : TList;
FFAlignCol : TList;
FFAlignRow : TList;
FFBrushCol : TList;
FFBrushRow : TList;
FFFontCol : TList;
FFFontRow : TList;
FFixedBrush : TBrush;
FFontCell : TList;
FFontCol : TList;
@/// The lists
FFontRow : TList;
fheightschanged : TNotifyEvent;
FHintCell : TList;
FHintCellLast : TPoint;
@\\\*) (*@\\\*) (*@/// Routines and variables for the hints
FSaveAlignCell : Boolean;
@\\\*) (*@/// The save flags
FSaveAlignCol : Boolean;
FSaveAlignRow : Boolean;
FSaveBrushCell : Boolean;
@\\\*) (*@/// The save flags
FSaveBrushCol : Boolean;
FSaveBrushRow : Boolean;
FSaveCells : Boolean;
Only for loading and saving the cells property
FSaveEditCell : Boolean;
@\\\*) (*@/// The save flags
FSaveEditCol : Boolean;
FSaveEditRow : Boolean;
FSaveFixedAlignCol : Boolean;
FSaveFixedAlignRow : Boolean;
FSaveFixedBrushCol : Boolean;
FSaveFixedBrushRow : Boolean;
FSaveFixedFontCol : Boolean;
FSaveFixedFontRow : Boolean;
FSaveFontCell : Boolean;
@\\\*) (*@/// The save flags
FSaveFontCol : Boolean;
FSaveFontRow : Boolean;
FSaveHint : Boolean;
FSaveSelColorCell : Boolean;
@\\\*) (*@/// The save flags
FSaveSelColorCol : Boolean;
FSaveSelColorRow : Boolean;
FSaveSelFontColorCell : Boolean;
@\\\*) (*@/// The save flags
FSaveSelFontColorCol : Boolean;
FSaveSelFontColorRow : Boolean;
FSelColorCell : TList;
FSelColorCol : TList;
@/// The lists
FSelColorRow : TList;
FSelFontColorCell : TList;
FSelFontColorCol : TList;
@/// The lists
FSelFontColorRow : TList;
FShowCellHints : Boolean;
fwidthschanged : TNotifyEvent;
@\\\*) (*@/// Events for col and row resizing
f_drawselect : boolean;
f_fixedcols : integer;
f_fixedrows : integer;
f_lastcell_edit : t_lastcell;
f_lastcell_tab : t_lastcell;
f_last_sel_len : integer;
f_last_sel_pos : integer;
f_nextcell : Boolean;
f_nextcell_edit : T_nextcell;
f_nextcell_tab : T_nextcell;
f_on_after_edit : TCellEvent;
f_on_before_edit : TCellEvent;
f_on_cancel_edit : TCellEvent;
f_reshow_edit : boolean;
f_SelCellColor : TColor;
f_SelFontColor : TColor;
@\\\*) (*@/// The other properties
f_compare_col : TCompareFunction;
@\\\*) (*@/// Sorting
f_compare_row : TCompareFunction;
constructor Create(AOwner: TComponent);
@\\\*) (*@\\\*) (*@/// TStringAlignGrid = class(TStringGrid) // The grid itself *) (*@/// The component action: create, initialize, destroy the internal data *) { The component action: create, initialize, destroy the internal data } (*@/// constructor TStringAlignGrid.Create(AOwner: TComponent);
procedure AdjustColWidth(ACol:integer);
@\\\*) (*@/// procedure TStringAlignGrid.AdjustColWidth(ACol:integer);
procedure AdjustColWidths;
@\\\*) (*@/// procedure TStringAlignGrid.AdjustColWidths;
procedure AdjustRowHeight(ARow:integer);
@\\\*) (*@/// procedure TStringAlignGrid.AdjustRowHeight(ARow:integer);
procedure AdjustRowHeights;
@\\\*) (*@/// procedure TStringAlignGrid.AdjustRowHeights;
procedure ClearSelection;
@\\\*) (*@\\\*) (*@/// Miscellaneous stuff *) (*@/// procedure TStringAlignGrid.ClearSelection;
procedure ClipboardCSV2Contents(csv:char; range:TGridRect);
@\\\000000091F*) (*@/// procedure TStringAlignGrid.ClipboardCSV2Contents(csv:char; range:TGridRect);
function CompareColInteger(Sender: TObject; Column, Row1,Row2: longint):t_relation;
@\\\*) (*@/// function TStringAlignGrid.CompareColInteger(Sender: TObject; Column, Row1,Row2: longint):t_relation;
function CompareColString(Sender: TObject; Column, Row1,Row2: longint):t_relation;
@\\\*) { Some ready-made sorting functions } (*@/// function TStringAlignGrid.CompareColString(Sender: TObject; Column, Row1,Row2: longint):t_relation;
function CompareRowInteger(Sender: TObject; RowNr, Col1,Col2: longint):t_relation;
@\\\*) (*@/// function TStringAlignGrid.CompareRowInteger(Sender: TObject; RowNr, Col1,Col2: longint):t_relation;
function CompareRowString(Sender: TObject; RowNr, Col1,Col2: longint):t_relation;
@\\\*) (*@/// function TStringAlignGrid.CompareRowString(Sender: TObject; RowNr, Col1,Col2: longint):t_relation;
function Contents2CSV(data:TMemorystream; csv:char; range:TGridRect):TMemorystream;
@\\\*) (*@/// function TStringAlignGrid.Contents2CSV(data:TMemorystream; csv:char; range:TGridRect):TMemorystream;
procedure Contents2CSVClipboard(csv:char; range:TGridRect);
@\\\*) (*@/// procedure TStringAlignGrid.Contents2CSVClipboard(csv:char; range:TGridRect);
function Contents2HTML(data:TMemorystream):TMemorystream;
@\\\*) (*@/// Import and export functions
@\\\*) (*@\\\*) (*@\\\*) (*@/// Import and Export functions *) (*@/// function TStringAlignGrid.Contents2HTML(data:TMemorystream):TMemorystream;
procedure CopyFromClipboard;
@\\\*) (*@/// procedure TStringAlignGrid.CopyFromClipboard;
procedure CopyToClipboard;
@\\\000000081F*) (*@/// procedure TStringAlignGrid.CopyToClipboard;
procedure CSV2Contents(data:TStream; csv:char; range:TGridRect);
@\\\*) (*@/// procedure TStringAlignGrid.CSV2Contents(data:TStream; csv:char; range:TGridRect);
destructor Destroy;
@\\\*) (*@/// destructor TStringAlignGrid.Destroy;
procedure ExchangeCol(FromIndex, ToIndex: Longint);
@\\\*) (*@/// procedure TStringAlignGrid.ExchangeCol(FromIndex, ToIndex: Longint);
procedure ExchangeRow(FromIndex, ToIndex: Longint);
@\\\*) (*@/// procedure TStringAlignGrid.ExchangeRow(FromIndex, ToIndex: Longint);
procedure HideEdit(cancel:boolean);
@\\\*) (*@/// procedure TStringAlignGrid.HideEdit(cancel:boolean);
procedure InsertCol(ACol:Integer);
@\\\*) (*@/// procedure TStringAlignGrid.InsertCol(ACol:Integer);
procedure InsertRow(ARow:Integer);
@\\\*) (*@/// procedure TStringAlignGrid.InsertRow(ARow:Integer);
procedure LoadFromFile(const filename:string);
@\\\*) (*@/// procedure TStringAlignGrid.LoadFromFile(const filename:string);
procedure NextCell(direction:t_nextcell; LastCellBehaviour:t_lastcell; Var ACol,ARow:integer);
@\\\*) (*@/// procedure TStringAlignGrid.NextCell(direction:t_nextcell; ..);
procedure NextEditableCell(var ACol,ARow:integer);
@\\\*) (*@/// procedure TStringAlignGrid.NextEditableCell(var ACol,ARow:integer);
procedure RemoveCol(ACol:Integer);
@\\\*) (*@\\\*) (*@/// Insertion, removing, moving and exchanging of Rows and Columns *) { Cols.Delete[i] isn't implemented in any Delphi version I know of, it
is abstract in D1/D2, in D3 at least an exception InvalidOp is raised.
Same hold for Rows.Delete, Rows.Insert and Cols.Insert.
Therefore all must be done by moving the Column/Row to be deleted or
newly created from/to the place it should have } (*@/// procedure TStringAlignGrid.RemoveCol(ACol:Integer);
procedure RemoveRow(ARow:Integer);
@\\\*) (*@/// procedure TStringAlignGrid.RemoveRow(ARow:Integer);
procedure ResetAlignCell(ACol,ARow:integer);
@\\\*) (*@\\\*) (*@/// Reset alignment and use the one defined a level above *) (*@/// procedure TStringAlignGrid.ResetAlignCell(ACol,ARow:integer);
procedure ResetAlignCol(ACol:integer);
@\\\*) (*@/// procedure TStringAlignGrid.ResetAlignCol(ACol:integer);
procedure ResetAlignFixedCol(ACol:integer);
@\\\*) (*@/// procedure TStringAlignGrid.ResetAlignFixedCol(ACol:integer);
procedure ResetAlignFixedRow(ARow:integer);
@\\\*) (*@/// procedure TStringAlignGrid.ResetAlignFixedRow(ARow:integer);
procedure ResetAlignment;
@\\\*) (*@/// procedure ResetAlign...;
@\\\*) (*@/// procedure TStringAlignGrid.ResetAlignment;
procedure ResetAlignRow(ARow:integer);
@\\\*) (*@/// procedure TStringAlignGrid.ResetAlignRow(ARow:integer);
procedure ResetAllCell(ACol,ARow:integer);
@\\\*) (*@\\\*) (*@/// The ResetAll methods as shortcuts
@\\\*) (*@\\\*) (*@/// Resetting all the setting at once *) (*@/// procedure TStringAligngrid.ResetAllCell(ACol,ARow:integer);
procedure ResetAllCol(ACol:integer);
@\\\*) (*@/// procedure TStringAligngrid.ResetAllCol(ACol:integer);
procedure ResetAllFixedCol(ACol:integer);
@\\\*) (*@/// procedure TStringAligngrid.ResetAllFixedCol(ACol:integer);
procedure ResetAllFixedRow(ARow:integer);
@\\\*) (*@/// procedure TStringAligngrid.ResetAllFixedRow(ARow:integer);
procedure ResetAllRow(ARow:integer);
@\\\*) (*@/// procedure TStringAligngrid.ResetAllRow(ARow:integer);
procedure ResetBrushCell(ACol,ARow:integer);
@\\\*) (*@/// procedure ResetBrush...;
@\\\*) (*@/// procedure TStringAlignGrid.ResetBrushCell(ACol,ARow:integer);
procedure ResetBrushCol(ACol:integer);
@\\\*) (*@\\\*) (*@/// Reset brush and use the one defined a level above *) (*@/// procedure TStringAlignGrid.ResetBrushCol(ACol:integer);
procedure ResetBrushFixedCol(ACol:integer);
@\\\*) (*@/// procedure TStringAlignGrid.ResetBrushFixedCol(ACol:integer);
procedure ResetBrushFixedRow(ARow:integer);
@\\\*) (*@/// procedure TStringAlignGrid.ResetBrushFixedRow(ARow:integer);
procedure ResetBrushRow(ARow:integer);
@\\\*) (*@/// procedure TStringAlignGrid.ResetBrushRow(ARow:integer);
procedure ResetColorCell(ACol,ARow:integer);
@\\\*) (*@/// procedure ResetColor...;
@\\\*) (*@\\\*) (*@/// Reset color and use the one defined a level above *) (*@/// procedure TStringAlignGrid.ResetColorCell(ACol,ARow:integer);
procedure ResetColorCol(ACol:integer);
@\\\*) (*@/// procedure TStringAlignGrid.ResetColorCol(ACol:integer);
procedure ResetColorFixedCol(ACol:integer);
@\\\*) (*@/// procedure TStringAlignGrid.ResetColorFixedCol(ACol:integer);
procedure ResetColorFixedRow(ARow:integer);
@\\\*) (*@/// procedure TStringAlignGrid.ResetColorFixedRow(ARow:integer);
procedure ResetColorRow(ARow:integer);
@\\\*) (*@/// procedure TStringAlignGrid.ResetColorRow(ARow:integer);
procedure ResetEditCell(ACol,ARow:integer);
@\\\*) (*@/// procedure ResetEdit...;
@\\\*) (*@\\\*) (*@/// Reset edit-enabled and use the one defined a level above *) (*@/// procedure TStringAlignGrid.ResetEditCell(ACol,ARow:integer);
procedure ResetEditCol(ACol:integer);
@\\\*) (*@/// procedure TStringAlignGrid.ResetEditCol(ACol:integer);
procedure ResetEditRow(ARow:integer);
@\\\*) (*@/// procedure TStringAlignGrid.ResetEditRow(ARow:integer);
procedure ResetFontCell(ACol,ARow:integer);
@\\\*) (*@/// procedure Reset...;
@\\\*) (*@/// procedure TStringAlignGrid.ResetFontCell(ACol,ARow:integer);
procedure ResetFontCol(ACol:integer);
@\\\*) (*@\\\*) (*@/// Reset font and use the one defined a level above *) (*@/// procedure TStringAlignGrid.ResetFontCol(ACol:integer);
procedure ResetFontFixedCol(ACol:integer);
@\\\*) (*@/// procedure TStringAlignGrid.ResetFontFixedCol(ACol:integer);
procedure ResetFontFixedRow(ARow:integer);
@\\\*) (*@/// procedure TStringAlignGrid.ResetFontFixedRow(ARow:integer);
procedure ResetFontRow(ARow:integer);
@\\\*) (*@/// procedure TStringAlignGrid.ResetFontRow(ARow:integer);
procedure ResetSelectedColorCell(ACol,ARow:integer);
@\\\*) (*@/// procedure ResetColor...;
@\\\*) (*@\\\*) (*@/// procedure TStringAlignGrid.ResetSelectedColorCell(ACol,ARow:integer);
procedure ResetSelectedColorCol(ACol:integer);
@\\\*) (*@/// procedure TStringAlignGrid.ResetSelectedColorCol(ACol:integer);
procedure ResetSelectedColorRow(ARow:integer);
@\\\*) (*@/// procedure TStringAlignGrid.ResetSelectedColorRow(ARow:integer);
procedure ResetSelectedFontColorCell(ACol,ARow:integer);
@\\\*) (*@/// procedure ResetColor...;
@\\\*) (*@\\\*) (*@/// procedure TStringAlignGrid.ResetSelectedFontColorCell(ACol,ARow:integer);
procedure ResetSelectedFontColorCol(ACol:integer);
@\\\*) (*@/// procedure TStringAlignGrid.ResetSelectedFontColorCol(ACol:integer);
procedure ResetSelectedFontColorRow(ARow:integer);
@\\\*) (*@/// procedure TStringAlignGrid.ResetSelectedFontColorRow(ARow:integer);
procedure SaveToFile(const filename:string);
@\\\*) (*@/// procedure TStringAlignGrid.SaveToFile(const filename:string);
procedure ShowEdit;
@\\\*) (*@/// procedure TStringAlignGrid.ShowEdit;
procedure SortColumn(Column: longint; Ascending:boolean);
@\\\*) { The procedures for the user to call } (*@/// procedure TStringAlignGrid.SortColumn(Column: longint; Ascending:boolean);
procedure SortRow(Rownumber: longint; Ascending:boolean);
@\\\*) (*@/// procedure TStringAlignGrid.SortRow(RowNumber: longint; Ascending:boolean);
procedure BrushChanged(AFont: TObject);
@\\\*) (*@/// procedure TStringAlignGrid.BrushChanged(AFont: TObject);
procedure CalcTextSize(ACol,ARow:integer; var Width,height: integer);
@\\\*) (*@/// procedure TStringAlignGrid.CalcTextSize(ACol,ARow:integer; var Width,height: integer);
function CanEditShow: Boolean;
@\\\*) (*@/// function TStringAlignGrid.CanEditShow: Boolean;
procedure CellsToList(var List:TList);
@\\\*) (*@/// procedure TStringAlignGrid.CellsToList(var List:TList);
procedure ColumnMoved(FromIndex, ToIndex: Longint);
@\\\*) (*@/// procedure TStringAlignGrid.ColumnMoved(FromIndex, ToIndex: Longint);
procedure ColWidthsChanged;
@\\\*) (*@/// procedure TStringAlignGrid.ColWidthsChanged;
function CreateEditor: TInplaceEdit;
@\\\*) (*@\\\*) (*@/// The Inplace-Editor which also gets the alignment, font and color *) { The Inplace-Editor which also gets the alignment, font and color -
got the idea from James Sager's (jsager@ao.net) TIEAlignStringGrid -
see UNDU #19 (http://www.informant.com/undu) } (*@/// function TStringAlignGrid.CreateEditor: TInplaceEdit;
procedure DefineProperties(Filer: TFiler);
@\\\*) (*@\\\*) (*@/// The stuff for reading and writing the data from/to the DFM file *) (*@/// procedure TStringAlignGrid.DefineProperties(Filer: TFiler);
procedure doEnter;
@\\\*) (*@/// procedure TStringAlignGrid.DoEnter;
procedure doExit;
@\\\*) { The stuff to get the editor's events right } (*@/// procedure TStringAlignGrid.doExit;
procedure DoSort(ColRow,Min,Max: longint; ByColumn,ascending:boolean);
@\\\*) (*@\\\0000000701*) (*@/// Sorting stuff *) { The sorting itself - currently a simple Bubblesort } (*@/// procedure TStringAlignGrid.DoSort(ColRow,Min,Max: longint; ..)
procedure DrawCell(ACol,ARow:Longint; ARect:TRect; AState:TGridDrawState);
@\\\*) (*@/// The main procedure DrawCell
@\\\*) (*@\\\*) (*@/// The real action - the draw of a cell *) { the draw of a cell, is called from the Paint Method of TCustomGrid } (*@/// procedure TStringAlignGrid.DrawCell(ACol, ARow: Longint; ARect: TRect;
procedure FontChanged(AFont: TObject);
@\\\*) { A callback to be sure the displayed font/brush is the same as the internal } (*@/// procedure TStringAlignGrid.FontChanged(AFont: TObject);
function GetAlign: TMyAlign;
@\\\*) (*@/// property read/write for the alignments
@\\\*) (*@\\\*) (*@/// Property read and write and reset for the Alignments *) (*@/// Property read and write for Alignment *) { Property read and write for Alignment } (*@/// function TStringAlignGrid.GetAlign: TMyAlign;
function GetAlignCell(ACol,ARow: integer):TMyAlign;
@\\\*) (*@\\\*) (*@/// Property read and write for AlignCell *) { Property read and write for AlignCell } (*@/// function TStringAlignGrid.GetAlignCell(ACol,ARow:Integer):TMyAlign;
function GetAlignCol(ACol: integer):TMyAlign;
@\\\*) (*@\\\*) (*@/// Property read and write for AlignCol and FixedAlignCol *) { Property read and write for AlignCol and FixedAlignCol } (*@/// function TStringAlignGrid.GetAlignCol(ACol:Integer):TMyAlign;
function GetAlignRow(ARow:Integer):TMyAlign;
@\\\*) (*@\\\*) (*@/// Property read and write for AlignRow and FixedAlignRow *) { Property read and write for AlignRow and FixedAlignRow } (*@/// function TStringAlignGrid.GetAlignRow(ARow:Integer):TMyAlign;
function GetBrushCell(ACol,ARow: integer):TBrush;
@\\\*) (*@/// property read/write for the brushs
@\\\*) (*@\\\*) (*@\\\*) (*@/// Property read and write and reset for Brushs *) (*@/// Property read and write for BrushCell *) { Property read and write for BrushCell } (*@/// function TStringAlignGrid.GetBrushCell(ACol,ARow: integer):TBrush;
function GetBrushCellComplete(ACol,ARow: integer):TBrush;
@\\\*) (*@/// utility functions
@\\\*) (*@/// function TStringAlignGrid.GetBrushCellComplete(ACol,ARow: integer):TBrush;
function GetBrushCellInternal(ACol,ARow: integer; create:boolean):TBrush;
@\\\*) (*@/// function TStringAlignGrid.GetBrushCellInternal(ACol,ARow: integer; create:boolean):TBrush;
function GetBrushCol(ACol: integer):TBrush;
@\\\*) (*@\\\*) (*@/// Property read and write for BrushCol/FixedBrushCol *) { Property read and write for BrushCol/FixedBrushCol } (*@/// function TStringAlignGrid.GetBrushCol(ACol: integer):TBrush;
function GetBrushColRowInternal(AColRow: integer; create:boolean; List:TList):TBrush;
@\\\*) (*@/// function TStringAlignGrid.GetBrushColRowInternal(AColRow: integer; create:boolean; List:TList):TBrush;
function GetBrushFixedCol(ACol: integer):TBrush;
@\\\*) (*@/// function TStringAlignGrid.GetBrushFixedCol(ACol: integer):TBrush;
function GetBrushFixedRow(ARow: integer):TBrush;
@\\\*) (*@/// function TStringAlignGrid.GetBrushFixedRow(ARow: integer):TBrush;
function GetBrushRow(ARow: integer):TBrush;
@\\\*) (*@\\\*) (*@/// Property read and write for BrushRow/FixedBrushRow *) { Property read and write for BrushRow } (*@/// function TStringAlignGrid.GetBrushRow(ARow: integer):TBrush;
function GetColorCell(ACol,ARow: integer):TColor;
@\\\*) (*@\\\*) (*@\\\*) (*@/// Property read and write and reset for Colors (done via Brushes!) *) (*@/// Property read and write for ColorCell *) { Property read and write for ColorCell } (*@/// function TStringAlignGrid.GetColorCell(ACol,ARow:Integer):TColor;
function GetColorCol(ACol: integer):TColor;
@\\\*) (*@/// property read/write for the colors
@\\\*) (*@\\\*) (*@/// Property read and write for ColorCol and FixedColorCol *) { Property read and write for ColorCol and FixedColorCol } (*@/// function TStringAlignGrid.GetColorCol(ACol:Integer):TColor;
function GetColorRow(ARow:Integer):TColor;
@\\\*) (*@\\\*) (*@/// Property read and write for ColorRow and FixedColorRow *) { Property read and write for ColorRow and FixedColorRow } (*@/// function TStringAlignGrid.GetColorRow(ARow:Integer):TColor;
function GetEditCell(ACol,ARow: integer):Boolean;
@\\\*) (*@\\\*) (*@\\\*) (*@/// Property read and write and reset for the edit-enabled *) (*@/// Property read and write for EditCell *) { Property read and write for EditCell } (*@/// function TStringAlignGrid.GetEditCell(ACol,ARow:Integer):boolean;
function GetEditCol(ACol: integer):Boolean;
@\\\*) (*@/// property read/write for the edit-enabled
@\\\*) (*@\\\*) (*@/// Property read and write for EditCol *) { Property read and write for EditCol } (*@/// function TStringAlignGrid.GetEditCol(ACol:Integer):boolean;
function GetEditRow(ARow:Integer):Boolean;
@\\\*) (*@\\\*) (*@/// Property read and write for EditRow *) { Property read and write for EditRow } (*@/// function TStringAlignGrid.GetAlignRow(ARow:Integer):boolean;
function GetFixAlignCol(ACol: integer):TMyAlign;
@\\\*) (*@/// function TStringAlignGrid.GetFixAlignCol(ACol:Integer):TMyAlign;
function GetFixAlignRow(ARow:Integer):TMyAlign;
@\\\*) (*@/// function TStringAlignGrid.GetFixAlignRow(ARow:Integer):TMyAlign;
function GetFixColorCol(ACol: integer):TColor;
@\\\*) (*@/// function TStringAlignGrid.GetFixColorCol(ACol:Integer):TColor;
function GetFixColorRow(ARow:Integer):TColor;
@\\\*) (*@/// function TStringAlignGrid.GetFixColorRow(ARow:Integer):TColor;
function GetFontCell(ACol,ARow: integer):TFont;
@\\\*) (*@/// property read/write for the fonts
@\\\*) (*@\\\*) (*@\\\*) (*@/// Property read and write and reset for Fonts *) (*@/// Property read and write for FontCell *) { Property read and write for FontCell } (*@/// function TStringAlignGrid.GetFontCell(ACol,ARow: integer):TFont;
function GetFontCellComplete(ACol,ARow: integer):TFont;
@\\\*) (*@/// utility functions
@\\\*) { The Font/Brush for the Cell through all levels (Cell, Col, Row, Grid) } (*@/// function TStringAlignGrid.GetFontCellComplete(ACol,ARow: integer):TFont;
function GetFontCellInternal(ACol,ARow: integer; create:boolean):TFont;
@\\\*) (*@/// function TStringAlignGrid.GetFontCellInternal(ACol,ARow: integer; create:boolean):TFont;
function GetFontCol(ACol: integer):TFont;
@\\\*) (*@\\\*) (*@/// Property read and write for FontCol/FixedFontCol *) { Property read and write for FontCol/FixedFontCol } (*@/// function TStringAlignGrid.GetFontCol(ACol: integer):TFont;
function GetFontColRowInternal(AColRow: integer; create:boolean; List:TList):TFont;
@\\\*) (*@\\\*) (*@/// Utility methods for the fonts/brushs *) (*@/// function TStringAlignGrid.GetFontColRowInternal(AColRow: integer; create:boolean; List:TList):TFont;
function GetFontFixedCol(ACol: integer):TFont;
@\\\*) (*@/// function TStringAlignGrid.GetFontFixedCol(ACol: integer):TFont;
function GetFontFixedRow(ARow: integer):TFont;
@\\\*) (*@/// function TStringAlignGrid.GetFontFixedRow(ARow: integer):TFont;
function GetFontRow(ARow: integer):TFont;
@\\\*) (*@\\\*) (*@/// Property read and write for FontRow/FixedFontRow *) { Property read and write for FontRow } (*@/// function TStringAlignGrid.GetFontRow(ARow: integer):TFont;
function GetHintCell(ACol,ARow: integer):string;
@\\\*) (*@\\\*) (*@/// Property read and write for HintCell *) { Property read and write for HintCell } (*@/// function TStringAlignGrid.GetHintCell(ACol,ARow: integer):string;
function GetSelColorCell(ACol,ARow: integer):TColor;
@\\\*) (*@\\\*) (*@/// Property read and write and reset for Selected Colors *) (*@/// Property read and write for SelColorCell *) (*@/// function TStringAlignGrid.GetSelColorCell(ACol,ARow:Integer):TColor;
function GetSelColorCol(ACol: integer):TColor;
@\\\*) (*@/// property read/write for the colors
@\\\*) (*@\\\*) (*@/// Property read and write for SelColorCol *) (*@/// function TStringAlignGrid.GetSelColorCol(ACol:Integer):TColor;
function GetSelColorRow(ARow:Integer):TColor;
@\\\*) (*@\\\*) (*@/// Property read and write for SelColorRow *) (*@/// function TStringAlignGrid.GetSelColorRow(ARow:Integer):TColor;
function GetSelFontColorCell(ACol,ARow: integer):TColor;
@\\\*) (*@\\\*) (*@/// Property read and write and reset for Selected Font Colors *) (*@/// Property read and write for SelFontColorCell *) (*@/// function TStringAlignGrid.GetSelFontColorCell(ACol,ARow:Integer):TColor;
function GetSelFontColorCol(ACol: integer):TColor;
@\\\*) (*@/// property read/write for the colors
@\\\*) (*@\\\*) (*@/// Property read and write for SelFontColorCol *) (*@/// function TStringAlignGrid.GetSelFontColorCol(ACol:Integer):TColor;
function GetSelFontColorRow(ARow:Integer):TColor;
@\\\*) (*@\\\*) (*@/// Property read and write for SelFontColorRow *) (*@/// function TStringAlignGrid.GetSelFontColorRow(ARow:Integer):TColor;
procedure Initialize;
@\\\*) (*@/// procedure TStringAlignGrid.Initialize;
function is_fixed(ACol,ARow: integer):boolean;
@\\\*) (*@/// Miscellaneous stuff like internal calculations etc.
@\\\*) (*@/// function TStringAlignGrid.is_fixed(ACol,ARow: integer):boolean;
procedure KeyDown(var Key: Word; Shift: TShiftState);
@\\\*) (*@/// procedure TStringAlignGrid.KeyDown(var Key: Word; Shift: TShiftState);
procedure ListToCells(List:TList);
@\\\*) { To convert TStringGrid's own Cell property to my list and vice versa } (*@/// procedure TStringAlignGrid.ListToCells(List:TList);
procedure Loaded;
@\\\*) (*@/// For the DFM read/write
@\\\*) (*@/// procedure TStringAlignGrid.Loaded;
procedure mcn_edit_cancel(var msg:TMessage);
@\\\*) (*@/// procedure TStringAlignGrid.mcn_edit_cancel(var msg:TMessage);
procedure mcn_edit_exit(var msg:TMessage);
@\\\*) (*@/// procedure TStringAlignGrid.mcn_edit_exit(var msg:TMessage);
procedure mcn_edit_return(var msg:TMessage);
@\\\*) (*@/// procedure TStringAlignGrid.mcn_edit_return(var msg:TMessage);
procedure mcn_edit_show(var msg:TMessage);
@\\\*) (*@/// procedure TStringAlignGrid.mcn_edit_show(var msg:TMessage);
procedure mcn_edit_show_it(var msg:TMessage);
@\\\*) (*@/// procedure TStringAlignGrid.mcn_edit_show_it(var msg:TMessage);
procedure MouseMove(Shift: TShiftState; X, Y: Integer);
@\\\*) (*@/// procedure TStringAlignGrid.MouseMove(Shift: TShiftState; X, Y: Integer);
procedure ReadAlignCell(Stream: TStream);
@\\\*) (*@/// The DFM read/write procedures
@\\\*) (*@/// Read and write several alignment lists to the DFM *) { All the routines for the several alignment lists } (*@/// procedure TStringAlignGrid.ReadAlignCell(Stream: TStream);
procedure ReadAlignCol(Stream: TStream);
@\\\*) (*@/// procedure TStringAlignGrid.ReadAlignCol(Stream: TStream);
function ReadAlignColRow(Stream: TStream; list:TList):boolean;
@\\\
@\\\*) { All the ReadCol, ReadRow are so similar, so these to routines are there
to avoid code-copy } (*@/// function TStringAlignGrid.ReadAlignColRow(Stream: TStream; list:TList):boolean;
procedure ReadAlignRow(Stream: TStream);
@\\\*) (*@/// procedure TStringAlignGrid.ReadAlignRow(Stream: TStream);
function ReadBrush(Reader: TReader):TBrush;
@\\\*) (*@/// function TStringAlignGrid.ReadBrush(Reader: TReader):TBrush;
procedure ReadBrushCell(Reader: TReader);
@\\\*) (*@/// The DFM read/write procedures
@\\\*) (*@\\\*) (*@/// Read and write several brush lists to the DFM *) { All the routines for the different Brush lists } (*@/// procedure TStringAlignGrid.ReadBrushCell(Reader: TReader);
function ReadBrushCellInt(Reader: TReader; list:TList):boolean;
@\\\*) { All the ReadCol, ReadRow are so similar, so these to routines are there
to avoid code-copy } (*@/// function TStringAlignGrid.ReadBrushCellInt(Reader: TReader; list:TList):boolean;
procedure ReadBrushCol(Reader: TReader);
@\\\*) (*@/// procedure TStringAlignGrid.ReadBrushCol(Reader: TReader);
function ReadBrushColRow(Reader: TReader; list:TList):boolean;
@\\\*) (*@/// function TStringAlignGrid.ReadBrushColRow(Reader:TReader; list:TList):boolean;
procedure ReadBrushRow(Reader: TReader);
@\\\*) (*@/// procedure TStringAlignGrid.ReadBrushRow(Reader: TReader);
procedure ReadCells(Reader: TReader);
@\\\*) (*@\\\*) (*@/// Read and write the cell strings to the DFM *) (*@/// procedure TStringAlignGrid.ReadCells(Reader: TReader);
procedure ReadColorCell(Reader: TReader);
@/// The DFM read/write procedures
@\\\*) (*@\\\*) (*@/// Read several color lists to the DFM *) { Only the read methods to read old DFM files correctly, all is now saved } { via the brushes } (*@/// procedure TStringAlignGrid.ReadColorCell(Reader: TReader);
procedure ReadColorCol(Reader: TReader);
@\\\*) (*@/// procedure TStringAlignGrid.ReadColorCol(Reader: TReader);
procedure ReadColorColRow(Reader: TReader; kind:byte);
@\\\*) (*@/// procedure TStringAlignGrid.ReadColorColRow(Reader:TReader; kind: byte);
procedure ReadColorRow(Reader: TReader);
@\\\*) (*@/// procedure TStringAlignGrid.ReadColorRow(Reader: TReader);
procedure ReadEditCell(Stream: TStream);
@\\\*) (*@/// The DFM read/write procedures
@\\\*) (*@\\\*) (*@/// Read and write several edit-enabled lists to the DFM *) { All the routines for the several edit-enabled lists } (*@/// procedure TStringAlignGrid.ReadEditCell(Stream: TStream);
procedure ReadEditCol(Stream: TStream);
@\\\*) (*@/// procedure TStringAlignGrid.ReadEditCol(Stream: TStream);
function ReadEditColRow(Stream: TStream; list:TList):boolean;
Utility functions
@\\\*) { All the ReadCol, ReadRow are so similar, so these to routines are there
to avoid code-copy } (*@/// function TStringAlignGrid.ReadEditColRow(Stream: TStream; list:TList):boolean;
procedure ReadEditRow(Stream: TStream);
@\\\*) (*@/// procedure TStringAlignGrid.ReadEditRow(Stream: TStream);
procedure ReadFixedAlignCol(Stream: TStream);
@\\\*) (*@/// procedure TStringAlignGrid.ReadFixedAlignCol(Stream: TStream);
procedure ReadFixedAlignRow(Stream: TStream);
@\\\*) (*@/// procedure TStringAlignGrid.ReadFixedAlignRow(Stream: TStream);
procedure ReadFixedBrushCol(Reader: TReader);
@\\\*) (*@/// procedure TStringAlignGrid.ReadFixedBrushCol(Reader: TReader);
procedure ReadFixedBrushRow(Reader: TReader);
@\\\*) (*@/// procedure TStringAlignGrid.ReadFixedBrushRow(Reader: TReader);
procedure ReadFixedColorCol(Reader: TReader);
@\\\*) (*@/// procedure TStringAlignGrid.ReadFixedColorCol(Reader: TReader);
procedure ReadFixedColorRow(Reader: TReader);
@\\\*) (*@/// procedure TStringAlignGrid.ReadFixedColorRow(Reader: TReader);
procedure ReadFixedFontCol(Reader: TReader);
@\\\*) (*@/// procedure TStringAlignGrid.ReadFixedFontCol(Reader: TReader);
procedure ReadFixedFontRow(Reader: TReader);
@\\\*) (*@/// procedure TStringAlignGrid.ReadFixedFontRow(Reader: TReader);
function ReadFont(Reader: TReader):TFont;
@\\\*) (*@/// function TStringAlignGrid.ReadFont(Reader: TReader):TFont;
procedure ReadFontCell(Reader: TReader);
@\\\*) (*@/// The DFM read/write procedures
@\\\*) (*@\\\*) (*@/// Read and write several font lists to the DFM *) { All the routines for the different font lists } (*@/// procedure TStringAlignGrid.ReadFontCell(Reader: TReader);
function ReadFontCellInt(Reader: TReader; list:TList):boolean;
@\\\*) { All the ReadCol, ReadRow are so similar, so these to routines are there
to avoid code-copy } (*@/// function TStringAlignGrid.ReadFontCellInt(Reader: TReader; list:TList):boolean;
procedure ReadFontCol(Reader: TReader);
@\\\*) (*@/// procedure TStringAlignGrid.ReadFontCol(Reader: TReader);
function ReadFontColRow(Reader: TReader; list:TList):boolean;
@\\\*) (*@/// function TStringAlignGrid.ReadFontColRow(Reader:TReader; list:TList):boolean;
procedure ReadFontRow(Reader: TReader);
@\\\*) (*@/// procedure TStringAlignGrid.ReadFontRow(Reader: TReader);
procedure ReadHint(Reader: TReader);
@\\\*) (*@\\\*) (*@/// Read and write the hint strings to the DFM *) { The hint and the cell strings } (*@/// procedure TStringAlignGrid.ReadHint(Reader: TReader);
procedure ReadSelColorCell(Reader: TReader);
@\\\*) (*@/// The DFM read/write procedures
@\\\*) (*@\\\*) (*@/// Read and write several selected color lists to the DFM *) (*@/// procedure TStringAlignGrid.ReadSelColorCell(Reader: TReader);
procedure ReadSelColorCol(Reader: TReader);
@\\\*) (*@/// procedure TStringAlignGrid.ReadSelColorCol(Reader: TReader);
function ReadSelColorColRow(Reader: TReader; list:TList):boolean;
@\\\*) { All the ReadCol, ReadRow are so similar, so these to routines are there
to avoid code-copy } (*@/// function TStringAlignGrid.ReadSelColorColRow(Reader:TReader; list:TList):boolean;
procedure ReadSelColorRow(Reader: TReader);
@\\\*) (*@/// procedure TStringAlignGrid.ReadSelColorRow(Reader: TReader);
procedure ReadSelFontColorCell(Reader: TReader);
@\\\*) (*@/// The DFM read/write procedures
@\\\*) (*@\\\*) (*@/// Read and write several selected font color lists to the DFM *) (*@/// procedure TStringAlignGrid.ReadSelFontColorCell(Reader: TReader);
procedure ReadSelFontColorCol(Reader: TReader);
@\\\*) (*@/// procedure TStringAlignGrid.ReadSelFontColorCol(Reader: TReader);
procedure ReadSelFontColorRow(Reader: TReader);
@\\\*) (*@/// procedure TStringAlignGrid.ReadSelFontColorRow(Reader: TReader);
procedure RowHeightsChanged;
@\\\*) (*@/// procedure TStringAlignGrid.RowHeightsChanged;
procedure RowMoved(FromIndex, ToIndex: Longint);
@\\\*) (*@/// Insertion and removing and moving and exchanging of columns and rows
@\\\*) (*@/// procedure TStringAlignGrid.RowMoved(FromIndex, ToIndex: Longint);
procedure SetAlign(const Value: TMyAlign);
@\\\*) (*@/// procedure TStringAlignGrid.SetAlign(const Value: TMyAlign);
procedure SetAlignCell(ACol,ARow: integer; const Value: TMyAlign);
@\\\*) (*@/// procedure TStringAlignGrid.SetAlignCell(ACol,ARow:integer; const Value: TMyAlign);
procedure SetAlignCol(ACol: integer; const Value: TMyAlign);
@\\\*) (*@/// procedure TStringAlignGrid.SetAlignCol(ACol:integer; const Value: TMyAlign);
procedure SetAlignRow(ARow:integer; const Value: TMyAlign);
@\\\*) (*@/// procedure TStringAlignGrid.SetAlignRow(ARow:integer; const Value: TMyAlign);
procedure SetBrushCell(ACol,ARow: integer; const Value: TBrush);
@\\\*) (*@/// procedure TStringAlignGrid.SetBrushCell(ACol,ARow: integer; const Value: TBrush);
procedure SetBrushCol(ACol: integer; const Value: TBrush);
@\\\*) (*@/// procedure TStringAlignGrid.SetBrushCol(ACol: integer; const Value: TBrush);
procedure SetBrushFixedCol(ACol: integer; const Value: TBrush);
@\\\*) (*@/// procedure TStringAlignGrid.SetBrushFixedCol(ACol: integer; const Value: TBrush);
procedure SetBrushFixedRow(ARow: integer; const Value: TBrush);
@\\\*) (*@/// procedure TStringAlignGrid.SetBrushFixedRow(ARow: integer; const Value: TBrush);
procedure SetBrushRow(ARow: integer; const Value: TBrush);
@\\\*) (*@/// procedure TStringAlignGrid.SetBrushRow(ARow: integer; const Value: TBrush);
procedure SetColorCell(ACol,ARow: integer; const Value: TColor);
@\\\*) (*@/// procedure TStringAlignGrid.SetColorCell(ACol,ARow:integer; const Value: TColor);
procedure SetColorCol(ACol: integer; const Value: TColor);
@\\\*) (*@/// procedure TStringAlignGrid.SetColorCol(ACol:integer; const Value: TColor);
procedure SetColorRow(ARow:integer; const Value: TColor);
@\\\*) (*@/// procedure TStringAlignGrid.SetColorRow(ARow:integer; const Value: TColor);
procedure SetEditCell(ACol,ARow: integer; const Value: Boolean);
@\\\*) (*@/// procedure TStringAlignGrid.SetEditCell(ACol,ARow:integer; const Value: boolean);
procedure SetEditCol(ACol: integer; const Value: Boolean);
@\\\*) (*@/// procedure TStringAlignGrid.SetEditCol(ACol:integer; const Value: boolean);
procedure SetEditRow(ARow:integer; const Value: Boolean);
@\\\*) (*@/// procedure TStringAlignGrid.SetEditRow(ARow:integer; const Value: boolean);
procedure SetFixAlignCol(ACol: integer; const Value: TMyAlign);
@\\\*) (*@/// procedure TStringAlignGrid.SetFixAlignCol(ACol:integer; const Value: TMyAlign);
procedure SetFixAlignRow(ARow:integer; const Value: TMyAlign);
@\\\*) (*@/// procedure TStringAlignGrid.SetFixAlignRow(ARow:integer; const Value: TMyAlign);
procedure SetFixColorCol(ACol: integer; const Value: TColor);
@\\\*) (*@/// procedure TStringAlignGrid.SetFixColorCol(ACol:integer; const Value: TColor);
procedure SetFixColorRow(ARow:integer; const Value: TColor);
@\\\*) (*@/// procedure TStringAlignGrid.SetFixColorRow(ARow:integer; const Value: TColor);
procedure SetFixedColor(const Value: TColor);
@\\\*) (*@\\\*) (*@/// procedure TStringAlignGrid.SetFixedColor(const Value: TColor);
procedure SetFontCell(ACol,ARow: integer; const Value: TFont);
@\\\*) (*@/// procedure TStringAlignGrid.SetFontCell(ACol,ARow: integer; const Value: TFont);
procedure SetFontCol(ACol: integer; const Value: TFont);
@\\\*) (*@/// procedure TStringAlignGrid.SetFontCol(ACol: integer; const Value: TFont);
procedure SetFontFixedCol(ACol: integer; const Value: TFont);
@\\\*) (*@/// procedure TStringAlignGrid.SetFontFixedCol(ACol: integer; const Value: TFont);
procedure SetFontFixedRow(ARow: integer; const Value: TFont);
@\\\*) (*@/// procedure TStringAlignGrid.SetFontFixedRow(ARow: integer; const Value: TFont);
procedure SetFontRow(ARow: integer; const Value: TFont);
@\\\*) (*@/// procedure TStringAlignGrid.SetFontRow(ARow: integer; const Value: TFont);
procedure SetHintCell(ACol,ARow: integer; const Value: string);
@\\\*) (*@/// procedure TStringAlignGrid.SetHintCell(ACol,ARow: integer; const Value: string);
procedure SetSelCellColor(Value: TColor);
@\\\*) (*@/// procedure TStringAlignGrid.SetSelCellColor(Value: TColor);
procedure SetSelColorCell(ACol,ARow: integer; const Value: TColor);
@\\\*) (*@/// procedure TStringAlignGrid.SetSelColorCell(ACol,ARow:integer; const Value: TColor);
procedure SetSelColorCol(ACol: integer; const Value: TColor);
@\\\*) (*@/// procedure TStringAlignGrid.SetSelColorCol(ACol:integer; const Value: TColor);
procedure SetSelColorRow(ARow:integer; const Value: TColor);
@\\\*) (*@/// procedure TStringAlignGrid.SetSelColorRow(ARow:integer; const Value: TColor);
procedure SetSelFontColor(Value: TColor);
@\\\*) (*@/// procedure TStringAlignGrid.SetSelFontColor(Value: TColor);
procedure SetSelFontColorCell(ACol,ARow: integer; const Value: TColor);
@\\\*) (*@/// procedure TStringAlignGrid.SetSelFontColorCell(ACol,ARow:integer; const Value: TColor);
procedure SetSelFontColorCol(ACol: integer; const Value: TColor);
@\\\*) (*@/// procedure TStringAlignGrid.SetSelFontColorCol(ACol:integer; const Value: TColor);
procedure SetSelFontColorRow(ARow:integer; const Value: TColor);
@\\\*) (*@/// procedure TStringAlignGrid.SetSelFontColorRow(ARow:integer; const Value: TColor);
procedure ShowHintCell(var HintStr: string; var CanShow: Boolean; var HintInfo: THintInfo);
@\\\*) (*@\\\*) (*@/// Utility methods for the cell-specific hints *) (*@/// procedure TStringAlignGrid.ShowHintCell(var HintStr: string; var CanShow: Boolean; var HintInfo: THintInfo);
function textheight(ACol,ARow:integer):integer;
@\\\*) (*@/// function TStringAlignGrid.textheight(ACol,ARow:integer):integer;
function textwidth(ACol,ARow:integer):integer;
@\\\*) (*@/// function TStringAlignGrid.textwidth(ACol,ARow:integer):integer;
procedure WMChar(var Msg: TWMChar);
@\\\*) (*@/// procedure TStringAlignGrid.WMChar(var Msg: TWMChar);
procedure WriteAlignCell(Stream: TStream);
@\\\*) (*@/// procedure TStringAlignGrid.WriteAlignCell(Stream: TStream);
procedure WriteAlignCol(Stream: TStream);
@\\\*) (*@/// procedure TStringAlignGrid.WriteAlignCol(Stream: TStream);
procedure WriteAlignColRow(Stream: TStream; count: integer; list:TList);
@\\\*) (*@/// procedure TStringAlignGrid.WriteAlignColRow(Stream: TStream; count: integer; list:TList);
procedure WriteAlignRow(Stream: TStream);
@\\\*) (*@/// procedure TStringAlignGrid.WriteAlignRow(Stream: TStream);
procedure WriteBrush(Writer: TWriter; v:TBrush);
@\\\*) { Writing and reading a single Brush entry } (*@/// procedure TStringAlignGrid.WriteBrush(Writer: TWriter; v:TBrush); *) { The same comment as in WriteFont applies here
procedure WriteBrushCell(Writer: TWriter);
@\\\*) (*@/// procedure TStringAlignGrid.WriteBrushCell(Writer: TWriter);
procedure WriteBrushCellInt(Writer: TWriter; x,y:integer; list:TList);
@\\\*) (*@/// procedure TStringAlignGrid.WriteBrushCellInt(Writer: TWriter; x,y:integer; list:TList);
procedure WriteBrushCol(Writer: TWriter);
@\\\*) (*@/// procedure TStringAlignGrid.WriteBrushCol(Writer: TWriter);
procedure WriteBrushColRow(Writer: TWriter; count: integer; list:TList);
@\\\*) (*@/// procedure TStringAlignGrid.WriteBrushColRow(Writer:TWriter; count:integer; list:TList);
procedure WriteBrushRow(Writer: TWriter);
@\\\*) (*@/// procedure TStringAlignGrid.WriteBrushRow(Writer: TWriter);
procedure WriteCells(Writer: TWriter);
@\\\*) (*@/// procedure TStringAlignGrid.WriteCells(Writer: TWriter);
procedure WriteEditCell(Stream: TStream);
@\\\*) (*@/// procedure TStringAlignGrid.WriteEditCell(Stream: TStream);
procedure WriteEditCol(Stream: TStream);
@\\\*) (*@/// procedure TStringAlignGrid.WriteEditCol(Stream: TStream);
procedure WriteEditColRow(Stream: TStream; count: integer; list:TList);
@\\\*) (*@/// procedure TStringAlignGrid.WriteEditColRow(Stream: TStream; count: integer; list:TList);
procedure WriteEditRow(Stream: TStream);
@\\\*) (*@/// procedure TStringAlignGrid.WriteEditRow(Stream: TStream);
procedure WriteFixedAlignCol(Stream: TStream);
@\\\*) (*@/// procedure TStringAlignGrid.WriteFixedAlignCol(Stream: TStream);
procedure WriteFixedAlignRow(Stream: TStream);
@\\\*) (*@/// procedure TStringAlignGrid.WriteFixedAlignRow(Stream: TStream);
procedure WriteFixedBrushCol(Writer: TWriter);
@\\\*) (*@/// procedure TStringAlignGrid.WriteFixedBrushCol(Writer: TWriter);
procedure WriteFixedBrushRow(Writer: TWriter);
@\\\*) (*@/// procedure TStringAlignGrid.WriteFixedBrushRow(Writer: TWriter);
procedure WriteFixedFontCol(Writer: TWriter);
@\\\*) (*@/// procedure TStringAlignGrid.WriteFixedFontCol(Writer: TWriter);
procedure WriteFixedFontRow(Writer: TWriter);
@\\\*) (*@/// procedure TStringAlignGrid.WriteFixedFontRow(Writer: TWriter);
procedure WriteFont(Writer: TWriter; v:TFont);
@\\\*) { Writing and reading a single font entry } (*@/// procedure TStringAlignGrid.WriteFont(Writer: TWriter; v:TFont); *) { I HATE Borland - here a simple Writer.WriteProperties() would do, but these } { idiots have made this method private and only the trivial ones are public. } { They invent such powerfull mechanisms to access properties at design time } { and then they destroy any way to use these for advanced components :-( } { So I have to write every property and not only those that are changed } { from the default, and I have to do the assumption that they won't change } { the TFontStyles and TFontPitch types as that would run this into great } { problems. And of course what to do with a beast like a TButton instead of } { a TFont - then the mechanism below won't be enough. } { So anyone knowing a better way to do it is greatly welcome!
procedure WriteFontCell(Writer: TWriter);
@\\\*) (*@/// procedure TStringAlignGrid.WriteFontCell(Writer: TWriter);
procedure WriteFontCellInt(Writer: TWriter; x,y:integer; list:TList);
@\\\*) (*@/// procedure TStringAlignGrid.WriteFontCellInt(Writer: TWriter; x,y:integer; list:TList);
procedure WriteFontCol(Writer: TWriter);
@\\\*) (*@/// procedure TStringAlignGrid.WriteFontCol(Writer: TWriter);
procedure WriteFontColRow(Writer: TWriter; count: integer; list:TList);
@\\\*) (*@/// procedure TStringAlignGrid.WriteFontColRow(Writer:TWriter; count:integer; list:TList);
procedure WriteFontRow(Writer: TWriter);
@\\\*) (*@/// procedure TStringAlignGrid.WriteFontRow(Writer: TWriter);
procedure WriteHint(Writer: TWriter);
@\\\*) (*@/// procedure TStringAlignGrid.WriteHint(Writer: TWriter);
procedure WriteSelColorCell(Writer: TWriter);
@\\\*) (*@/// procedure TStringAlignGrid.WriteSelColorCell(Writer: TWriter);
procedure WriteSelColorCol(Writer: TWriter);
@\\\*) (*@/// procedure TStringAlignGrid.WriteSelColorCol(Writer: TWriter);
procedure WriteSelColorColRow(Writer: TWriter; count:integer; list:TList);
@\\\*) (*@/// procedure TStringAlignGrid.WriteSelColorColRow(Writer:TWriter; count:integer; list:TList);
procedure WriteSelColorRow(Writer: TWriter);
@\\\*) (*@/// procedure TStringAlignGrid.WriteSelColorRow(Writer: TWriter);
procedure WriteSelFontColorCell(Writer: TWriter);
@\\\*) (*@/// procedure TStringAlignGrid.WriteSelFontColorCell(Writer: TWriter);
procedure WriteSelFontColorCol(Writer: TWriter);
@\\\*) (*@/// procedure TStringAlignGrid.WriteSelFontColorCol(Writer: TWriter);
procedure WriteSelFontColorRow(Writer: TWriter);
@\\\*) (*@/// procedure TStringAlignGrid.WriteSelFontColorRow(Writer: TWriter);
property AfterLastCellEdit : t_lastcell
property AfterLastCellTab : t_lastcell
property Alignment : TMyAlign
@\\\
property AutoEditNextCell : boolean
property DrawSelection : boolean
property Editable : boolean
@\\\
property FixedColor :
@\\\
property NextCellEdit : T_nextcell
property NextCellTab : T_nextcell
property SelectedCellColor : TColor
property SelectedFontColor : TColor
property ShowCellHints : boolean
property AlignCell : TMyAlign
@/// property AlignCell/AlignCol/FixAlignCol/AlignRow/FixAlignRow
property AlignCol : TMyAlign
property AlignRow : TMyAlign
property CellBrush : TBrush
@/// property CellBrush/ColBrush/FixedColBrush/RowBrush/FixedRowBrush *) { The Brush for each cell and for col and row
property CellFont : TFont
@/// property CellFont/ColFont/FixedColFont/RowFont/FixedRowFont
property ColBrush : TBrush
property ColFont : TFont
property ColorCell : TColor
@/// property ColorCell/ColorCol/FixColorCol/ColorRow/FixColorRow
property ColorCol : TColor
property ColorRow : TColor
property EditCell : Boolean
@/// property EditCell/EditCol/EditRow
property EditCol : Boolean
property EditRow : Boolean
property FixAlignCol : TMyAlign
property FixAlignRow : TMyAlign
property FixColorCol : TColor
property FixColorRow : TColor
property FixedColBrush : TBrush
property FixedColFont : TFont
property FixedRowBrush : TBrush
property FixedRowFont : TFont
property HintCell : string
property RowBrush : TBrush
property RowFont : TFont
property SelectedColorCell : TColor
@/// property ColorCell/ColorCol/FixColorCol/ColorRow/FixColorRow
property SelectedColorCol : TColor
property SelectedColorRow : TColor
property SelectedFontColorCell : TColor
@/// property ColorCell/ColorCol/FixColorCol/ColorRow/FixColorRow
property SelectedFontColorCol : TColor
property SelectedFontColorRow : TColor
event OnAfterEdit : TCellEvent
event OnBeforeEdit : TCellEvent
event OnCancelEdit : TCellEvent
event OnColWidthsChanged : TNotifyEvent
event OnCompareCol : TCompareFunction
event OnCompareRow : TCompareFunction
event OnRowHeightsChanged : TNotifyEvent
edit_visible : boolean;
@\\\*) (*@/// The Inplace-Edit and it's events sent to the grid
FAlign : TMyAlign;
@\\\*) (*@/// Routines and variables for the alignments
FAlignCell : TList;
FAlignCol : TList;
@/// The lists
FAlignRow : TList;
FAlwaysEdit : boolean;
allow switching on editing for single objects only
FBrushCell : TList;
FBrushCol : TList;
@/// The lists
FBrushRow : TList;
FCell : TList;
@\\\*) (*@/// Routines and variables for the cells itself
FEditable : boolean;
@\\\*) (*@/// Routines and variables for the edit-enabled
FEditCell : TList;
FEditCol : TList;
for the component editor to have all cell editable } (*@/// The lists
FEditRow : TList;
FFAlignCol : TList;
FFAlignRow : TList;
FFBrushCol : TList;
FFBrushRow : TList;
FFFontCol : TList;
FFFontRow : TList;
FFixedBrush : TBrush;
FFontCell : TList;
FFontCol : TList;
@/// The lists
FFontRow : TList;
fheightschanged : TNotifyEvent;
FHintCell : TList;
FHintCellLast : TPoint;
@\\\*) (*@\\\*) (*@/// Routines and variables for the hints
FSaveAlignCell : Boolean;
@\\\*) (*@/// The save flags
FSaveAlignCol : Boolean;
FSaveAlignRow : Boolean;
FSaveBrushCell : Boolean;
@\\\*) (*@/// The save flags
FSaveBrushCol : Boolean;
FSaveBrushRow : Boolean;
FSaveCells : Boolean;
Only for loading and saving the cells property
FSaveEditCell : Boolean;
@\\\*) (*@/// The save flags
FSaveEditCol : Boolean;
FSaveEditRow : Boolean;
FSaveFixedAlignCol : Boolean;
FSaveFixedAlignRow : Boolean;
FSaveFixedBrushCol : Boolean;
FSaveFixedBrushRow : Boolean;
FSaveFixedFontCol : Boolean;
FSaveFixedFontRow : Boolean;
FSaveFontCell : Boolean;
@\\\*) (*@/// The save flags
FSaveFontCol : Boolean;
FSaveFontRow : Boolean;
FSaveHint : Boolean;
FSaveSelColorCell : Boolean;
@\\\*) (*@/// The save flags
FSaveSelColorCol : Boolean;
FSaveSelColorRow : Boolean;
FSaveSelFontColorCell : Boolean;
@\\\*) (*@/// The save flags
FSaveSelFontColorCol : Boolean;
FSaveSelFontColorRow : Boolean;
FSelColorCell : TList;
FSelColorCol : TList;
@/// The lists
FSelColorRow : TList;
FSelFontColorCell : TList;
FSelFontColorCol : TList;
@/// The lists
FSelFontColorRow : TList;
FShowCellHints : Boolean;
fwidthschanged : TNotifyEvent;
@\\\*) (*@/// Events for col and row resizing
f_drawselect : boolean;
f_fixedcols : integer;
f_fixedrows : integer;
f_lastcell_edit : t_lastcell;
f_lastcell_tab : t_lastcell;
f_last_sel_len : integer;
f_last_sel_pos : integer;
f_nextcell : Boolean;
f_nextcell_edit : T_nextcell;
f_nextcell_tab : T_nextcell;
f_on_after_edit : TCellEvent;
f_on_before_edit : TCellEvent;
f_on_cancel_edit : TCellEvent;
f_reshow_edit : boolean;
f_SelCellColor : TColor;
f_SelFontColor : TColor;
@\\\*) (*@/// The other properties
f_compare_col : TCompareFunction;
@\\\*) (*@/// Sorting
f_compare_row : TCompareFunction;