Specification
Specification
EhLib.VclFmx component library - Software specification
Software type:
EhLib.VclFmx is a library of components, classes, and functions for Delphi, C++ Builder, and Lazarus.
Purpose
EhLib.VclFmx provides a comprehensive set of interactive UI controls and in-memory data structures created to help developers build professional UI applications that work with databases.
The library is designed to simplify the development of applications where end users can efficiently view, edit, process, and manage data.
Key Features
The library allows developers to:
- View database query results using flexible tabular and visual controls
- Load, store, and manipulate data in memory (e.g., using
TMemTableEh) for further processing and display - Interactively edit and input data, which can then be saved back to a database or other storage systems
- Sort, filter, group, and search data efficiently using the
Vcl.TDBGridEhandFmx.TDataGridEhcontrols - Print and preview the current state of controls
- Export data to multiple formats, including PDF, XLS, XLSX, RTF, and TXT
Editions
EhLib.VclFmx Professional (Source codes included)
The Professional (Source codes included) edition contains the source code of the library. The source code is written in Delphi (Object Pascal) language.
EhLib.VclFmx Standard (Without source codes)
The Standard (Without Source Code) edition includes only the compiled binary files of the library for the Windows 32-bit and Windows 64-bit platforms.
This edition does not include design-time packages for the RAD Studio IDE (64-bit).
In addition, the Standard (Without Source Code) edition has the following limitations:
- No Lazarus binaries. The EhLib Without Source Code edition does not support the Lazarus IDE.
- No BDE DataDriver packages. The binary files of the
EhLibBDEDataDriversandDclEhLibBDEDataDriverspackages are not included, therefore theTBDEDataDriverEhcomponent is unavailable.
EhLib.VclFmx Evaluation Version
The Evaluation edition contains compiled binary files of the library for Windows-32, Windows-64 platforms for All RAD Studio versions, binary files for Lazarus (Lazarus 2.2.2 x86_64-win64-win32/win64) and also compiled binary files for Android64, iOSDevice64, Linux64, OSX64 platforms for RAD Studio 12.3.
It is free for download and intended to evaluate the library's capabilities before purchasing a paid license.
Supported frameworks (Base Libraries):
- VCL (Visual Components Library) for Delphi and C++ Builder
- LCL (Lazarus Component Library) for Lazarus
- FMX (FireMonkey cross-platform GUI framework) Delphi and C++ Builder
- CrossVCL (Add-on over the VCL library) for Delphi.
Supported platforms and OS:
Windows 32-bit- inDelphi,C++ BuilderandLazarusdevelopment environment (All editions)Windows 64-bit- inDelphi,C++ BuilderandLazarusdevelopment environment (All editions)Android 64-bit- inDelphi, C++ Builder 11.3,Delphi, C++ Builder 12or higher (Professional source included edition)iOS 64-bit- inDelphi, C++ Builder 11.3,Delphi, C++ Builder 12or higher (Professional source included edition)MacOS 64-bit- inDelphi, C++ Builder 11.3,Delphi, C++ Builder 12or higher (Professional source included edition)Linux 64-bit- (Option 1) inDelphi 11.3,Delphi 12or higher (Professional source included edition)Linux 64-bit- (Option 2) in theLazarusdevelopment environment (Tested underUbuntu 22.04) (Professional source included edition)
Supported programming languages:
- Delphi (Object Pascal)
- C++ Builder
- Lazarus (Free Pascal)
Supported development environment versions:
- Embarcadero RAD Studio 2010 (Supported by EhLibRtl, EhLibVcl packages)
- Embarcadero RAD Studio XE (Supported by EhLibRtl, EhLibVcl packages)
- Embarcadero RAD Studio XE2 (Supported by EhLibRtl, EhLibVcl packages)
- Embarcadero RAD Studio XE3 (Supported by EhLibRtl, EhLibVcl packages)
- Embarcadero RAD Studio XE4 (Supported by EhLibRtl, EhLibVcl packages)
- Embarcadero RAD Studio XE5 (Supported by EhLibRtl, EhLibVcl packages)
- Embarcadero RAD Studio XE6 (Supported by EhLibRtl, EhLibVcl packages)
- Embarcadero RAD Studio XE7 (Supported by EhLibRtl, EhLibVcl packages)
- Embarcadero RAD Studio XE8 (Supported by EhLibRtl, EhLibVcl packages)
- Embarcadero RAD Studio 10.0 Seattle (Supported by EhLibRtl, EhLibVcl packages)
- Embarcadero RAD Studio 10.1 Berlin (Supported by EhLibRtl, EhLibVcl packages)
- Embarcadero RAD Studio 10.2 Tokyo (Supported by EhLibRtl, EhLibVcl packages)
- Embarcadero RAD Studio 10.3 Rio (Supported by EhLibRtl, EhLibVcl packages)
- Embarcadero RAD Studio 10.4 Update 2 Sydney (Supported by EhLibRtl, EhLibVcl packages)
- Embarcadero RAD Studio 11.3 Alexandria (Supported by EhLibRtl, EhLibVcl, EhLibFmx packages)
- Embarcadero RAD Studio 12.3 Athens (Supported by EhLibRtl, EhLibVcl, EhLibFmx packages)
- Embarcadero RAD Studio 13.0 Florence (Supported by EhLibRtl, EhLibVcl, EhLibFmx packages)
- Lazarus 4.0 for Windows
- Lazarus 2.2.4 for Linux (Tested Under Ubuntu 22.04)
Ways to deliver the software to the client:
- The library is supplied in electronic form by downloading the installation package via the Internet.
Term of use of the library and license:
- The period of use of the library and license is not limited in time. For a period of one year from the date of purchase, the time for free receipt of new versions of the library is limited.
Technical support term:
- The term of technical support is not limited in time.
Library documentation is available in the following languages:
- English (as online html documentation and brief description doc file)
- Russian (as brief description in doc file)
Localization of the interface of used components includes the following languages:
- English
- Arabic
- Bulgarian
- Chinese (simplified)
- Czech
- French
- German
- Korean
- Spanish
- Persian
- Japanese
- Polish
- Portuguese
- Romanian
- Russian
- Slovak
- Turkish
- Ukrainian
Note: In the current version, translations for languages other than English are available only in the EhLibRtl and EhLibVcl packages.
Visual programming features:
The library includes visual components that allow you to quickly create and customize project forms without having to write code manually.
Working with the database
The visual components of the library do not depend on the database and allow you to interact with the database through any standard or third-party component that is inherited from TDataSet.
List of components and main classes by package:
EhLibRtl.dpk package:
- TMemTableEh
- TDataDriverEh
- TDataSetDriverEh
- TSQLDataDriverEh
- TBDEDataDriverEh
- TIBXDataDriverEh
- TDBXDataDriverEh
- TADODataDriverEh
- TADOConnectionProviderEh
- TDBXConnectionProviderEh
- TIBXConnectionProviderEh
- TDataSetTextExporterEh
- TDataSetTextImporterEh
- TDBSumList
- TXlsMemFileEh
EhLibVcl.dpk package:
- TDBGridEh
- TDBVertGridEh
- TDBLookupComboboxEh
- TDBEditEh
- TDBDateTimeEditEh
- TDBComboBoxEh
- TDBNumberEditEh
- TDBMemoEh
- TDBImageEh
- TDBRadioGroupEh
- TDBRichEditEh
- TPrintDBGridEh
- TPreviewBox
- TPrinterPreview
- TPdfPrinterEh
- TVirtualPrinter
- TPivotDataSourceEh
- TPivotGridEh
- TPivotGridToolBoxEh
- TPlannerDataSourceEh
- TPlannerControlEh
- TPlannerCalendarPickerEh
- TCustomDropDownFormEh
EhLibFmx.dpk package:
- TDataGridEh
- TDataVertGridEh
- TDataComboBoxEh
Limitations of the library functionality in various environments:
The library packages in all editions do not include support for the Windows 64-bit (Modern) platform.
Limitations of the EhLibFmx package:
- The EhLibFmx packages can be installed in RAD Studio 11.3 or higher.
Library limitations when developing an application for LCL (Lazarus IDE):
- EhLib (Lcl) package does not contain the
TDBRichEditEh,TPreviewBox,TPrintDBGridEhcomponents. - When developing Lcl applications in Lazarus under Linux, the editing buttons in the
TDBEditEh,TDBDateTimeEditEh,TDBNumberEditEh,TDBComboBoxEh,TDBLookupComboboxEhcomponents are not displayed on the screen and do not respond to mouse clicks. - The EhLibInstaller.exe program does not support installing packages in Lazarus IDE. To install packages in Lazarus IDE, read the instructions in the
Lazarusfolder of the library archive.
