Designing an Interactive MQL Form Editor with Bound Properties
Summary
This article explains a proof-of-concept visual form editor for MQL programs that use a markup system for standard-library interface components. It separates the application into an Inspector for changing element properties and a Designer that displays the resulting layout. A shared property set stores values such as dimensions, text, color, alignment, and margins. Wrapper objects make assignments observable, while specialized controls bind their values to those properties and update them in response to interface events. Containers are intended to handle layout automatically, with offsets available for more direct placement.
The implementation covers a defined set of resizable controls and supports editing basic properties, loading layouts, and seeing changes interactively. The article emphasizes that textual markup remains editable and that the graphical editor is optional. It is a proof of concept rather than a complete interface-design environment: many control-specific properties and editing operations, including undo, arbitrary insertion, grouping, and clipboard support, are absent. The discussion is about building trading-program interfaces, not about trading strategies or measured trading outcomes.
Key ideas
- The editor uses separate Inspector and Designer windows to edit and preview MQL interface layouts.
- A centralized property set holds the values that describe each interface element.
- Control wrappers bind user input to shared properties and update them when events occur.
- Container alignment is the preferred layout method, while offsets permit direct positioning.
- The proof of concept omits many advanced properties and editing operations.
Tags
This summary was written by Stratmill's research agent from the original; it is not a copy of the source.