%****************************************************************************/
%
% File:		appli_ui.tex
%
% Project:	xdevmenu application documentation
%
% Description:	"Application user interface" section
%
% Author(s):	Faranguiss Poncet
%
% Original:	March 1991
%
%
% $Header: /cvsroot/taco/taco/system/xdevmenu/doc/appli_ui.tex,v 1.2 2003/12/17 14:24:25 jkrueger1 Exp $
%
% Copyright (c) 1990 by European Synchrotron Radiation Facility, 
%                       Grenoble, France
%
%		       All Rights Reserved
%
%****************************************************************************/
This section presents the general approach used in the proposed user interface.
For more details about the user interface the reader is invited to run the
application and to try to perform different functions. 

The OSF/MOTIF style guide\footnote[1]{OSF/MOTIF style guide document}
recommendations have been respected. Therefore the application starts by
displaying a main window\footnote[2]{OSF/MOTIF concept : see OSF/MOTIF
programmer's guide} on top of which there is an horizontal
menu-bar\footnotemark[2] containing the "File", "Edit", "Options" and
"Help"\footnotemark[1] pulldown menus.

In this section each function of the application is explained from the user
interface point of view.

\subsubsection{Open Device function}

To open the connection to a device the user should do the following :
\begin{enumerate}
\item
Select the "Open Device" command from the "File" pulldown menu,
\item
Select the device name in the proposed list of device names,
\item
Select the "Open Device" button in the device list window.
\end{enumerate}

If the connection cannot be opened to the selected device an error dialogue
window\footnotemark[2] will inform the user. Otherwise an icon, representing the
opened device, will be displayed within the application main window, together
with the window ( the so called output and error window ) displaying the output
arguments and errors for that device.

\subsubsection{Execute Command function}

To execute a command on a device the condition is that the device should have
already been opened by the "Open Device" function. If so, the user should do the
following :
\begin{enumerate}
\item
Select the icon representing the device on which he (or she) wants to execute
a command by clicking on the icon label. This action will also display the 
list of the available commands for that device.
\item
Select the command name in the proposed list of available commands,
\item
Select the "Execute" pushbutton in the command list window.
\item
Specify the input argument values (if any) in the argument prompt window,
\item
Select the "OK " pushbutton in the argument prompt window.
\end{enumerate}

As soon as a command is executed, its name together with the date and hour are
displayed in the top part of the out and error window. If there are any output
parameters they are displayed in the same area.
If the command is not executed successfully the error will be displayed in the 
bottom part of the out and error window.

\subsubsection{Show State function}

To ask for the state information on a device the condition is that the device
should have already been opened by the "Open Device" function. If so, the user
should do the following~:
\begin{enumerate}
\item
Select the icon representing the device whose state he (or she) wants to
visualise by clicking on the icon label.
\item
Select the "Show State" command from the "Edit" pulldown menu,
\end{enumerate}

The result of the command is displayed in the top part of the out and error 
window.
If the command is not executed successfully the error will be displayed in the 
bottom part of this same window. 

\subsubsection{Show Out Arguments function}

To ask for the output and error window of a device the condition is that the 
device should have already been opened by the "Open Device" function. If so, 
the user should do the following~:
\begin{enumerate}
\item
Select the icon representing the device whose output and error window he (or 
she) wants to visualise by clicking on the icon label.
\item
Select the "Show Out Arguments" command from the "Edit" pulldown menu,
\end{enumerate}

The output and error window appears containing both the command history and 
error messages for this device. 

\subsubsection{Show Status function}
To ask for the status information on a device the condition is that the device
should have already been opened by the "Open device" function. If so, there is 
no need to select the device first and the user should click only on the icon
pixmap representing the device whose status he (or she) wants to visualise.

The result of the status command is displayed in the top part of the out and 
error window.
If the command is not executed successfully the error will be displayed in the
bottom part of this same window.

\subsubsection{Close Device function}
To close a device the condition is that this device should, of course, have
already been opened by the "Open Device" function. If so, the user should do the
following :
\begin{enumerate}
\item
Select the icon representing the device he (or she) wants to close by clicking
on the icon label,
\item
Select the "Close Device" command from the "File" pulldown menu,
\end{enumerate}

If the user hasn't selected the device before closing, an error message will be 
displayed in an error dialog window\footnotemark[1]. Before closing the device 
the user is asked to confirm his request. 
 
\subsubsection{Help function}
This help function will be added in a further implementation.

\subsubsection{Options modification function}
For the moment, the only options the user can modify (using this function) is
the "device location" and "subdirectory filter" option. These options contain 
the location (in terms of Unix file system directory) of the device names.

To modify the value of the "device location" option the user should do the
following :
\begin{enumerate}
\item
Select the "Device Location" command from the "Options" pulldown menu,
\item
Fill in the "New Device Location :" field,
\item
If required, fill in the "Subdirectory Filter :" field,
\item
Select the "Change location" button in the prompt window.
\end{enumerate}

