Creating Documents

Standard Properties
Specific Properties
Commands (Messages)

A Runtime Library based template is defined through its window hierarchy, messages and properties.

The template interface is constituted by properties and commands –messages send to the window. A Refentry is a collection of lists, describing the interface. There is a »variablelist« for standard properties, the common properties in Tk-windows. There is a »variablelist« for template specific properties, and a »variablelist« describing the commands, provided by a template window.

All these interface elements, have their distinct implementation. A property is just an entry inside the attributes variable. While a command is commonly implemented through a Tcl/Tk procedure.

Consequently, the documentation for a property cannot be done inside the Tcl-source code. Whereas a comment may suffice to document a command.

Standard properties occur frequently in an interface. The standard properties are listed inside the Tcl/Tk »options« man page. Jeszra recognizes standard properties and generates the documentation accordingly.

Specific properties are unique for the template. For example Example 9.5, “Property activestyle.xml” is unique for a »listbox« window. Every specific property must be documented.

When a XML-file named like the specific property, was located inside the DocBook directory or a sub-directory thereof –the sub-directory must be named after the template–, then Jeszra assumes that these file contains the description for the specific property.

The »varlistentry« inside of Example 9.5, “Property activestyle.xml” is then referenced as an »entity« from the generated gistbox refentry document. Gistbox contains a specific property activeStyle and activeStyle is a common property shared by all listbox-type windows.

A property definition inside the DocBook directory is globally visible. The same definition inside a sub-directory named identical with the template is only visible for documenting this particular template.

The global definition is recessive to the template specific one.

Parts of the template interface are directly definable in Jeszra.

Figure 9.1. Template Interface Page