The EDIT objects

The EDIT objects are Terminal MGui objects that allow the user input text data.

EditField

This is the basic EDIT object in the MGui library.
When you click on the Edit button in the 'Object Creation Bar' you get an EditField object 10 characters large on a single text line.
The 'Object Specific' dialog window lets you set a filter to control user input. You may specify a basic filter as 'DIGIT' by clicking on the 'DIGIT' radio button in the left side. Moreover you can specify additional characters to be allowed in the 'Extra chars' field.
By setting an 'Actual width' greater than 'Visible width' you enable horizontal clipping.

If you activate the 'Multi Line Clipped' radio button then the 'Visible height' value may be raised to get a multi-line Edit object. The resulting Edit object doesn't have any restrictions in the actual number of text columns and rows.
The 'Auto Control color' button, sensitive for ScrolledEdit-SpinEdit-OptionEdit objects, enables the automatic color setting on the buttons and scrollbars of the composite Edit object. The color will be computed automatically based on the Edit background color.
The brightness of such computed color will be optimized.
The 'Disable Editing' button causes the object to refuse all user text input. The object text can only be set by the program. This feature is useful for OptionEdit and SpinEdit objects when you want the user to be able to choose only data supplied or controlled by the program (items in the OptionEdit's list and values achievable from spin buttons).
 

ScrolledEditWindow

This is the multiline EditWindow object featuring scrollbars.
 

OptionEdit

OptionEdit, similar to Windows' combobox, provides a list of items suitable for selection.
In addition to EditField attributes, the 'Object Specific' dialog window lets you set the number of items to be displayed in the associated SList object.

Moreover you can enable 'Item motion’ and sorting options.
The Item motion’ option enables the run-time feature that makes it possible to move items in the list using the ‘Alt’ + Up/Down Arrow keys.
‘Item motion’ and ‘Sorted’ options of course cannot be set both.
In addition this dialog allows the definition of items (and their associated ‘user data’) in the SList object belonging to the OptionEdit object.
Text in item user data, which is of type ‘void *’, will appear in the generated source ‘as is’, so you have to use something well known by the compiler.

The lists in OptionEdit objects in this dialog are unsorted and have the ‘item motion’ capability enabled. This way you can move items in this lists to establish the desired order in the SList of the target object being edited.
Of course, changing the order of the items in the OptionEdit list makes no sense if the target SList object is sorted.
 

SpinEdit

SpinEdit allows the user input text data using two spin buttons to raise/lower current value displayed in the object.
Setting the 'Spin' callback is mandatory.