The handling of Models is substantially updated in ATPDraw 5. Models is entirely handled in memory and does not require an initial sup-file. The header of the Model text is examinded and input/outpus and data are identified. Indexed arrays inputs/outputs NODE[1..26] and data DATA[1..n] are allowed (<2^31 number of data in total). The icon is automatically created. It is still possible to base a model on sup and mod files on disk.
The Models dialog box follows the standard component dialog, but with some important additions at the bottom as shown in the figure below.
The name of the model is shown but disabled. The user can click on Edit to show the model (which is stored internally in memory). The Model's text is displayed in the standard built in text-editor. The name of the Model is changed via the first line of the Model's header. The user can freely change the Model's text without concern of existing Models on disk or in other projects. It is possible to use File|Import or Paste to load/insert text from other text sources. If the number of input+outputs is changed by the used a new icon is automatically created. The user can change the number of data and the name and order of input/output and data without recreation of the icon (but nodes might then change position).
The user can then assign a Use As name to the model and mark internal variables for output (RECORD) as shown in the figure below. This is a new feature of version 5.4.
If several components uses a model with the same name, their Model's text also has to be equal. So when clicking OK in the component dialog the user is requested to overwrite all other Models in the project using the same Model. If this is not desirable the name of the Model has to be changed.