Procedure Properties--Frame

Top  Previous  Next

This template provides an MDI (Multiple Document Interface) parent frame, containing a predefined shell menu. The menu provides useful items such as an Exit command, plus the standard editing and window management commands.

When creating an MDI application, the Frame should be the main procedure. Use the Initiate Thread code template to start new execution threads for each MDI child window which you want to appear inside the frame.

Procedure Name

The Procedure Name is displayed here. Press the ellipsis button to change the name if desired. You will be prompted for a New Procedure Name, and the ability to Accept or Discard your changes.


The base template type used by this procedure is displayed here. You can change the template type by pressing the ellipsis button to the right. The Select Procedure Type dialog is displayed for a new selection if needed.


A short text description for the procedure, which appears next to the procedure name in the Application Tree dialog.

Press the ellipsis ( ... ) button to edit a longer (up to 1000 characters) description.


A category is used to help you group procedures together when the Category Tree Mode is active.

Module Name

The source code file to hold the code for the procedure. Select from the dropdown list. By default, the Application Generator names modules by taking the first five characters of the .APP file name, then adding a three digit number for each module.


Allows you to optionally type a custom procedure prototype which the Application Generator places in the MAP section.


Allows you to optionally enter any parameter names (a list of variables separated by a comma)

Declare Globally

Check this box to generate the procedure's prototype into the PROGRAM's MAP, rather than the MODULE's MAP. This makes the procedure callable from any other procedure, but it also forces a recompile of all program modules whenever you change the prototype.

Export Procedure

Declares the procedure in the export file, enabling it to be called by another application. Note: This checkbox is only available when the target file specified in Application Properties is a Dynamic Link Library (.DLL).


If any control templates were pre-defined in the current procedure template, or were in a window or report by you, this button accesses the Actions dialog for the control templates.

Control templates provide "off the rack" controls, such as list boxes, and the code to maintain them. This allows you to start with a "bare" procedure template, such as the generic window, and add controls to create your own browse or form windows.


Calls the Window Designer, to visually design the window. Press the ellipsis button to access the Window Editor.


Calls the Report Designer, to visually design the window. Press the ellipsis button to access the Report Editor.


In the Actions dialog:


Lets you specify parameter names (an optional list of variables separated by commas, with the entire list surrounded by parentheses) for your procedure, which you can pass to it from a calling procedure. You must specify the functionality for the parameters in embedded source code. See Also: PROCEDURE Calls .

Return Value

For functions, lets you specify the variable receiving the return value.

Window Behavior

Press this button to control the behavior of the Window. See Window Behavior

ListBox Styles

Press this button to maintain any List Box Styles used by this procedure. See List Box Styles.

BIND Fields and Procedures

Press this button to maintain all BINDed variables and procedures used in this procedure. See BIND Fields and Procedures.

Splash Procedure

Names a procedure to call after the application frame opens, but before any user events are generated. Select from the drop-down list, or type a new procedure name.


By convention, a splash procedure provides a visual or audio (or both) fanfare for your program.



In addition to the standard procedure prompts, there are Procedure Tabs that access other important procedure components:



References procedure calls made in hand-coded, embedded source.


Select this tab to access the Called Procedures dialog. To add a procedure, enter the procedure name in the Add a New Procedure section and press the Add button.


If procedure calls already exists, the procedures appear selected in the Called Procedures dialog. To add another, simply select it. To delete a call simply deselect it. Additional buttons allow you to select all or deselect all as needed.

The purpose of the Calls tab is to add procedures called in embedded source code. The normal way to add template procedures to the Application Tree is to create a menu or toolbar command, add the procedure name via its Actions button, and let the Application Generator automatically add it to the tree.


Displays the Embedded Source dialog. You can then select either a field specific event or window related action, then add executable source code to customize how the procedure will handle it.


After you choose an embed point in the Embedded Source dialog, you choose the code to execute. You can specify a call procedure, which is then added to the tree. You can write your own code with the text editor. Or, you can choose and customize a code template, which is a combination of pre-written code and prompts to "fill-in-the-blanks."


Embedded source gives you complete control over all the processing in your procedures. It's one of the most powerful tools Clarion provides you.


Accesses extension templates, if any are installed on your system. Extension Templates allow additional functionality through "add-ins" to the Application Generator.


Accesses the Formula Editor, which allows you to create computed and/or conditional fields, which you can then reference in the controls you place in your windows and reports.