Sort %File the same as the Dictionary Editor | %FILE template symbol returns files in the same order that they are displayed in the dictionary editor.Note: This means FILEs are generated in this order |
| Create local maps | Check this box to generate a MAP structure for each source module that prototypes only the procedures referenced in the module. This results in faster compiles whenever you add new procedures or change procedure prototypes, because only the affected modules are recompiled. To generate accurate local maps, you must use the Procedures button in the Procedure Properties dialog to identify any procedures referenced in embedded source code.Clear this box to generate a single MAP for the PROGRAM module that prototypes all the program's procedures globally. This results in slower compile times whenever you add new procedures or change procedure prototypes, because the change to the PROGRAM module forces a recompile of all application source modules. (Valid only for ABC template chain) |
| Enable embed commenting | Check this box to optimize automatic comment generation specified by the application templates. |
====== ======
====== Synchronization tab ======
This tab lets you specify how and when control attributes defined in your data dictionary are applied to your application's procedures and controls. See Also: How to Synchronize your App and Dictionary .
| Synchronize Application when opened | Check this box to reapply data dictionary attributes each time your application is opened. Clear the box to apply the attributes only on your explicit command. |
| Synchronize Window definitions | Check this box to apply data dictionary attributes to WINDOW structures during application-wide synchronization. Clear the box to ignore WINDOW structures. |
| Synchronize Report definitions | Check this box to apply data dictionary attributes to REPORT structures during application-wide synchronization. Clear the box to ignore REPORT structures. |
| Update controls for variables | Check this box to apply memory variable control attributes to their associated controls. Clear the box to ignore controls associated with memory variables. |
| Primary attributes only | Check this box to apply only the primary control attributes. Primary attributes are those attributes set directly in the Column Properties dialog. They include Column Name, Characters (length), Screen Picture, Prompt Text, Column Heading, Case (UPR, CAP), Typing Mode (INS, OVER), Flags (IMM, PASSWORD, READONLY), Justification, Initial Value, Help IDs, Messages, Tool Tips, and Validity Checks. Secondary attributes are those attributes set by pressing the Properties button on the Window and Report tabs of the Field Properties dialog.Check the Primary attributes only box to speed up the synchronization process, especially if you synchronize each time you open the application. |
| Clear HELP, MSG, TIP if omitted in dictionary | Check this box to override control specific help attributes (set from the Window Designer) with blank help attributes from the data dictionary. Clear the box to retain control specific help attributes despite blank help attributes in the dictionary. |
| Allow control types to change | Check this box to apply new control types. For example, a SPIN may replace an ENTRY. The synchronizer does not change the number of controls on a window or report; therefore it does not change an OPTION to a LIST or vice versa. However, it does issue a warning when it encounters this situation.Changing a control's type can result in “orphaned” embed code. For example a SPIN supports a NewSelection embed point, but an ENTRY does not. Orphaned embed code should be manually moved to an appropriate place. |
| Allow conversion from list to drop list | Check this box to allow a drop list to replace a list. |
| Clear all other attributes if omitted in dictionary | Check this box to override all control specific attributes (attributes set from the Window Designer) except HELP, TIP, and MSG with blank attributes from the dictionary. Clear the box to retain control specific attributes despite blank attributes in the dictionary. Clearing the box also enables the More button so you can set each attribute individually. |
| More | Press this button to elect, for each individual attribute, whether to override the control specific (Window Designe) attribute with a blank attribute from the dictionary or whether to keep the attribute despite a blank attribute in the dictionary. Attributes are Font, Alert, Tally, Cursor, Key, Icon, and Colors. |
| Dictionary can override size | Check this box to let data dictionary size attributes prevail over Window Designer size attributes. Control sizes can change when the height or width value is default and the control's text changes, or when an explicit height or width value in the dictionary varies from the control specific (Window Designer) height or width values. |
| Ignore Freeze attribute setting | Check this box to apply data dictionary attributes to controls with the #Freeze attribute. Clear the box to leave frozen controls alone. If you synchronize a single control, the synchronizer ignores the #Freeze. #Freeze is effective only when you synchronize multiple controls, i.e. an entire application or procedure, a WINDOW structure such as an OPTION or a GROUP, or a REPORT structure such as a DETAIL, BREAK, HEADER, or FOOTER. |
| Refreeze frozen control after synchronize | Check this box to“ refreeze” the control after synchronizing it. Clear the box to “unfreeze” the control after synchronizing. |
| Update column formatting | Check this box to apply dictionary attributes to LIST FORMAT strings (i.e. justification). In other words, format list box columns according to data dictionary attributes. Clear this box to leave LISTs alone. |
| Update column headers | Select from the drop-down list to specify when List Box column headers are applied from the data dictionary. Choose from: |
| Always | The Application Generator always applies the dictionary column header, even if it is blank. |
| If present in dictionary | The Application Generator applies the dictionary column header only if it is non-blank, otherwise, the LISTs column header prevails. |
| Window and Dictionary | The Application Generator applies the dictionary column header only if both are non-blank, otherwise, the LISTs column header prevails. This lets a blank column header on a LIST prevail over a non-blank column header in the data dictionary. |
| Never | The Application Generator never applies the dictionary column header. The LIST's column header always prevails. |
| Display warning if could not synchronize | Check this box to display a warning dialog if warnings occur during synchronization. Warnings occur when controls change size, when there is a different number of radio buttons in the dictionary than on the window or when an OPTION is replaced with a different control (e.g. a drop-down list). |
| Add report entry when controls change size | Check this box to generate warnings when controls change size. Clear the box to suppress size change warnings. |
| Filename for report | Specify the file to hold the warning report. Clearing this box suppresses the report. |
====== ======
====== Embed Editor tab ======
This tab lets control how the Application Generator generates the temporary source file for the Embeditor. You can specify the text that delimits the embed points within the temporary source file. By customizing the text, you can make it easy to identify the embed points you want to edit.
| Preceding Comment | Specify the text that marks the beginning of each embed point. |
| Include preceding comment | Check this box to generate a preceding comment. Clear the box to omit the preceding comment. |
| Prefix | Set the text generated before the embed point name. |
| Suffix | Set the text following the embed point name. |
| Following Comment | Specify the text that marks the end of each embed point. |
| Include following comment | Check this box to generate a trailing comment. Clear the box to omit any trailing comment. |
| Prefix | Set the text generated before the embed point name. |
| Suffix | Set the text following the embed point name. |
| Show priority levels | Check this box to show the embedded source priority within the Embeditor. The priority determines the sequence in which the Application Generator places multiple blocks of embedded code within a single embed point. |
| Edit errors in context | This box controls which edit mode to invoke when you edit embedded source code from the Errors Pad dialog. Check this box to open the Embeditor to edit embedded source code. Clear the box to open the non-contextual embed editor.The Source Embeditor (or embed editor) will open ONLY if the error in the Errors Pad is caused by an EMBED error.If the error is caused by bad dictionary information (like triggers or initial values), bad template entries, OR an embed that CAUSES bad GENERATED code (like a misplaced END statement), the error pad will ALWAYS open the CLW instead. So in nearly all cases except for the last one, when clicking on an error results in opening the CLW, you can be certain that the error is caused by an incorrect template setting or an error introduced in the Dictionary. |
| Edit source embeds in context by default (using Embeditor) | This box controls which edit mode to invoke when you edit embedded source code from the Embed Tree dialog. Check this box to open the Embeditor to edit embedded source code. Clear the box to open the non-contextual embed editor. Using the Embeditor allows added features such as code completion, class browsing, etc.This option does not affect how errors are processed, but instead controls what editor to use when opening an embed in the Embed Tree found in the Embeds tab. |
Embed Tree Options
The Embed Tree is the relational list control that displays when selecting the Embeds menu item or button from any selected procedure.
The following settings allow you to fine tune the level of information displayed for all embed points:
| Show PROCEDURE Keyword | Check this box to attach the word PROCEDURE to an embed point where appropriate. |
| Show VIRTUAL Keyword | If a method embed point is defined as a virtual method, check this box to attach the word VIRTUAL to an embed point where appropriate. |
| Show PROTECTED Keyword | If a method embed point is defined as one that is protected, check this box to attach the word PROTECTED to an embed point where appropriate. |
| Show Base Class | Check this box to display the base class name related to embed points (WindowManager, FileManager, etc.) where appropriate. |
| Show Object Description | Check this box to allow a class object's full description to be displayed. |
| Show Details | Check this box to allow a class object's full details to be displayed. |
| Color Entries | Check this box to reveal the color dialog described below. |
Colors
Embed points can be colored with respect to what section of code it is created in. Modify your colors for DATA and CODE sections, existing VIRTUAL and PROTECTED methods, or new methods that you have created.
====== ======
====== Dialogs tab ======
====== ======
| AppGen Dialog Font | Allows you to specify the font and font size used in AppGen |
| Restore Default Font** | Press this button to reset the font and font size back to default settings. |