idi(1) DG/UX 5.4.2 idi(1)
NAME
idi - interface description interpreter
SYNOPSIS
idi program-name interface-name description-file ... [interface-
driver-options ...]
DESCRIPTION
Idi is an interpreter for interface description language files. The
format of interface description files is described in idl(4).
The command line argument program-name is used in the title string
for screens and in error or help messages. The interface-name
argument is the name of a supported interface driver to use. This
must be one of ascii or motif.
The description-files describe the hierarchy of menus and queries to
be presented to the user. These files (or files included by them)
must define a menu called main. This menu is used as the root of the
hierarchy.
Any options beginning with "-" are interface-driver-options and are
interpreted differently by each interface driver. For example, the
Motif driver allows the standard X Window System toolkit options (see
X(1)).
The interface driver presents the top level menu and allows you to
navigate through the top level menu and all its sub-menus.
Eventually, you may choose an operation to perform.
If no more information is needed for the operation (no queries), the
operation is dispatched to the shell for execution. Otherwise, the
queries are presented before the operation is dispatched. After the
operation is complete, you may resume menu navigation.
ASCII DISPLAY DRIVER
The ASCII display driver presents a line-oriented interface suitable
for use on any terminal or terminal emulator.
The following optional interface-driver-options are allowed:
-m menu-name
Specify menu-name as the first menu to be shown.
-o operation-name
Specify that the operation-name operation should be
performed on menu-name. Note that when -o is used, -m must
also be used.
-s Force the display driver into "sub-program" mode. In this
mode, the user may exit the program by entering "q" at any
menu prompt (exit code is 1) or by entering "^" at the top
menu prompt (exit code is 0).
Licensed material--property of copyright holder(s) 1
idi(1) DG/UX 5.4.2 idi(1)
Menu Navigation
The items in a menu are presented as a numbered list of choices. To
navigate through the menus, enter one of the following:
number Select the menu item numbered number.
name Select the menu item named name. The name may be a partial
match, in upper or lower case.
name:sub-name...
Select the menu item named sub-name from the name menu.
Any number of name:sub-name constructs may be used. For
example, the entry
options:verbosity:set
would select the "Options" menu, then the "Verbosity" menu,
then the "Set" operation.
A : at the beginning of the entry indicates the root, or
top level, menu.
^ Return to the previous menu.
! Create a shell, according to the value of the user's SHELL
environment variable.
!command Execute the shell command and return control to idi.
? Print a help message about this menu.
number? Print a help message about menu item number.
q Exit the program.
If the menu item selected is a menu, it becomes the new menu, and the
sub-menus of the selected menu are displayed. If the menu item
selected is an operation, the queries for the operation (if any) are
displayed, and the operation is performed.
Menu item names which end in -> are menus with sub-menus. Menu item
names which end in ... are operations with related queries. Menu
item names with no suffix are operations with no related queries.
Queries
Many operations have corresponding queries which gather information
before performing a command. The ASCII Display Driver does not
display screens or querygroups, but displays only the queries under
them.
At any query, you can enter any of these:
return Accept the default value for the query.
Licensed material--property of copyright holder(s) 2
idi(1) DG/UX 5.4.2 idi(1)
^ Return to the previous query for this operation.
< Restart the operation at the first query.
! Create a shell, according to the value of the user's SHELL
environment variable.
!command Execute the shell command and return control to idi.
c Cancel this operation and return to the menu.
? Print a help message about this query.
Below is a description of how the ASCII Display Driver presents each
of the four types of queries:
text query
The driver displays text queries as follows:
prompt: [default]
To enter a new value, simply type the value.
boolean query
The driver displays bool queries as follows:
prompt? [default]
Enter either "yes" or "no" (or any abbreviation).
select query
The driver displays select queries as follows:
prompt: [default]
Enter ? to see the list of possible values for the
selectquery. In most cases, the possible values are
numbered, and you may select a value by entering the
number, or by entering the value itself (or any
abbreviation of the value). If the possible values are
numbered, your entry is first interpreted as the number of
your selection; if the number is invalid, it is then
interpreted as a value from the possible value list.
range query
The driver displays range queries as follows:
prompt: (lower-upper) [default]
Enter a number between the lower and upper limits.
Skill Levels
The current skill level, as indicated by the value of the idl
variable, SkillLevel, affects certain aspects of the ASCII Display
Licensed material--property of copyright holder(s) 3
idi(1) DG/UX 5.4.2 idi(1)
Driver.
The Novice and Intermediate skill levels are essentially the same.
When the skill level is Expert several aspects of the interface are
different:
* the prompts for menu navigation are shorter
* help messages for queries do not contain information about the
valid characters for the query
* the confirmation message usually presented before operations are
started is not given
MOTIF DISPLAY DRIVER
The OSF/Motif display driver presents a window-based interface to be
used on devices running the X Window System and the OSF/Motif window
manager, mwm(1).
Menu Navigation
The top level menu is presented in a Motif menu bar. Selecting a
menu causes a pulldown menu which contains the sub-menus to appear.
Menu item names which end in -> are menus with sub-menus. Menu item
names which end in ... are operations with related queries. Menu
item names with no suffix are operations with no related queries.
Queries
The Motif driver presents screens as dialog boxes. Each querygroup
of a screen is separated from the other querygroups by a horizontal
separator bar.
At the bottom of each dialog box are four or more buttons. If there
is only one screen, these buttons are shown: Ok, Reset, Cancel, and
Help. If the operation has more than one screen, the first screen
has these buttons: Next, Reset, Cancel, and Help; the middle screens
have these buttons: Next, Prev, Reset, Cancel, and Help; and the last
screen of a multi-screen operation has these buttons: Ok, Prev,
Reset, Cancel, and Help.
The meanings of the buttons are as follows:
Ok Validate the values of all queries, and perform the
operation.
Next Validate the values of all queries, and go on to the next
screen for this operation.
Prev Return to the previous screen.
Reset Change the values of all queries in this screen to the
values the queries had when the screen was first entered.
Cancel Terminate this operation.
Licensed material--property of copyright holder(s) 4
idi(1) DG/UX 5.4.2 idi(1)
Help Present the help message for the current operation. This
is the same as hitting Function Key 1 (F1).
Below is a description of how the Motif Display Driver presents each
of the four types of queries:
text query
The driver displays text queries as follows:
+---------------------------------+
prompt: | default +
+---------------------------------+
boolean query
The driver displays text queries as follows:
[ ] prompt
A darkened box is interpreted as affirmative, and a non-
darkened box is interpreted as negative.
select query
The driver displays select queries in one of three ways:
as a selection box, as a set of radio buttons, or as an
option menu.
A selection box looks like this:
prompt:
+---------------------------------------+-+
| selection one |^|
| default | |
| selection two | |
| selection three |v|
+---------------------------------------+-+
Selection:
+-----------------------------------------+
| default |
+-----------------------------------------+
You may select one of the choices in the box (using the
scroll bars if necessary), or you may enter a value into
the text box.
A set of radio buttons looks like this:
prompt:
+-------------------------------+
| [ ] selection one |
| [#] default |
| [ ] selection two |
+-------------------------------+
Licensed material--property of copyright holder(s) 5
idi(1) DG/UX 5.4.2 idi(1)
The button for the selected item is darkened. Under some
circumstances, more than one item may be selected.
An option menu looks like this:
+-----------------+
prompt: | default |
+-----------------+
Selecting the menu causes a list of choices to appear:
+-----------------+
| selection one |
prompt: | default |
| selection two |
| selection three |
+-----------------+
range query
The driver displays range queries as follows:
+---------+
prompt: | default |
+---------+
++
+------||---------------------------------+
+------||---------------------------------+
++
The sliding bar indicates the relative position of the
current value in the range. You may enter a new value into
the text area, or you may slide the bar to the new value.
Note that you may enter F1 when the keyboard focus is on a query to
receive help for that query.
Skill Levels
The Motif Display Driver does not change the appearance based on your
level of expertise.
Widget Names
This section lists the names of widgets used by the Motif driver and
gives a brief description of each.
You may customize the appearance of idi widgets by modifying
attributes of these widgets. See X(1) for a discussion of how to set
widget attributes; see the manual entries for each widget class for
the names of valid attributes.
As an example, in order to change the background color of help dialog
boxes to be "wheat", put the following line into a resource file
(such as $HOME/.Xdefaults):
Licensed material--property of copyright holder(s) 6
idi(1) DG/UX 5.4.2 idi(1)
Idi*helpBox*background: wheat
Widget Names
-----------------------------------------------------------------------------------
Widget Name Widget Class Description
-----------------------------------------------------------------------------------
mainWindow XmMainWindow Main window
menuBar XmRowColumn Main menu bar
logTextSW XmScrolledWindow Window for main text
logText XmText Main text area
mainDescription XmLabelGadget Description area
-----------------------------------------------------------------------------------
menuPullDown XmRowColumn Holds names of sub-menus
menuCascadeButton XmCascadeButtonGadget Button to show menu items
menuPushButton XmPushButtonGadget Button for operation
menuSeparator XmSeparatorGadget Separator between menu items
-----------------------------------------------------------------------------------
messageDialogShell XmDialogShell Holder for message boxes
confirmBox XmMessageBox Confirmation box
helpBox XmMessageBox Help box
unimpBox XmMessageBox Unimplemented feature box
errorBox XmMessageBox Error message box
warningBox XmMessageBox Warning box
-----------------------------------------------------------------------------------
okB XmPushButtonGadget Ok button in screenHolder
nextB XmPushButtonGadget Next button in screenHolder
prevB XmPushButtonGadget Prev button in screenHolder
resetB XmPushButtonGadget Reset button in screenHolder
cancelB XmPushButtonGadget Cancel button in screenHolder
helpB XmPushButtonGadget Help button in screenHolder
screenHolder_popup XmDialogShell Parent of screenHolder
screenHolder XmForm Container for querygroups
queryGroupSeparator XmSeparatorGadget Separator between querygroups
textAreaLabel XmLabelGadget Container for static text
querySeparator XmSeparatorGadget Separator between queries
-----------------------------------------------------------------------------------
booleanButton XmToggleButton Boolean query
-----------------------------------------------------------------------------------
rangeLabel XmLabelGadget Prompt in range query
rangeText XmTextField Text entry box in range query
rangeQuery XmScale Scale bar in range query
-----------------------------------------------------------------------------------
selectionBox XmSelectionBox Selection box
radioLabel XmLabelGadget Prompt for radio buttons
radioBox XmRowColumn Holder for radio buttons
radioButton XmToggleButtonGadget Each radio button
optionPullDown XmRowColumn Holder for option menu items
optionPushButton XmPushButtonGadget Button within option menu
optionMenu XmRowColumn Option menu with prompt
-----------------------------------------------------------------------------------
textLabel XmLabelGadget Prompt in text query
textText XmText Multi-line text entry box in text query
Licensed material--property of copyright holder(s) 7
idi(1) DG/UX 5.4.2 idi(1)
textText XmTextField Single line text entry box in text query
-----------------------------------------------------------------------------------
reportBox XmForm Holder for report output
reportClose XmPushButtonGadget Close button for reports
reportSep XmSeparatorGadget Separator after report text
reportTextSW XmScrolledWindow Window for text of report
reportText XmText Text of report
Additional Resources
The following additional resources are provided by the Motif driver
to allow further modification of the driver's appearance.
Additional Resources
---------------------------------------------
Name Class Value Type Default
---------------------------------------------
iconImage IconImage file ""
The additional resources are described below:
iconImage (class IconImage)
This is the name of a file containing a X bitmap to be used
as the icon image for the program.
ENVIRONMENT
The LANG environment variable is checked [by setlocale(3C)] to
determine the appropriate locale.
DIAGNOSTICS
Descriptions of syntax errors in the description-files are written to
standard error.
SEE ALSO
idc(1), idl(4), X(1).
Licensed material--property of copyright holder(s) 8