MenuArray()

Display an Array menu in the panel window.

Usage

MenuArray( name, node, par,
   type, cols, rows,
   default = (), aryinfo=None, tooltip=None,
   whatsthis=None, helpURL=None, redraw=False,
   unitCat=None )

Parameters

name (string)
Label of the menu. This is displayed on the left.
node (string)
Database path of the node containing the parameter.
par (string)
Parameter name. The value of the menu is extracted from this parameter under the above node, and upon change by you, the value is deposited therein.
type (string)
Type of the array.
cols (tuple of integers)
A tuple of positive integers showing the minimum and maximum of array columns in order.
rows (tuple of integers)
A tuple of positive integers showing the minimum and maximum of array rows in order.
default (array)
Default value. If the database does not contain the parameter given by the node and par arguments, it is first initialized to this value.
aryinfo (tuple of strings)
A tuple of strings contains the information about the array including type, rows and cols.
tooltip (string)
Tooltip help information, also known as bubble. The content of this argument is displayed in a small dynamic box placed opened above the menu, when the cursor remains at the menu for short time. This is typically a short phrase.
whatsthis (string)
Whatsthis help information. When you click on the whatsthis icon followed by clicking on this menu, a small box opens above the menu and the content of this argument is displayed in it. This is typically a short sentence or two, which provides more information than that given by the tooltip argument. The whatsthis argument is a rich text format, which means you can embed many of the HTML tags, such as <br> for line separator and <b> for bold.
helpURL (string)
This is the HTML-URL address containing detailed help on the menu item. When you press the F1 key while the cursor is on top of this menu, the assistance help system opens and displays this page.
redraw (boolean)
Flag specifying whether to redraw the panel when you change the value. This allows inclusion of complex menus that dynamically depend on the value of this menu.
unitCat (string)
Name of the category (such as length, time, acceleration).

Return Value

None

Errors

  • The parameter in the database must be of type Array.
  • The parameter must exist in the database or the default must not be None.

Description

This routine places an array menu in the panel window. The menu contains a label given by the name. The displayed value is extracted from the database node and par. Upon change by you, the value is deposited back onto the database. Now, if redraw is True, the entire panel is redrawn. This provides the opportunity to change the other menu selections. For example,
nodeBfs = ROOT + RS + 'BODY_FORCE' + RS + item.name
nodeMsrc = nodeBfs + RS + 'GRAVITY'
MenuArray(name = 'Gravity',
   tooltip = 'Constant gravity force',
   whatsthis='The constant value of the gravity force. '
      'This array must have exactly 3 components in the '
      'global xyz coordinate system. Used with constant type.',
   helpURL = URL + '#gravity',
   node = nodeMsrc,
   par = 'gravity',
   type = 'vector',
   cols = (3, 3),
   rows = (1, 1),
   aryinfo = ('vector', '(1;3)', '(d,3)' ),
   redraw = False,
   default = (0, 0, 0),
   unitCat = 'acceleration' )