The Class Properties dialog can be accessed by the following procedures:
Double click on the class name or icon in the Tree View where the class resides, or
Right click on the class name or icon in the Tree View to obtain the context menu and then select the Properties menu item.
The icons for all classes in the Tree Views have no small square masks at the lower left corner. With the exception of link icons, which have no mask just like class icons, all object icons have light blue square masks and all part icons have dark blue square masks.
The Class Properties dialog is an editor for entering and modifying class properties. The header area shows the class name and its path. In the Schema Definition, the class name can be changed. The class name is an identifier, which must be started with a letter. The syntax can be found in the GUI Control Data Representation section of the SansGUI Reference Manual. The Class Path field shows the path of the parent class with the category enclosed in angle brackets < >.
The icon of the class is displayed in a large button at the upper left corner of the dialog. A default icon is provided for the class until the simulation developer changes it. The grid area may contain multiple tabbed sheets, depending on the type of the class. In all classes, there is an Identity tab which contains the following common information:
The class icon is a Windows icon containing both a large icon (32x32 pixels) and a small icon (16x16 pixels). It can be changed through the Change Icon... button at the lower right corner of the dialog. You can use the icon editor in your programming environment (IDE) or any icon editor to create an .ico file. In any case, make sure the icon file has both a large icon and a small icon.
Class Version: shows the current version of the class. It is automatically assigned during the Object Library generation process and is not editable by the developer.
Unique ID: shows the globally unique ID code generated by SansGUI. It cannot be modified manually. For a newly created class, its unique class ID will be generated after you click on the OK button in the Class Properties dialog. SansGUI shows a [*** To be generated ***] string in this field when the creation of the class has not yet been committed.
All the following sharing properties are for display only. They can be modified through the Class Sharing Properties dialog described in the Sharing Classes section later in this chapter.
Shared by Companies: if checked, the class is compatible with other simulators created by other companies, or globally sharable.
Shared by Workgroups: if checked, the class is compatible with other simulators created by other workgroups within the same company.
Shared by Programs: if checked, the class is compatible with other simulators created by the same workgroup.
Compatible Options: if the class is not sharable, or is dedicated to the named simulator, it can be limited to a certain set of options defined within the simulator.
The class status fields may be enabled or disabled according to the nature of the class. When the field is enabled, you can check or uncheck the box by using the SpaceBar as the toggle, or by clicking on it using the mouse.
Column-Oriented Table: is only available when the class is a subclass of the <Reference>Table class. It indicates whether the table in the GUI control should be column-oriented (checked) with attributes listed as columns and data items listed in rows, or row-oriented (unchecked) with attributes listed as rows and data items listed in columns. This status only affects the user interface and has nothing to do with multi-dimensional data storage order, which is specified in the next field.
Column-Major Data Storage: is only for multi-dimensional data storage (arrays, tables, matrices, etc.). This status field indicates whether SansGUI should use column-major order (checked) when organizing data indices for use in Fortran and other compatible programming environments, or row-major order (unchecked) when organizing data indices for use in C and other compatible programming environments. Because we can store this status on a class by class basis, you can implement class functions in mixed languages without worrying about, for example, transposing matrices before and after processing. SansGUI takes care of the data storage order according to the specification in this status field.
Abstract Class: is used for indicating if the class is abstract; therefore, cannot be used to create objects (checked). For some intermediate classes or place holder classes, you may want to check this box, so that SansGUI will not allow users to create objects from them. One advantage for declaring a class to being abstract is that no implementation of class function is necessary.
Document Location: specifies the file name or the URL of the on-line help document for this class. No brackets around this field are needed. For portability, it is recommended that you put a simple file name without a directory path, such as myClassDoc.htm, in this field and install the documents in the default doc directory, or use a subdirectory under the doc directory and give a relative file name, such as mySim\myClassDoc.htm. The file extension will be used to invoke a proper reader or browser program registered in the Windows environment.
Memo: contains a short description of the class, so that the simulation user can see it when they access the Class Properties dialog without going though the on-line help mechanism.
Component classes contain a DLL, a Port, and a Connectivity sheets. See the Defining Component Classes section in this chapter for more details.
Reference classes contain a DLL sheet. See the Defining Reference Classes section in this chapter for more details.
SansGUI Modeling and Simulation Environment Version 1.2
Copyright © 2000-2003 ProtoDesign, Inc. All rights reserved.