7.6.1 Member Fields

The member fields in an edit dialog can be found to the right of the member name. These member fields can appear in many different forms. Sometimes there may even be more than one on a line.

7.7 Field Editor

The Field Editor is used for editing strings (e.g., an object's name), and number values. It appears as a box with text in it. If you click on the box an Ibeam cursor appears at the click location. When the mouse is in the box, the characters you type will be entered at the Ibeam location point as you would expect.

You must place mouse pointer in field to start editing! However, once you have started typing, the mouse pointer need only remain in the overall window.

Some Emacs style editing keys are also recognized, in addition to the standard keypad arrow and related keys:

  • Ctrl-f moves Ibeam forward (also right arrow key)
  • Ctrl-b moves Ibeam backward (also left arrow key)
  • Ctrl-a moves Ibeam to beginning of line (also Home)
  • Ctrl-e moves Ibeam to end of line (also End)
  • Ctrl-d deletes character to right of Ibeam (also Del)
  • Ctrl-u selects the entire line -- subsequent typing replaces contents
  • Ctrl-n, TAB, or RETURN moves the Ibeam to the next field editor
  • Ctrl-p or Shift-TAB moves the Ibeam to the previous field editor
  • Alt-n moves to next object in list editor (also PageDn)
  • Alt-p moves to previous object in list editor (also PageUp)

    You can also hit shift-mousebutton2 (middle button) to scroll the text with the hand cursor.

    If the item to be edited is an integer then increment/decrement arrow buttons will appear to the right of the field editor. Pressing on these buttons will increase or decrease the value in the field editor. Pressing button-1 (left button) changes the value by 1, button-2 (middle button) changes the value by 10, and button-3 (right button) changes the value by 100. If the mouse button is pressed and held, the action will auto repeat.

    7.8 Read Only Member Field

    The read only member field is like the FieldEditor except the user cannot edit the field. It is used for display purposes only.

    7.9 Boolean CheckBox

    The checkbox is used for boolean values that are either on or off. Clicking on the checkbox changes its values. A checkmark or solid block indicates an ON, TRUE or 1 value, while no checkmark or an empty box indicates an OFF, FALSE or 0 value.

    7.10 Enum Menus

    The Enum menu is used for enumerated types. These types may have one of a number of symbolic values. The menu is shown with the member's current value. by clicking on the menu the other value choices appear in a popup menu. Selecting an alternate value from the menu sets the menu's value to the new value.

    7.11 SubObject Menus

    A SubObject menu is used when an instance of a class is part of the edited object and that instance is not edited inline (see section 7.6.1 Member Fields). The menu has the name "Type: Actions" where Type is the class name of the subobject. The menu contains the following functions as well as object specific functions that are unique to the subobject class.

  • Load: Load an instance of the subobject class
  • Save: Save the subobject using a file requester
  • SaveAs: Save the subobject with its last saved name
  • Edit: Edit the subobject

    7.12 Object Pointer Menus

    Object pointer menus are used when the member is a pointer to another object. The current value of the pointer is shown in the menubar as the pathname of the object that is pointed to. If the pointer is not set, the name on the menubar will be set to NULL. Clicking on the menubar brings up a popup menu of other objects of similar type. Selecting an alternate object sets the menubar to the name of that object. The popup menu also allows the user to set the pointer to NULL and to Edit the object currently pointed to.

    7.13 Object Type Menus

    The object type menus are used when a member specifies a type class of object. This menu allows the user to select from classes which inherit from it base class. The current selection is displayed in the menubar.

    7.14 SubGroup Menus

    The subgroup menu allows the user to interact with a group member of the object. The name on the menubar is one of the two forms depending upon whether or not the group has subgroups. (see section 8.2 Groups).

    Clicking on the menubar gives the user the following choices:

    New
    Create new object in the group
    Load
    Load a group from a file using a file requester. See section 8.1.3 Saving and Loading Objects.
    Save
    Save the group using a file requester. See section 8.1.3 Saving and Loading Objects.
    SaveAs
    Save the group with its last saved name. See section 8.1.3 Saving and Loading Objects.
    Edit
    Bring up a Group Edit Dialog of the subgroup
    RemoveAll
    Remove all the elements of the group
    Remove
    Remove an individual element of the group
    Link
    Link an object from another group into this group
    Move
    Rearrange the order of the elements in this group
    Transfer
    Transfer objects from another group into this one
    EditEl
    Edit and individual element of the group
    Find
    Find and edit an object with a given name

    Each of these selections will bring up a dialog for the user to specify the parameters to the operation.

    7.15 SubArray Menus

    The subarray menu allows the user to interact with a array member of the object. It appears as an "Edit" menubar. Clicking on the menubar gives the user the following choices:

    Load
    Load an array from a file using a file requester. See section 8.1.3 Saving and Loading Objects.
    Save
    Save the array using a file requester. See section 8.1.3 Saving and Loading Objects.
    SaveAs
    Save the array with its last saved name. See section 8.1.3 Saving and Loading Objects.
    Edit
    Bring up an Array Edit Dialog for the array
    Remove
    Remove a number of elements from the array at a given index
    Permute
    Permute the order of the elements in the array
    Sort
    Sort the order of the elements in the array
    El
    Show the value of a member of the array at given index
    Add
    Add elements onto the end the array
    Insert
    Add a number of given values at a certain Array index
    Find
    Find and Show the index of a member of the given value
    ColorEdit
    Bring up a Color Array Editor for number arrays

    7.16 Inline Fields

    Inline Fields are used for small substructures within an object (e.g., an object's position, which is only three values: x,y,z). Instead of the expected SubObject menubar, the object is laid out horizontally across on line in the Edit Dialog. The names of each of the fields are often truncated so that the line will not take up too much space. This allows quicker access and visualization without having to traverse through multiple dialogs. The fields within an inline field behave as do the rest of the fields in the dialog.