Discussion of article "MQL as a Markup Tool for the Graphical Interface of MQL Programs (Part 3). Form Designer"


New article MQL as a Markup Tool for the Graphical Interface of MQL Programs (Part 3). Form Designer has been published:

In this paper, we are completing the description of our concept of building the window interface of MQL programs, using the structures of MQL. Specialized graphical editor will allow to interactively set up the layout that consists of the basic classes of the GUI elements and then export it into the MQL description to use it in your MQL project. The paper presents the internal design of the editor and a user guide. Source codes are attached.

Editor is designed for the classes of Standard Library interface elements. To create similar tools for other libraries, you will have to write the specific implementations of all abstract entities from the markup system proposed. At the same time, you should be guided by the implementation of markup classes for the Standard Library.

It should be noted that the "library of standard components" definition is not factually correct, since in the context of our preceding articles, we had to considerably modify it and place to the parallel version branch in the ControlsPlus folder. Herein, we are going to continue using and modifying it.

Let us list the types of elements to be suppported by the editor.

  • Containers CBox with horizontal (CBoxH) and vertical (CBoxV) orientation,
  • CButton,
  • CEdit input box,
  • CLabel,
  • SpinEditResizable,
  • CDatePicker calendar,
  • Drop-down list ComboBoxResizable,
  • List ListViewResizable,
  • CheckGroupResizable, and
  • RadioGroupResizable.

All classes ensure adaptive resizing (some standard types could do that at the beginning, while we had to make considerable changes for the other ones).

Editing the Form

Editing the Form

Author: Stanislav Korotky

Guilherme Mendonca
That's very good!

It's amazing how MT5 it's getting better and better with the passing time.
In the near future I think anyone will be capable to build and set up any graphic interface wich will attend your nees.  
Stanislav Korotky
New example of a program with GUI built by declarative MQL layout design is published in the codebase - ChartBrowser.
  • www.mql5.com
This is an utility which allows you to list all open charts, indicators, expert advisers, and scripts in alphabetic order, and switch between them.