TEgFireGrid - Data-Aware Grid for Delphi FireMonkey, Windows and Android
TEgFireGrid is a data-aware grid for FireMonkey (FMX)
applications on Windows and Android. It is bound to any
TDataSet descendant (FireDAC, ElevateDB, IBX, dbExpress,
UniDAC, etc.) through a TDataSource, as the VCL
TDBGrid is, with no LiveBindings. It draws itself with the
resources of the active FMX style, so it follows every stock or custom
style, light or dark, without a style file of its own.
TEgFireGrid is the FireMonkey sibling of the VCL grid
TEgDBGridEx: where a feature exists in both, it has the
same name, and the keyboard and editing rules follow the VCL
TDBGrid.
If you are using the demo version, the full version can be purchased at sales.easygate.pt.
For support requests, contact support@sales.easygate.pt, or use the online support form.
| Feature | Description | See |
|---|---|---|
| Every FMX style, light or dark | The grid, its titles, check boxes and selection come from the active style’s own resources. The selection tint is kept translucent so the text stays legible under every theme. Colours of your own can still be set for the cells and the titles. | Platforms, styles
and fonts, Color, TitleColor |
| Custom fonts, per platform category | Font and font colour for the cells and the titles, grid-wide or per column, applied on the desktop, on mobile, or both; elsewhere the style’s font is kept. | Font, ApplyCustomFontOnDesktop,
ApplyCustomFontOnMobile |
| In-place editors chosen by the data | Text, number (only the characters the number kind accepts), multi-line memo, pick list, lookup list, date picker with a time box, and check box. | Editing, DataKind,
PickList,
DateEditor |
| Editing rules of the VCL grid | The dataset enters edit state at the first change and posts when the row changes; Esc puts the text back, and a second Esc cancels the row. Always-visible editor, cancel on exit and Enter as Tab are options. | Editing, Options, TabOnEnter |
| Built for touch | A tap acts when the finger lifts, so a scroll never selects; a long press is the right-click; a swipe moves one column; titles are reordered with a long press. On Android the edited row moves above the virtual keyboard, and the Back key ends an edit. | Selection,
keyboard and touch, EditRowToTop |
| Multi-selection with mouse, keyboard or touch | Ctrl and Shift as in the VCL grid on the desktop, Android’s selection mode on a touch screen. The selection is kept by row identity, so it survives scrolling and sorting. | TouchSelection,
SelectedRowIds,
OnSelectionChange |
| Clickable images in cells, titles and the corner | Icons from an image list, each with its own click event and hover cursor. | Images, ImageIndex,
TitleImageIndex,
CornerImageIndex,
OnCellImageClick |
| Memo text and pictures in the cells | A memo field’s text is shown in its cell, up to a character limit. A graphic field is shown as a picture (JPEG, PNG, BMP, GIF, and the other formats the platform decodes), the format detected row by row; a plain BLOB field can be tried as a picture too. | MemoMaxChars,
DetectBlobImages,
OnGraphicError |
| Word wrap, shrink-to-fit and vertical alignment | For the cells and for the titles, grid-wide or per column, with a floor for the shrunk font size. | Options,
MinFontSize,
CellVAlign |
| A second title line per column | An optional SubTitle below the title, with its own font
and colour. |
SubTitle,
SubTitleFont |
| Full control of each cell and title before it is shown | Text, background colour, text colour, font style and icon, cell by cell; text, subtitle, colours and icon, title by title. | OnBeforeDrawCell,
OnBeforeDrawTitle |
| Variables and line breaks in texts | <var>Name</var> and <br>
markers in cell texts, titles and subtitles. A name is a field of the
row, or is answered by an event. |
OnGetVariableValue,
VariableRowIndex |
| Sorting by the title | A click on a title cycles its sort direction and shows the glyph; the application applies the order to its dataset in one event. The grid never reorders the data itself. | OnSortChange,
Sortable |
| Automatic column width | One column, or all of them, absorb the difference between the columns and the grid’s width on every resize. | AutoColumnWidth,
AutoColumnIndex,
AutoColumnAll |
| Columns sized and moved with the mouse, also in the Form Designer | At run time by dragging the titles (a long press on a touch screen). At design time through the Columns editor and the “Arrange Columns” mode of the grid’s menu. | Setup, OnColumnResize,
OnColumnMoved |
| Export to Excel (.xlsx) | All rows or only the selected ones, each value with its native Excel type, with no third-party library, on Windows and Android. | ExportToXLSX,
OnExportProgress |
| Events on the grid and on each column | The column-related events exist on both; the grid’s fires first,
then the column’s. OnColEnter and OnColExit,
which follow the active cell from column to column, exist on the grid
only, with the column as a parameter. |
TEgFireGridColumn,
OnColEnter,
OnColExit |
| Column helpers | Set the titles, widths, alignments or formats of every column in one call; find a column by field name or by title. | SetColumnTitles,
SetColumnWidths,
ColumnByFieldName |
TDataSource connected to any
TDataSet descendant; the grid does not depend on a database
engine.See Setup for the installation, the units to use, and the design-time tools.