Changes to Template built-in symbols in C9

As part of the ongoing work and evolution of the Win32 AppGen, and based on numerous requests the following template symbols are now built-in (as opposed to defined at the template level):

%Parameters – single, dependent from %Procedure
The full list of a procedure’s formal parameters separated by commas and enclosed in parentheses unless empty

%ProcedureParameterName – multi,  dependent from %Procedure
The list of names of all formal parameters as entered in %Parameters symbols; if missing then the name of that parameter as in %Prototype symbol is returned; if that is missing too, an AppGen generated name is returned

%ProcedureParameterOrigName – single, dependent from %ProcedureParameterName
The name of the parameter as entered in the %Prototype symbol

%ProcedureParameterType – single, dependent from %ProcedureParameterName
The type of the parameter as entered in the %Prototype symbol (without the CONST keyword and square brackets for array types)

%ProcedureParameterDefault – single, dependent from %ProcedureParameterName
The default value of parameters as entered in the %Prototype symbol

%ProcedureParameterOmitted – single, dependent from %ProcedureParameterName
Returns %True if the parameter is declared as omittable in the %Prototype symbol

%ProcedureParameterByReference  – single, dependent from %ProcedureParameterName
Returns %True if the parameter’s type is declared with leading * in the %Prototype symbol

%ProcedureParameterConstant – single, dependent from %ProcedureParameterName
Returns %True if the parameter’s type is declared with the CONST keyword in the %Prototype symbol

And a new built-in symbol has been introduced into C9:

 %ProcedureParameterDIMs – single, dependent from %ProcedureParameterName
Returns the number of dimensions if the parameter’s type is declared as an array in the %Prototype symbol (1 for [] , 2 for [,] , etc.)

The updated Application Generator reads TXA files produced by earlier Clarion versions. TXA files produced by the C9 AppGen can’t be read by previous versions.

These changes will be useful to all who write templates, but will benefit everyone and the visual change you’ll all immediately see is

ProtoParam-C9

ProtoParam-C8

 

In C8 the Parameters entry field is located inside the Procedure’s Actions dialog, whereas in C9 they are now moved to the Procedure Properties main dialog.