Difference between revisions of "Gestinux util"

From Gestinux Wiki
Jump to navigation Jump to search
Line 3: Line 3:
 
It is the base of Gestinux and it allows even quicker developments.
 
It is the base of Gestinux and it allows even quicker developments.
  
Currently, up to Gestinux 1.1, it was designed as a subset of Gestinux : sources and translation files are located in subdirectories of the main Gestinux directory.  
+
Each version of Gestinux uses a specific version of Gestinux_util. Currently, sources and translation files are located in subdirectories of the main Gestinux directory. The trunk version, in developpement, requires Gestinux_util 1.4
  
The version 1.2 of Gestinux (in development) uses a new version of Gestinux_util. The package can be installed anywhere with its own translations, and can be used for other applications. For this version, specifically to have appropriate translations when running from within Lazarus EDI, you can add in the run parameters (Menu : Run > Run parameters) this qualifier :
+
The package can be installed anywhere with its own translations, and can be used for other applications. For this version, specifically to have appropriate translations when running from within Lazarus EDI, you should add in the run parameters (Menu : Run > Run parameters) this qualifier :
  
 
   " "  -u ${GESTINUX_UTIL}
 
   " "  -u ${GESTINUX_UTIL}
  
The first one (empty first parameter) is for backward compatibility.
+
The first one (empty first parameter) is for backward compatibility, probably useless today.
  
 
The second one refer to the macro ${GESTINUX_UTIL}, which is set automatically to the right value when you install the package. It is usefull to find the translation files specific to Gestinux_util, which can be outside application sources.
 
The second one refer to the macro ${GESTINUX_UTIL}, which is set automatically to the right value when you install the package. It is usefull to find the translation files specific to Gestinux_util, which can be outside application sources.

Revision as of 14:10, 18 November 2015

Gestinux_util is an utility package containing visual and non-visual components.

It is the base of Gestinux and it allows even quicker developments.

Each version of Gestinux uses a specific version of Gestinux_util. Currently, sources and translation files are located in subdirectories of the main Gestinux directory. The trunk version, in developpement, requires Gestinux_util 1.4

The package can be installed anywhere with its own translations, and can be used for other applications. For this version, specifically to have appropriate translations when running from within Lazarus EDI, you should add in the run parameters (Menu : Run > Run parameters) this qualifier :

 " "  -u ${GESTINUX_UTIL}

The first one (empty first parameter) is for backward compatibility, probably useless today.

The second one refer to the macro ${GESTINUX_UTIL}, which is set automatically to the right value when you install the package. It is usefull to find the translation files specific to Gestinux_util, which can be outside application sources.

This is only for execution with EDI.

Database Non-Visual components

They are only for database connection and management.

Currently based on Zeos Dbo components, with some methods added to create (and update) table structure from the datamodule.

Gestinux uses only descendants of TZConnection, TZQuery and TZTable.

Other midleware, specially the interface provided with Lazarus are said to be faster. One bad point is that components are specific to only one DBMS, and not following DBMS versions quickly enough. However, if someone wants to develop the same functionnalities and compare, he is welcome !

Forms

TGForm is a descendant of TForm with some common code handling keys and translations.

To create a new form (only in Gestinux 1.2), use File > New, and select only Module : GForm.

This will help to have a consistent handling of all forms in the application, and will allow future changes.

Visual components

Currently these components are based on LCL Controls. In the future, we plan to base them on CustomDrawn visual components, as soon as these components will be available, to enable portability on Androïd.

All these visual components are enabling dynamic translation of their captions and other texts.

We plan also to manage text orientation (LTR/RTL) automatically.

Display only components

  • TGMainMenu : a descendant of TMainMenu with automatic translation of captions and hints of all menu items, from the language file.
  • TGPopupMenu : a similar descendant of TPopupMenu
  • TGPageControl : a descendant of TPageControl with automatic translation of captions and hints of tabsheets, from the language file.
  • TGPanel and TGEntryPanel
  • TGLabel
  • TGDbGrid
  • TGNavButtons : a set of buttons, similar to DbNavigator to manage table data.
  • TGButton and TGSpeedButton

Data Entry components

These components are containing a label and an entry component.

Others