Tabbed Document Selector
: If enabled, displays a tab for each open document. You can choose whether the row displays on the top of bottom of the Studio window.
: Displays all class attribute values, including usually hidden ones, in both the Inspector and the Class Definition windows.
Multiline Method Argument
: If selected, method arguments are displayed in the class editor one per line. Note that if Multiline Method Argument is enabled and you use Find in Files and then select a line in the Find in Files output of a file that has multiline method arguments, the cursor may go to the wrong line number. Disable Multiline Method Arguments if this is a problem.
: If selected, you see a syntax error if you refer to a variable that hasn't been declared. (Select this and Studio Assist
to display undeclared local variables when entering a #DIM statement in a method or a DO statement in a routine.)
: If selected, a green wavy underline indicates any questionable use of a variablespecifically: A variable is used that has no value, was never created, or has already been killed. Or a variable is given a value, but never used or killed before being used.
Open class in contracted view
: If selected, by default a class opens with all collapsible sections contracted (as though Ctrl+- had been pressed). If not selected, a class opens with collapsible sections open (as though Ctrl++ had been pressed).
prevents you from losing changes to Studio documents on a software or system failure. By default, Auto Save is enabled and saves every 5 minutes. It saves any document that is open and has been modified since the last save into a file that is a text representation of the document, C:\Documents and Settings\<username>\Local Settings\Temp\CST*.tmp
. If you subsequently save (or close) the document, this .tmp
file is deleted. If Studio crashes, the next time that Studio is opened, you get a message telling you that the temporary file exists. If you open this temporary document, you can paste the relevant portions into a Studio document.
Enable service status check (Recommended)
determines how often Studio checks to see if open documents and/or the open project changed on the Server outside of this Studio process. If Studio is the active application, it uses the first setting, Studio is active application (260 sec)
. If Studio is running in the background, it uses the second setting: Studio is background application (30600 sec)
. If you are on a slow sytem, you can uncheck this option. As result studio will not check server status and will not be able timely detect if documents or project on server were modified or studio lost connection. Use with caution.
Enable Bracket Matching
: If enabled, pairs of matching brackets enclosing the current cursor point are bolded. Depending on the language you are in, brackets
include [ ] square brackets, ( ) parentheses, and < > angle brackets. Note that for Enable Bracket Matching
to work, Enable Syntax Checking
must be checked. Bracket Matching Line Limit
Limits the number of lines to search above and below the caret position to locate a matching bracket (as an unlimited search in a long file would slow the editor down significantly).
: Enables code completion
. As you are entering Caché ObjectScript code, a drop-down menu is displayed showing available options for what you can enter next. If you type a package name, available classes are listed. If you type a class, available methods are listed. If you type a method, available arguments are listed. Available options may be listed in other locations as well, such as with #dim
declarations and trigger code.
To display undeclared local variables when entering a #DIM statement, you must be in a method, and you must have selected Studio Assist and Option Explicit
. To be listed, a variable must not begin with %, must not be a parameter or in the public list, and must not have been declared already. ))
If you type $$$, available macros are listed as follows: User-defined macros are listed if they are defined in the current file and if they are defined in an include file and, within the include file, they are preceded by a line beginning with three slashes, ///. System-defined macros are listed if the current file is a class file.
Following a partial member name, Studio displays a list of matching members as follows: If the partial entry begins with double-quotes (or a single quote), the popup contain only members whose names must be quoted in the program; that is, they contain spaces or other non-alphanumeric characters. If the partial entry does NOT begin with double-quotes, the popup contains only members whose names do not need to be quoted. If Studio Assist is triggered directly after a period, the popup contains all member names.
The Studio syntax checker uses a different coloring scheme for each language it supports. This option lets you specify the colors used to highlight syntactic elements when Studio syntax coloring is enabled.
To change the color used by the Studio Editor for a specific syntax element do the following in the Options dialog Appearance tab:
Select a language (such as Caché ObjectScript) from the available options
Select a syntax element (such as comments)
Select the desired foreground (and background color if you must!) color
to use the new color scheme.
reverts the selected syntax element to its default color.
reverts all syntax colors to their default values.
You can also change the color for a particular syntax element by right-clicking it in the editor window and selecting
Keep Generated Source Code
: If enabled, specifies that the compiler should not delete any intermediate source code (routines) that it creates as a consequence of compiling.
Compile In-use Classes
: If enabled, the compiler compiles a class even if there currently are instances of the class in active use.
In the Optimization Level
section, you can set the level of optimization to improve execution speed. If optimization is enabled, the compiler reorganizes the code for maximum benefit, including the copying of expressions between classes to eliminate method calls. Levels are:
: Recommended during development. It does not recompile dependent classes and it keeps a strong correspondence between source and object code so it is easier to read and debug. Default.
: Optimizes any reference to ..property
to the instance variable reference (for simple properties described by datatypes where the get
method is not overridden).
In the Flags
field, enter compiler flags you want used in this field shown in the table.
||Include application classes. This flag is set by default.
||Include sub classes.
||Compile. Compile the class definition(s) after loading.
||Display. This flag is set by default.
||Validate XML export format against schema on Load.
||Keep source. When this flag is set, source code of generated routines is kept.
||Lock classes while compiling. This flag is set by default.
||Percent. Include classes with names of the form %*.
||Recursive. Compile all the classes that are dependency predecessors.
||Process system messages or application messages.
||Update only. Skip compilation of classes that are already up-to-date.
||Include classes that are related to the current class in the way that they either reference to or are referenced by the current class in SQL usage.
Legacy Mode: Enable Legacy SQL Mode For Classes
If enabled, the other default settings on this tab are enabled. This option effects only how Studio wizards operate; it has nothing to do with the runtime behavior of applications.
Default Storage Type
: Specifies the storage class used when the New Class wizard creates a new class.
: Specifies the default index collation used when defining a mapping to legacy data structures.