The Fill the Virtual Display with a Menu routine displays menu choices in the virtual display indicated, starting at the specified row. Format SMG$CREATE_MENU display-id ,choices [,menu-type] [,flags] [,row] [,rendition-set] [,rendition-complement]
1 – Returns
OpenVMS usage:cond_value type: longword (unsigned) access: write only mechanism: by value
2 – Arguments
display-id OpenVMS usage:identifier type: longword (unsigned) access: read only mechanism: by reference Display identifier of the virtual display in which the menu is created. The display-id argument is the address of an unsigned longword containing this identifier. choices OpenVMS usage:static array of char_string type: character string access: read only mechanism: by descriptor Static array in which each element corresponds to an item to be displayed in the menu. The choices argument is the address of a descriptor pointing to this static array of character strings. Note that blank menu items are ignored. menu-type OpenVMS usage:longword_unsigned type: longword (unsigned) access: read only mechanism: by reference Optional bit mask specifying the type of menu to be displayed. The menu-type argument is the address of a longword bit mask that specifies this menu type. Valid values are as follows: SMG$K_BLOCK The menu items are displayed in matrix format (default). SMG$K_VERTICAL Each menu item is displayed on its own line. SMG$K_HORIZONTAL The menu items are displayed all on one line. flags OpenVMS usage:mask_longword type: longword (unsigned) access: read only mechanism: by reference Optional bit mask specifying the attributes to be used for the menu. The flags argument is the address of an unsigned longword that contains the flag. Valid values are as follows: SMG$M_DOUBLE_ Double-spaced rows of menu items. The default SPACE is single spaced. SMG$M_FIXED_ Each menu item is in a fixed-length field. The FORMAT field is the size of the largest menu item. The default is compress. SMG$M_FULL_FIELD The full field is highlighted when you move within the menu using item keys. The default is that menu items only are highlighted. If you specify this flag value, it also implies SMG$M_FIXED_FORMAT. SMG$M_WIDE_MENU Wide characters are used in the menu items. The default is normal sized characters. SMG$M_WRAP_MENU The up arrow and down arrow keys cause the menu to wrap when the cursor is on the first or last rows of the menu. row OpenVMS usage:longword_signed type: longword (signed) access: read only mechanism: by reference Optional row number in the specified virtual display at which the first menu item is displayed. The row argument is the address of a signed longword that contains this row number. If row is omitted, the first row of the virtual display's scrolling region is used. rendition-set OpenVMS usage:mask_longword type: longword (unsigned) access: read only mechanism: by reference Attribute specifier. The optional rendition-set argument is the address of a longword bit mask in which each attribute set causes the corresponding attribute to be used when writing out the menu choices. The following attributes can be specified using the rendition-set argument: SMG$M_BLINK Displays blinking characters. SMG$M_BOLD Displays characters in higher-than-normal intensity. SMG$M_REVERSE Displays characters in reverse video; that is, using the opposite of the default rendition of the virtual display. SMG$M_ Displays underlined characters. UNDERLINE SMG$M_USER1 Displays user-defined attributes. through SMG$M_USER8 The display-id argument must be specified when you use the rendition-set argument. rendition-complement OpenVMS usage:mask_longword type: longword (unsigned) access: read only mechanism: by reference Attribute complement specifier. The optional rendition- complement argument is the address of a longword bit mask in which each attribute set causes the corresponding attribute to be complemented in the display. All of the attributes that can be specified with the rendition-set argument can be complemented with the rendition-complement argument. The display-id argument must be specified when you use the rendition-complement argument. The optional arguments rendition-set and rendition-complement let the user control the attributes of the virtual display. The rendition-set argument sets certain virtual display attributes, while rendition-complement complements these attributes. If the same bit is specified in both the rendition-set and rendition- complement parameters, rendition-set is evaluated first, followed by rendition-complement. By using these two parameters together, the user can control each virtual display attribute in a single procedure call. On a single-attribute basis, the user can cause the following transformations: Set Complement Action 0 0 Attribute set to default 1 0 Attribute on 0 1 Attribute set to complement of default setting 1 1 Attribute off