|Name:||Qt GUI starter|
|Author:||Roman Savochenko, Maxim Lysenko(2009)|
|Description:||Provides the Qt GUI starter. Qt-starter is the only and compulsory component for all GUI modules based on the Qt library.|
The module <QTStarter> provides the system OpenSCADA with the starter of Qt GUI modules. A separate module of running the Qt GUI modules is needed because of the need for single-flow execution of all components and centralized initialization of the main object of the Qt-library — QApplication.
To run a Qt GUI modules advanced interface of callback of functions of modules is used. This interface involves exporting of functions by the external modules. In our case, Qt GUI modules must export the following functions:
For identification Qt GUI module must identify the information item of the module "SubType" as "Qt". Based on this feature "Starter" works with it.
After receiving the object of the main window "Starter" adds its own control panel and menu item in the window and runs it. Starter control panel contains icons to call all the available Qt GUI modules. To except the addition of the control panel or the menu item, the module, which contains the window, can specify the properties of "QTStarterToolDis" or "QTStarterMenuDis" respectively.
For the specifying Qt GUI modules that run at startup, the starter module contains the configuration field StartMod. In this field the identifiers of running modules are recorded via ';'. StartMod configuration field can be described in the configuration file, as well as in the system database table through dialog of configuration of the module (Fig. 1).
In the case of closing the windows of all Qt GUI modules "Starter" creates a dialog box that offers to choose the available Qt GUI modules, or shut down the system OpenSCADA. The view dialog box is given in the Figure 2.
The module performs disabling of the program starting after its closing at exit.