/*
 * Generated by the ICS builderXcessory (BX).
 *
 *
 * Builder Xcessory 2.5.
 *
 */

/*
 * System Include Files
 */
#include <stdlib.h>

/*
 * Required Motif Include Files
 */
#include <Xm/Xm.h>
#include <Xm/PushB.h>
#include <Xm/ToggleB.h>
#include <Xm/Label.h>
#include <Xm/Frame.h>
#include <Xm/ScrolledW.h>
#include <Xm/Form.h>
#include <Xm/LabelG.h>
#include <X11/Xc/BarGraf.h>
#include <X11/Xc/ToggleB.h>
#include <X11/Xc/Led.h>

/*
 * User supplied include files.
 */
#define IGNORE_CONVERT
#define IGNORE_MENU_POST
#include <X11/Xc/Xc.h>
#include "rov.h"


/*
 * Some Convenience Routines
 */
#ifndef IGNORE_CONVERT
/*SUPPRESS 592*/
static XtPointer
CONVERT(Widget w, char *from_string, char *to_type, int to_size, 
	Boolean *success)
{
    XrmValue		fromVal, toVal;	/* resource holders		*/
    Boolean		convResult;	/* return value			*/
    unsigned char	oByte;		/* one byte result		*/
    unsigned short	tByte;		/* two byte result		*/
    XtPointer		fByte;		/* four byte result		*/
    XtPointer		aByte;		/* allocated result		*/
    
    /*
     * Zero it.
     */
    *success = False;
    fByte = aByte = NULL;
    
    /*
     * String to string.
     */
    if( strcmp(XmRString, to_type) == 0 )
    {
	*success = True;
	return( from_string );
    }

    /*
     * Sometimes we do not know this at code output.
     */
    if(to_size == 0) to_size = strlen(from_string);
        
    /*
     * Motif String to StringTable converter
     * does not cache correctly and so
     * we need to special case this.
     */ 
    if( strcmp(to_type, "XmStringTable") == 0)
    {
	register int lcount, loop;
	register char tmp, *ptr, *e_ptr;
	char *tmp_from;
	XmStringTable table;
	
	tmp_from = XtNewString((char *)from_string);
	ptr = tmp_from;
	if ((ptr == NULL) || (*ptr == '\0'))
	{
	    XtFree((XtPointer)tmp_from);
	    return( NULL );
	}
	else 
	{	
	    lcount = 1;
	    while (*ptr != '\0') 
	    {
		if (*ptr++ == '\n')
		    lcount++;
	    }
	    table = (XmStringTable)
		XtMalloc(sizeof(XmString) * lcount);
	    
	    ptr = tmp_from;
	    
	    for (loop = 0; loop < lcount; loop++) 
	    {
		e_ptr = ptr;
		while((*e_ptr!='\0')&&(*e_ptr != '\n'))
		    e_ptr++;	     
		tmp = *e_ptr;
		*e_ptr = '\0';
		table[loop] = XmStringCreateSimple(ptr);
		*e_ptr = tmp;
		ptr = ++e_ptr;
	    }
	    
	    fByte = (XtPointer)table;
	}
	*success = True;
	XtFree((XtPointer)tmp_from);
	/*SUPPRESS 80*/
	return( fByte );
    }

    /*
     * Set up the list.
     */
    fromVal.size = strlen(from_string) + 1;
    fromVal.addr = from_string;

    switch( to_size )
    {
    case 1:
	toVal.size = sizeof(unsigned char);
	toVal.addr = (XtPointer)&oByte;
	break;
    case 2:
	toVal.size = sizeof(unsigned short);
	toVal.addr = (XtPointer)&tByte;
	break;
    default:
	toVal.size = sizeof(XtPointer);
	toVal.addr = (XtPointer)&fByte;
	break;
    }
    
    convResult = XtConvertAndStore(w, 
				   XmRString, 
				   &fromVal,
				   to_type,
				   &toVal);
    
    if( convResult )
    {
	switch( to_size )
	{
	case 1:
	    fByte = (XtPointer)((int)oByte);
	    break;
	case 2:
	    fByte = (XtPointer)((int)tByte);
	    break;
	default:
	    break;
	}
    }
    

    /*
     * Conversion will fail if we need more than 4 bytes.
     */
    if( !convResult && toVal.size != to_size )
    {
	/*
	 * Need to allocate more space for this one.
	 */
	toVal.addr = (XtPointer)XtMalloc(toVal.size);
	fByte = aByte = toVal.addr;
	convResult = XtConvertAndStore(w, 
				       XmRString, 
				       &fromVal,
				       to_type,
				       &toVal);
    }
    
    /*
     * Free any thing useless we may have allocated.
     */
    if( !convResult )
    {
	XtFree(aByte);
	aByte = NULL;
    }
    
    /*
     * Return the result.
     */
    *success = convResult;
    /*SUPPRESS 80*/
    return( fByte );
}
#endif

/*
 * Callback procedure declarations
 */
extern void activateDeployLatchArmButton(Widget, XtPointer, XtPointer);
extern void activateDepthAltToggle(Widget, XtPointer, XtPointer);
extern void activateToggle(Widget, XtPointer, XtPointer);
extern void activateToolsledLatchArmButton(Widget, XtPointer, XtPointer);
extern void enableAlarms(Widget, XtPointer, XtPointer);
extern int autoAltitudeItem;
extern int autoDepthItem;
extern int autoHeadingItem;
extern int autoPositionItem;

/*
 * Global widget declarations.
 *        - first remove definition of EXTERNAL
 */
#ifdef EXTERNAL
#undef EXTERNAL
#endif
#define EXTERNAL
/* Start Global Widget Declarations */
EXTERNAL Widget	alarmWindow;
EXTERNAL Widget	alarmList;
EXTERNAL Widget	stbdHorizBarGraph;
EXTERNAL Widget	aftLatBarGraph;
EXTERNAL Widget	portHorizBarGraph;
EXTERNAL Widget	stbdVertBarGraph;
EXTERNAL Widget	portVertBarGraph;
EXTERNAL Widget	fwdLatBarGraph;
EXTERNAL Widget	compLevelBarGraph;
EXTERNAL Widget	autoHeadingToggle;
EXTERNAL Widget	autoDepthToggle;
EXTERNAL Widget	autoPositionToggle;
EXTERNAL Widget	joystickIndicator;
EXTERNAL Widget	autoAltitudeToggle;
EXTERNAL Widget	miscVehScrolledWindow;
EXTERNAL Widget	peerWindow;
EXTERNAL Widget	peerList;
EXTERNAL Widget	aliveButton;
EXTERNAL Widget	inWaterButton;
EXTERNAL Widget	toolsledLatchArmButton;
EXTERNAL Widget	toolsledLatchReleaseButton;
EXTERNAL Widget	toolsledLatchButton;
EXTERNAL Widget	toolsledConnectButton;
EXTERNAL Widget	deployLatchArmButton;
EXTERNAL Widget	deployLatchReleaseButton;
/* End Global Widget Declarations */

Widget
CreatevehicleForm(Widget parent)
{
    Arg    	args[512];
    Cardinal   	argcnt;
    /*SUPPRESS 591*/
    Boolean   	argok;
    Widget 	retval;
    /*SUPPRESS 591*/
    XmString	xmstr[32];
    Widget	vehicleForm;
    Widget	alarmLabel;
    Widget	pitchRollFrame;
    Widget	pitchRollForm;
    Widget	pitchRollLabel;
    Widget	rovPictureFrame;
    Widget	rovPictureForm;
    Widget	rovPictureLabel;
    Widget	manipFrame;
    Widget	manipForm;
    Widget	manipLabel;
    Widget	enableAlarmButton;
    Widget	silenceAlarmButton;
    Widget	peerIdLabel;
    Widget	toolsledFrame;
    Widget	toolsledForm;
    Widget	toolsledLabel;
    Widget	deployFrame;
    Widget	deployForm;
    Widget	deployLabel;

    XtInitializeWidgetClass(xmFormWidgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XmNresizePolicy, XmRESIZE_GROW); argcnt++;
    XtSetArg(args[argcnt], XmNx, 0); argcnt++;
    XtSetArg(args[argcnt], XmNy, 0); argcnt++;
    XtSetArg(args[argcnt], XmNwidth, 850); argcnt++;
    XtSetArg(args[argcnt], XmNheight, 657); argcnt++;
    vehicleForm = XtCreateWidget("vehicleForm",
		xmFormWidgetClass,
		parent,
		args,
		argcnt);
    retval = vehicleForm;

    XtInitializeWidgetClass(xmFrameWidgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XmNtopAttachment, XmATTACH_FORM); argcnt++;
    XtSetArg(args[argcnt], XmNbottomAttachment, XmATTACH_NONE); argcnt++;
    XtSetArg(args[argcnt], XmNleftAttachment, XmATTACH_FORM); argcnt++;
    XtSetArg(args[argcnt], XmNrightAttachment, XmATTACH_NONE); argcnt++;
    XtSetArg(args[argcnt], XmNtopOffset, 0); argcnt++;
    XtSetArg(args[argcnt], XmNbottomOffset, 0); argcnt++;
    XtSetArg(args[argcnt], XmNleftOffset, 0); argcnt++;
    XtSetArg(args[argcnt], XmNrightOffset, 0); argcnt++;
    XtSetArg(args[argcnt], XmNwidth, 300); argcnt++;
    XtSetArg(args[argcnt], XmNheight, 120); argcnt++;
    deployFrame = XtCreateWidget("deployFrame",
		xmFrameWidgetClass,
		vehicleForm,
		args,
		argcnt);
    XtManageChild(deployFrame);

    XtInitializeWidgetClass(xmFrameWidgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XmNtopAttachment, XmATTACH_FORM); argcnt++;
    XtSetArg(args[argcnt], XmNbottomAttachment, XmATTACH_NONE); argcnt++;
    XtSetArg(args[argcnt], XmNleftAttachment, XmATTACH_FORM); argcnt++;
    XtSetArg(args[argcnt], XmNrightAttachment, XmATTACH_NONE); argcnt++;
    XtSetArg(args[argcnt], XmNtopOffset, 0); argcnt++;
    XtSetArg(args[argcnt], XmNbottomOffset, 0); argcnt++;
    XtSetArg(args[argcnt], XmNleftOffset, 20); argcnt++;
    XtSetArg(args[argcnt], XmNrightOffset, 0); argcnt++;
    XtSetArg(args[argcnt], XmNwidth, 300); argcnt++;
    XtSetArg(args[argcnt], XmNheight, 140); argcnt++;
    toolsledFrame = XtCreateWidget("toolsledFrame",
		xmFrameWidgetClass,
		vehicleForm,
		args,
		argcnt);
    XtManageChild(toolsledFrame);

    XtInitializeWidgetClass(xcLedButtonWidgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XcNlabel, "Deployment"); argcnt++;
    XtSetArg(args[argcnt], XcNledVisible, False); argcnt++;
    XtSetArg(args[argcnt], XcNstateVisible, True); argcnt++;
    XtSetArg(args[argcnt], XcNstate, CONVERT(parent,"Dry", "String", 0, &argok)); if(argok) argcnt++;
    XtSetArg(args[argcnt], XmNtopAttachment, XmATTACH_FORM); argcnt++;
    XtSetArg(args[argcnt], XmNbottomAttachment, XmATTACH_NONE); argcnt++;
    XtSetArg(args[argcnt], XmNleftAttachment, XmATTACH_FORM); argcnt++;
    XtSetArg(args[argcnt], XmNrightAttachment, XmATTACH_NONE); argcnt++;
    XtSetArg(args[argcnt], XmNtopOffset, 10); argcnt++;
    XtSetArg(args[argcnt], XmNbottomOffset, 65535); argcnt++;
    XtSetArg(args[argcnt], XmNleftOffset, 5); argcnt++;
    XtSetArg(args[argcnt], XmNrightOffset, 65535); argcnt++;
    XtSetArg(args[argcnt], XtNwidth, 150); argcnt++;
    XtSetArg(args[argcnt], XtNheight, 60); argcnt++;
    inWaterButton = XtCreateWidget("inWaterButton",
		xcLedButtonWidgetClass,
		vehicleForm,
		args,
		argcnt);

    XtManageChild(inWaterButton);

    XtInitializeWidgetClass(xcLedButtonWidgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XcNlabel, "Status"); argcnt++;
    XtSetArg(args[argcnt], XcNledVisible, False); argcnt++;
    XtSetArg(args[argcnt], XcNstateVisible, True); argcnt++;
    XtSetArg(args[argcnt], XcNstate, CONVERT(parent,"Alive", "String", 0, &argok)); if(argok) argcnt++;
    XtSetArg(args[argcnt], XmNtopAttachment, XmATTACH_FORM); argcnt++;
    XtSetArg(args[argcnt], XmNbottomAttachment, XmATTACH_NONE); argcnt++;
    XtSetArg(args[argcnt], XmNleftAttachment, XmATTACH_FORM); argcnt++;
    XtSetArg(args[argcnt], XmNrightAttachment, XmATTACH_NONE); argcnt++;
    XtSetArg(args[argcnt], XmNtopOffset, 10); argcnt++;
    XtSetArg(args[argcnt], XmNbottomOffset, 65535); argcnt++;
    XtSetArg(args[argcnt], XmNleftOffset, 5); argcnt++;
    XtSetArg(args[argcnt], XmNrightOffset, 65535); argcnt++;
    XtSetArg(args[argcnt], XtNwidth, 150); argcnt++;
    XtSetArg(args[argcnt], XtNheight, 60); argcnt++;
    aliveButton = XtCreateWidget("aliveButton",
		xcLedButtonWidgetClass,
		vehicleForm,
		args,
		argcnt);

    XtManageChild(aliveButton);

    XtInitializeWidgetClass(xmScrolledWindowWidgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XmNscrollingPolicy, XmAUTOMATIC); argcnt++;
    XtSetArg(args[argcnt], XmNtopAttachment, XmATTACH_FORM); argcnt++;
    XtSetArg(args[argcnt], XmNbottomAttachment, XmATTACH_NONE); argcnt++;
    XtSetArg(args[argcnt], XmNleftAttachment, XmATTACH_FORM); argcnt++;
    XtSetArg(args[argcnt], XmNrightAttachment, XmATTACH_FORM); argcnt++;
    XtSetArg(args[argcnt], XmNbottomOffset, 0); argcnt++;
    XtSetArg(args[argcnt], XmNrightOffset, 0); argcnt++;
    XtSetArg(args[argcnt], XmNwidth, 262); argcnt++;
    XtSetArg(args[argcnt], XmNheight, 100); argcnt++;
    peerWindow = XtCreateWidget("peerWindow",
		xmScrolledWindowWidgetClass,
		vehicleForm,
		args,
		argcnt);

    XtManageChild(peerWindow);

    XtInitializeWidgetClass(xmLabelWidgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XmNlabelString, (xmstr[0]=XmStringCreateLtoR(
		"Data Manager Connections", XmSTRING_DEFAULT_CHARSET))); argcnt++;
    XtSetArg(args[argcnt], XmNrecomputeSize, False); argcnt++;
    XtSetArg(args[argcnt], XmNtopAttachment, XmATTACH_FORM); argcnt++;
    XtSetArg(args[argcnt], XmNbottomAttachment, XmATTACH_NONE); argcnt++;
    XtSetArg(args[argcnt], XmNleftAttachment, XmATTACH_FORM); argcnt++;
    XtSetArg(args[argcnt], XmNrightAttachment, XmATTACH_FORM); argcnt++;
    XtSetArg(args[argcnt], XmNtopOffset, 2); argcnt++;
    XtSetArg(args[argcnt], XmNbottomOffset, 0); argcnt++;
    XtSetArg(args[argcnt], XmNleftOffset, 0); argcnt++;
    XtSetArg(args[argcnt], XmNwidth, 262); argcnt++;
    XtSetArg(args[argcnt], XmNheight, 22); argcnt++;
    peerIdLabel = XtCreateWidget("peerIdLabel",
		xmLabelWidgetClass,
		vehicleForm,
		args,
		argcnt);
    XmStringFree( xmstr[0] );
    XtManageChild(peerIdLabel);

    XtInitializeWidgetClass(xmScrolledWindowWidgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XmNscrollingPolicy, XmAUTOMATIC); argcnt++;
    XtSetArg(args[argcnt], XmNtopAttachment, XmATTACH_FORM); argcnt++;
    XtSetArg(args[argcnt], XmNbottomAttachment, XmATTACH_NONE); argcnt++;
    XtSetArg(args[argcnt], XmNleftAttachment, XmATTACH_FORM); argcnt++;
    XtSetArg(args[argcnt], XmNrightAttachment, XmATTACH_FORM); argcnt++;
    XtSetArg(args[argcnt], XmNtopOffset, 0); argcnt++;
    XtSetArg(args[argcnt], XmNleftOffset, 0); argcnt++;
    XtSetArg(args[argcnt], XmNx, 0); argcnt++;
    XtSetArg(args[argcnt], XmNy, 0); argcnt++;
    XtSetArg(args[argcnt], XmNwidth, 240); argcnt++;
    XtSetArg(args[argcnt], XmNheight, 450); argcnt++;
    miscVehScrolledWindow = XtCreateWidget("miscVehScrolledWindow",
		xmScrolledWindowWidgetClass,
		vehicleForm,
		args,
		argcnt);

    XtManageChild(miscVehScrolledWindow);

    XtInitializeWidgetClass(xcToggleButtonWidgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XcNlabel, "Auto Alt"); argcnt++;
    XtSetArg(args[argcnt], XmNtopAttachment, XmATTACH_FORM); argcnt++;
    XtSetArg(args[argcnt], XmNbottomAttachment, XmATTACH_NONE); argcnt++;
    XtSetArg(args[argcnt], XmNleftAttachment, XmATTACH_FORM); argcnt++;
    XtSetArg(args[argcnt], XmNrightAttachment, XmATTACH_NONE); argcnt++;
    XtSetArg(args[argcnt], XmNtopOffset, 0); argcnt++;
    XtSetArg(args[argcnt], XmNbottomOffset, 65535); argcnt++;
    XtSetArg(args[argcnt], XmNleftOffset, 3); argcnt++;
    XtSetArg(args[argcnt], XmNrightOffset, 65535); argcnt++;
    XtSetArg(args[argcnt], XtNwidth, 120); argcnt++;
    XtSetArg(args[argcnt], XtNheight, 58); argcnt++;
    autoAltitudeToggle = XtCreateWidget("autoAltitudeToggle",
		xcToggleButtonWidgetClass,
		vehicleForm,
		args,
		argcnt);

    XtAddCallback(autoAltitudeToggle, XmNactivateCallback, activateDepthAltToggle, (XtPointer)&autoAltitudeItem);
    XtManageChild(autoAltitudeToggle);

    XtInitializeWidgetClass(xcLedButtonWidgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XcNlabel, "Joystick  "); argcnt++;
    XtSetArg(args[argcnt], XcNledVisible, False); argcnt++;
    XtSetArg(args[argcnt], XcNstateVisible, True); argcnt++;
    XtSetArg(args[argcnt], XcNstate, CONVERT(parent,"Speed", "String", 0, &argok)); if(argok) argcnt++;
    XtSetArg(args[argcnt], XmNtopAttachment, XmATTACH_FORM); argcnt++;
    XtSetArg(args[argcnt], XmNbottomAttachment, XmATTACH_NONE); argcnt++;
    XtSetArg(args[argcnt], XmNleftAttachment, XmATTACH_FORM); argcnt++;
    XtSetArg(args[argcnt], XmNrightAttachment, XmATTACH_NONE); argcnt++;
    XtSetArg(args[argcnt], XmNtopOffset, 0); argcnt++;
    XtSetArg(args[argcnt], XmNbottomOffset, 65535); argcnt++;
    XtSetArg(args[argcnt], XmNleftOffset, 60); argcnt++;
    XtSetArg(args[argcnt], XmNrightOffset, 65535); argcnt++;
    XtSetArg(args[argcnt], XtNx, 60); argcnt++;
    XtSetArg(args[argcnt], XtNwidth, 150); argcnt++;
    XtSetArg(args[argcnt], XtNheight, 60); argcnt++;
    XtSetArg(args[argcnt], XmNtopAttachment, XmATTACH_WIDGET); argcnt++;
    XtSetArg(args[argcnt], XmNtopWidget, miscVehScrolledWindow); argcnt++;
    joystickIndicator = XtCreateWidget("joystickIndicator",
		xcLedButtonWidgetClass,
		vehicleForm,
		args,
		argcnt);

    XtManageChild(joystickIndicator);

    XtInitializeWidgetClass(xmPushButtonWidgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XmNlabelString, (xmstr[0]=XmStringCreateLtoR(
		"Silence", XmSTRING_DEFAULT_CHARSET))); argcnt++;
    XtSetArg(args[argcnt], XmNrecomputeSize, False); argcnt++;
    XtSetArg(args[argcnt], XmNx, 760); argcnt++;
    XtSetArg(args[argcnt], XmNy, 0); argcnt++;
    XtSetArg(args[argcnt], XmNwidth, 87); argcnt++;
    XtSetArg(args[argcnt], XmNheight, 33); argcnt++;
    silenceAlarmButton = XtCreateWidget("silenceAlarmButton",
		xmPushButtonWidgetClass,
		vehicleForm,
		args,
		argcnt);
    XmStringFree( xmstr[0] );

    XtAddCallback(silenceAlarmButton, XmNactivateCallback, enableAlarms, (XtPointer)0);
    XtManageChild(silenceAlarmButton);

    XtInitializeWidgetClass(xmPushButtonWidgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XmNlabelString, (xmstr[0]=XmStringCreateLtoR(
		"Enable", XmSTRING_DEFAULT_CHARSET))); argcnt++;
    XtSetArg(args[argcnt], XmNrecomputeSize, False); argcnt++;
    XtSetArg(args[argcnt], XmNx, 670); argcnt++;
    XtSetArg(args[argcnt], XmNy, 0); argcnt++;
    XtSetArg(args[argcnt], XmNwidth, 87); argcnt++;
    XtSetArg(args[argcnt], XmNheight, 33); argcnt++;
    enableAlarmButton = XtCreateWidget("enableAlarmButton",
		xmPushButtonWidgetClass,
		vehicleForm,
		args,
		argcnt);
    XmStringFree( xmstr[0] );

    XtAddCallback(enableAlarmButton, XmNactivateCallback, enableAlarms, (XtPointer)1);
    XtManageChild(enableAlarmButton);

    XtInitializeWidgetClass(xcToggleButtonWidgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XcNlabel, "Auto Pos"); argcnt++;
    XtSetArg(args[argcnt], XmNtopAttachment, XmATTACH_FORM); argcnt++;
    XtSetArg(args[argcnt], XmNbottomAttachment, XmATTACH_NONE); argcnt++;
    XtSetArg(args[argcnt], XmNleftAttachment, XmATTACH_FORM); argcnt++;
    XtSetArg(args[argcnt], XmNrightAttachment, XmATTACH_NONE); argcnt++;
    XtSetArg(args[argcnt], XmNtopOffset, 0); argcnt++;
    XtSetArg(args[argcnt], XmNbottomOffset, 65535); argcnt++;
    XtSetArg(args[argcnt], XmNleftOffset, 3); argcnt++;
    XtSetArg(args[argcnt], XtNwidth, 120); argcnt++;
    XtSetArg(args[argcnt], XtNheight, 58); argcnt++;
    XtSetArg(args[argcnt], XmNtopAttachment, XmATTACH_WIDGET); argcnt++;
    XtSetArg(args[argcnt], XmNtopWidget, joystickIndicator); argcnt++;
    autoPositionToggle = XtCreateWidget("autoPositionToggle",
		xcToggleButtonWidgetClass,
		vehicleForm,
		args,
		argcnt);

    XtAddCallback(autoPositionToggle, XmNactivateCallback, activateToggle, (XtPointer)&autoPositionItem);
    XtManageChild(autoPositionToggle);

    XtInitializeWidgetClass(xcToggleButtonWidgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XcNlabel, "Auto Depth "); argcnt++;
    XtSetArg(args[argcnt], XmNtopAttachment, XmATTACH_FORM); argcnt++;
    XtSetArg(args[argcnt], XmNbottomAttachment, XmATTACH_NONE); argcnt++;
    XtSetArg(args[argcnt], XmNleftAttachment, XmATTACH_FORM); argcnt++;
    XtSetArg(args[argcnt], XmNrightAttachment, XmATTACH_NONE); argcnt++;
    XtSetArg(args[argcnt], XmNtopOffset, 0); argcnt++;
    XtSetArg(args[argcnt], XmNbottomOffset, 65535); argcnt++;
    XtSetArg(args[argcnt], XmNleftOffset, 0); argcnt++;
    XtSetArg(args[argcnt], XmNrightOffset, 65535); argcnt++;
    XtSetArg(args[argcnt], XtNx, 0); argcnt++;
    XtSetArg(args[argcnt], XtNwidth, 120); argcnt++;
    XtSetArg(args[argcnt], XtNheight, 58); argcnt++;
    autoDepthToggle = XtCreateWidget("autoDepthToggle",
		xcToggleButtonWidgetClass,
		vehicleForm,
		args,
		argcnt);

    XtAddCallback(autoDepthToggle, XmNactivateCallback, activateDepthAltToggle, (XtPointer)&autoDepthItem);
    XtManageChild(autoDepthToggle);

    XtInitializeWidgetClass(xcToggleButtonWidgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XcNlabel, "Auto Hdg "); argcnt++;
    XtSetArg(args[argcnt], XmNtopAttachment, XmATTACH_FORM); argcnt++;
    XtSetArg(args[argcnt], XmNbottomAttachment, XmATTACH_NONE); argcnt++;
    XtSetArg(args[argcnt], XmNleftAttachment, XmATTACH_FORM); argcnt++;
    XtSetArg(args[argcnt], XmNrightAttachment, XmATTACH_NONE); argcnt++;
    XtSetArg(args[argcnt], XmNtopOffset, 0); argcnt++;
    XtSetArg(args[argcnt], XmNbottomOffset, 65535); argcnt++;
    XtSetArg(args[argcnt], XmNleftOffset, 0); argcnt++;
    XtSetArg(args[argcnt], XmNrightOffset, 65535); argcnt++;
    XtSetArg(args[argcnt], XtNx, 0); argcnt++;
    XtSetArg(args[argcnt], XtNwidth, 120); argcnt++;
    XtSetArg(args[argcnt], XtNheight, 58); argcnt++;
    XtSetArg(args[argcnt], XmNtopAttachment, XmATTACH_WIDGET); argcnt++;
    XtSetArg(args[argcnt], XmNtopWidget, joystickIndicator); argcnt++;
    autoHeadingToggle = XtCreateWidget("autoHeadingToggle",
		xcToggleButtonWidgetClass,
		vehicleForm,
		args,
		argcnt);

    XtAddCallback(autoHeadingToggle, XmNactivateCallback, activateToggle, (XtPointer)&autoHeadingItem);
    XtManageChild(autoHeadingToggle);

    XtInitializeWidgetClass(xcBarGraphWidgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XcNlabel, "Comp"); argcnt++;
    XtSetArg(args[argcnt], XtNx, 585); argcnt++;
    XtSetArg(args[argcnt], XtNy, 470); argcnt++;
    XtSetArg(args[argcnt], XtNwidth, 60); argcnt++;
    XtSetArg(args[argcnt], XtNheight, 160); argcnt++;
    compLevelBarGraph = XtCreateWidget("compLevelBarGraph",
		xcBarGraphWidgetClass,
		vehicleForm,
		args,
		argcnt);

    XtManageChild(compLevelBarGraph);

    XtInitializeWidgetClass(xmFrameWidgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XmNtopAttachment, XmATTACH_FORM); argcnt++;
    XtSetArg(args[argcnt], XmNbottomAttachment, XmATTACH_NONE); argcnt++;
    XtSetArg(args[argcnt], XmNtopOffset, 2); argcnt++;
    XtSetArg(args[argcnt], XmNbottomOffset, 0); argcnt++;
    XtSetArg(args[argcnt], XmNx, 650); argcnt++;
    XtSetArg(args[argcnt], XmNwidth, 200); argcnt++;
    XtSetArg(args[argcnt], XmNheight, 120); argcnt++;
    manipFrame = XtCreateWidget("manipFrame",
		xmFrameWidgetClass,
		vehicleForm,
		args,
		argcnt);
    XtManageChild(manipFrame);

    XtInitializeWidgetClass(xmFrameWidgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XmNrightAttachment, XmATTACH_NONE); argcnt++;
    XtSetArg(args[argcnt], XmNrightOffset, 0); argcnt++;
    XtSetArg(args[argcnt], XmNx, 240); argcnt++;
    XtSetArg(args[argcnt], XmNy, 0); argcnt++;
    XtSetArg(args[argcnt], XmNwidth, 300); argcnt++;
    XtSetArg(args[argcnt], XmNheight, 290); argcnt++;
    rovPictureFrame = XtCreateWidget("rovPictureFrame",
		xmFrameWidgetClass,
		vehicleForm,
		args,
		argcnt);
    XtManageChild(rovPictureFrame);

    XtInitializeWidgetClass(xmFrameWidgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XmNtopAttachment, XmATTACH_FORM); argcnt++;
    XtSetArg(args[argcnt], XmNbottomAttachment, XmATTACH_NONE); argcnt++;
    XtSetArg(args[argcnt], XmNtopOffset, 2); argcnt++;
    XtSetArg(args[argcnt], XmNbottomOffset, 0); argcnt++;
    XtSetArg(args[argcnt], XmNx, 650); argcnt++;
    XtSetArg(args[argcnt], XmNwidth, 200); argcnt++;
    XtSetArg(args[argcnt], XmNheight, 160); argcnt++;
    XtSetArg(args[argcnt], XmNtopAttachment, XmATTACH_WIDGET); argcnt++;
    XtSetArg(args[argcnt], XmNtopWidget, peerWindow); argcnt++;
    pitchRollFrame = XtCreateWidget("pitchRollFrame",
		xmFrameWidgetClass,
		vehicleForm,
		args,
		argcnt);
    XtManageChild(pitchRollFrame);

    XtInitializeWidgetClass(xmScrolledWindowWidgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XmNscrollingPolicy, XmAUTOMATIC); argcnt++;
    XtSetArg(args[argcnt], XmNtopAttachment, XmATTACH_POSITION); argcnt++;
    XtSetArg(args[argcnt], XmNbottomAttachment, XmATTACH_NONE); argcnt++;
    XtSetArg(args[argcnt], XmNrightAttachment, XmATTACH_FORM); argcnt++;
    XtSetArg(args[argcnt], XmNtopPosition, 5); argcnt++;
    XtSetArg(args[argcnt], XmNbottomOffset, 0); argcnt++;
    XtSetArg(args[argcnt], XmNrightOffset, 2); argcnt++;
    XtSetArg(args[argcnt], XmNx, 588); argcnt++;
    XtSetArg(args[argcnt], XmNy, 33); argcnt++;
    XtSetArg(args[argcnt], XmNwidth, 260); argcnt++;
    XtSetArg(args[argcnt], XmNheight, 190); argcnt++;
    alarmWindow = XtCreateWidget("alarmWindow",
		xmScrolledWindowWidgetClass,
		vehicleForm,
		args,
		argcnt);

    XtManageChild(alarmWindow);

    XtInitializeWidgetClass(xmLabelGadgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XmNlabelString, (xmstr[0]=XmStringCreateLtoR(
		"Alarms", XmSTRING_DEFAULT_CHARSET))); argcnt++;
    XtSetArg(args[argcnt], XmNtopAttachment, XmATTACH_FORM); argcnt++;
    XtSetArg(args[argcnt], XmNbottomAttachment, XmATTACH_POSITION); argcnt++;
    XtSetArg(args[argcnt], XmNleftAttachment, XmATTACH_POSITION); argcnt++;
    XtSetArg(args[argcnt], XmNbottomPosition, 4); argcnt++;
    XtSetArg(args[argcnt], XmNleftPosition, 69); argcnt++;
    XtSetArg(args[argcnt], XmNtopOffset, 5); argcnt++;
    XtSetArg(args[argcnt], XmNx, 587); argcnt++;
    XtSetArg(args[argcnt], XmNy, 5); argcnt++;
    alarmLabel = XtCreateWidget("alarmLabel",
		xmLabelGadgetClass,
		vehicleForm,
		args,
		argcnt);
    XmStringFree( xmstr[0] );
    XtManageChild(alarmLabel);

    XtInitializeWidgetClass(xmLabelWidgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XmNalignment, XmALIGNMENT_BEGINNING); argcnt++;
    XtSetArg(args[argcnt], XmNlabelString, (xmstr[0]=XmStringCreateLtoR(
		"No Alarms", XmSTRING_DEFAULT_CHARSET))); argcnt++;
    XtSetArg(args[argcnt], XmNrecomputeSize, True); argcnt++;
    alarmList = XtCreateWidget("alarmList",
		xmLabelWidgetClass,
		alarmWindow,
		args,
		argcnt);
    XmStringFree( xmstr[0] );

    XtManageChild(alarmList);

    XtInitializeWidgetClass(xmFormWidgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XmNresizePolicy, XmRESIZE_GROW); argcnt++;
    XtSetArg(args[argcnt], XmNx, 2); argcnt++;
    XtSetArg(args[argcnt], XmNy, 2); argcnt++;
    XtSetArg(args[argcnt], XmNwidth, 196); argcnt++;
    XtSetArg(args[argcnt], XmNheight, 156); argcnt++;
    pitchRollForm = XtCreateWidget("pitchRollForm",
		xmFormWidgetClass,
		pitchRollFrame,
		args,
		argcnt);
    XtManageChild(pitchRollForm);

    XtInitializeWidgetClass(xmLabelGadgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XmNlabelString, (xmstr[0]=XmStringCreateLtoR(
		"Pitch/Roll\n\
Indicator", XmSTRING_DEFAULT_CHARSET))); argcnt++;
    XtSetArg(args[argcnt], XmNx, 60); argcnt++;
    XtSetArg(args[argcnt], XmNy, 60); argcnt++;
    pitchRollLabel = XtCreateWidget("pitchRollLabel",
		xmLabelGadgetClass,
		pitchRollForm,
		args,
		argcnt);
    XmStringFree( xmstr[0] );
    XtManageChild(pitchRollLabel);

    XtInitializeWidgetClass(xmFormWidgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XmNresizePolicy, XmRESIZE_GROW); argcnt++;
    XtSetArg(args[argcnt], XmNx, 2); argcnt++;
    XtSetArg(args[argcnt], XmNy, 2); argcnt++;
    XtSetArg(args[argcnt], XmNwidth, 296); argcnt++;
    XtSetArg(args[argcnt], XmNheight, 286); argcnt++;
    rovPictureForm = XtCreateWidget("rovPictureForm",
		xmFormWidgetClass,
		rovPictureFrame,
		args,
		argcnt);
    XtManageChild(rovPictureForm);

    XtInitializeWidgetClass(xcBarGraphWidgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XcNlabel, "Fwd Lat"); argcnt++;
    XtSetArg(args[argcnt], XcNorient, CONVERT(parent,"horizontal", "XcOrient", 0, &argok)); if(argok) argcnt++;
    XtSetArg(args[argcnt], XcNvalueVisible, False); argcnt++;
    XtSetArg(args[argcnt], XtNx, 3); argcnt++;
    XtSetArg(args[argcnt], XtNy, 165); argcnt++;
    XtSetArg(args[argcnt], XtNwidth, 140); argcnt++;
    XtSetArg(args[argcnt], XtNheight, 90); argcnt++;
    fwdLatBarGraph = XtCreateWidget("fwdLatBarGraph",
		xcBarGraphWidgetClass,
		rovPictureForm,
		args,
		argcnt);

    XtManageChild(fwdLatBarGraph);

    XtInitializeWidgetClass(xcBarGraphWidgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XcNlabel, "Port Vert"); argcnt++;
    XtSetArg(args[argcnt], XcNvalueVisible, False); argcnt++;
    XtSetArg(args[argcnt], XtNx, 152); argcnt++;
    XtSetArg(args[argcnt], XtNy, 2); argcnt++;
    XtSetArg(args[argcnt], XtNwidth, 70); argcnt++;
    XtSetArg(args[argcnt], XtNheight, 160); argcnt++;
    portVertBarGraph = XtCreateWidget("portVertBarGraph",
		xcBarGraphWidgetClass,
		rovPictureForm,
		args,
		argcnt);

    XtManageChild(portVertBarGraph);

    XtInitializeWidgetClass(xcBarGraphWidgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XcNlabel, "SB Vert"); argcnt++;
    XtSetArg(args[argcnt], XcNvalueVisible, False); argcnt++;
    XtSetArg(args[argcnt], XtNx, 222); argcnt++;
    XtSetArg(args[argcnt], XtNy, 2); argcnt++;
    XtSetArg(args[argcnt], XtNwidth, 70); argcnt++;
    XtSetArg(args[argcnt], XtNheight, 160); argcnt++;
    stbdVertBarGraph = XtCreateWidget("stbdVertBarGraph",
		xcBarGraphWidgetClass,
		rovPictureForm,
		args,
		argcnt);

    XtManageChild(stbdVertBarGraph);

    XtInitializeWidgetClass(xcBarGraphWidgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XcNlabel, "Port Horiz"); argcnt++;
    XtSetArg(args[argcnt], XcNvalueVisible, False); argcnt++;
    XtSetArg(args[argcnt], XtNx, 0); argcnt++;
    XtSetArg(args[argcnt], XtNy, 0); argcnt++;
    XtSetArg(args[argcnt], XtNwidth, 70); argcnt++;
    XtSetArg(args[argcnt], XtNheight, 160); argcnt++;
    portHorizBarGraph = XtCreateWidget("portHorizBarGraph",
		xcBarGraphWidgetClass,
		rovPictureForm,
		args,
		argcnt);

    XtManageChild(portHorizBarGraph);

    XtInitializeWidgetClass(xcBarGraphWidgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XcNlabel, "Aft Lat"); argcnt++;
    XtSetArg(args[argcnt], XcNorient, CONVERT(parent,"horizontal", "XcOrient", 0, &argok)); if(argok) argcnt++;
    XtSetArg(args[argcnt], XcNvalueVisible, False); argcnt++;
    XtSetArg(args[argcnt], XtNx, 145); argcnt++;
    XtSetArg(args[argcnt], XtNy, 165); argcnt++;
    XtSetArg(args[argcnt], XtNwidth, 140); argcnt++;
    XtSetArg(args[argcnt], XtNheight, 90); argcnt++;
    aftLatBarGraph = XtCreateWidget("aftLatBarGraph",
		xcBarGraphWidgetClass,
		rovPictureForm,
		args,
		argcnt);

    XtManageChild(aftLatBarGraph);

    XtInitializeWidgetClass(xcBarGraphWidgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XcNlabel, "SB Horiz"); argcnt++;
    XtSetArg(args[argcnt], XcNvalueVisible, False); argcnt++;
    XtSetArg(args[argcnt], XtNx, 70); argcnt++;
    XtSetArg(args[argcnt], XtNy, 0); argcnt++;
    XtSetArg(args[argcnt], XtNwidth, 70); argcnt++;
    XtSetArg(args[argcnt], XtNheight, 160); argcnt++;
    stbdHorizBarGraph = XtCreateWidget("stbdHorizBarGraph",
		xcBarGraphWidgetClass,
		rovPictureForm,
		args,
		argcnt);

    XtManageChild(stbdHorizBarGraph);

    XtInitializeWidgetClass(xmLabelGadgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XmNrecomputeSize, False); argcnt++;
    XtSetArg(args[argcnt], XmNlabelString, (xmstr[0]=XmStringCreateLtoR(
		"ROV Picture with Thrust, etc.", XmSTRING_DEFAULT_CHARSET))); argcnt++;
    XtSetArg(args[argcnt], XmNx, 25); argcnt++;
    XtSetArg(args[argcnt], XmNy, 260); argcnt++;
    XtSetArg(args[argcnt], XmNwidth, 245); argcnt++;
    rovPictureLabel = XtCreateWidget("rovPictureLabel",
		xmLabelGadgetClass,
		rovPictureForm,
		args,
		argcnt);
    XmStringFree( xmstr[0] );
    XtManageChild(rovPictureLabel);

    XtInitializeWidgetClass(xmFormWidgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XmNresizePolicy, XmRESIZE_GROW); argcnt++;
    XtSetArg(args[argcnt], XmNx, 2); argcnt++;
    XtSetArg(args[argcnt], XmNy, 2); argcnt++;
    XtSetArg(args[argcnt], XmNwidth, 196); argcnt++;
    XtSetArg(args[argcnt], XmNheight, 116); argcnt++;
    manipForm = XtCreateWidget("manipForm",
		xmFormWidgetClass,
		manipFrame,
		args,
		argcnt);
    XtManageChild(manipForm);

    XtInitializeWidgetClass(xmLabelGadgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XmNlabelString, (xmstr[0]=XmStringCreateLtoR(
		"Manip\n\
Indicator", XmSTRING_DEFAULT_CHARSET))); argcnt++;
    XtSetArg(args[argcnt], XmNx, 70); argcnt++;
    XtSetArg(args[argcnt], XmNy, 40); argcnt++;
    manipLabel = XtCreateWidget("manipLabel",
		xmLabelGadgetClass,
		manipForm,
		args,
		argcnt);
    XmStringFree( xmstr[0] );
    XtManageChild(manipLabel);

    argcnt = 0;
    XtSetArg(args[argcnt], XmNtopOffset, 2); argcnt++;
    XtSetArg(args[argcnt], XmNtopAttachment, XmATTACH_WIDGET); argcnt++;
    XtSetArg(args[argcnt], XmNtopWidget, pitchRollFrame); argcnt++;
    XtSetValues(manipFrame, args, argcnt);

    argcnt = 0;
    XtSetArg(args[argcnt], XmNtopOffset, 0); argcnt++;
    XtSetArg(args[argcnt], XmNtopAttachment, XmATTACH_WIDGET); argcnt++;
    XtSetArg(args[argcnt], XmNtopWidget, autoHeadingToggle); argcnt++;
    XtSetValues(autoDepthToggle, args, argcnt);

    argcnt = 0;
    XtSetArg(args[argcnt], XmNleftOffset, 3); argcnt++;
    XtSetArg(args[argcnt], XmNleftAttachment, XmATTACH_WIDGET); argcnt++;
    XtSetArg(args[argcnt], XmNleftWidget, autoHeadingToggle); argcnt++;
    XtSetValues(autoPositionToggle, args, argcnt);

    argcnt = 0;
    XtSetArg(args[argcnt], XmNtopOffset, 0); argcnt++;
    XtSetArg(args[argcnt], XmNtopAttachment, XmATTACH_WIDGET); argcnt++;
    XtSetArg(args[argcnt], XmNtopWidget, autoPositionToggle); argcnt++;
    XtSetArg(args[argcnt], XmNleftOffset, 3); argcnt++;
    XtSetArg(args[argcnt], XmNleftAttachment, XmATTACH_WIDGET); argcnt++;
    XtSetArg(args[argcnt], XmNleftWidget, autoDepthToggle); argcnt++;
    XtSetValues(autoAltitudeToggle, args, argcnt);

    argcnt = 0;
    XtSetArg(args[argcnt], XmNrightAttachment, XmATTACH_WIDGET); argcnt++;
    XtSetArg(args[argcnt], XmNrightWidget, rovPictureFrame); argcnt++;
    XtSetValues(miscVehScrolledWindow, args, argcnt);

    argcnt = 0;
    XtSetArg(args[argcnt], XmNtopOffset, 2); argcnt++;
    XtSetArg(args[argcnt], XmNtopAttachment, XmATTACH_WIDGET); argcnt++;
    XtSetArg(args[argcnt], XmNtopWidget, alarmWindow); argcnt++;
    XtSetArg(args[argcnt], XmNleftOffset, 0); argcnt++;
    XtSetArg(args[argcnt], XmNleftAttachment, XmATTACH_OPPOSITE_WIDGET); argcnt++;
    XtSetArg(args[argcnt], XmNleftWidget, alarmWindow); argcnt++;
    XtSetValues(peerIdLabel, args, argcnt);

    XtInitializeWidgetClass(xmLabelWidgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XmNalignment, XmALIGNMENT_BEGINNING); argcnt++;
    XtSetArg(args[argcnt], XmNlabelString, (xmstr[0]=XmStringCreateLtoR(
		"None", XmSTRING_DEFAULT_CHARSET))); argcnt++;
    XtSetArg(args[argcnt], XmNrecomputeSize, True); argcnt++;
    peerList = XtCreateWidget("peerList",
		xmLabelWidgetClass,
		peerWindow,
		args,
		argcnt);
    XmStringFree( xmstr[0] );

    XtManageChild(peerList);

    argcnt = 0;
    XtSetArg(args[argcnt], XmNtopAttachment, XmATTACH_WIDGET); argcnt++;
    XtSetArg(args[argcnt], XmNtopWidget, peerIdLabel); argcnt++;
    XtSetArg(args[argcnt], XmNleftAttachment, XmATTACH_OPPOSITE_WIDGET); argcnt++;
    XtSetArg(args[argcnt], XmNleftWidget, peerIdLabel); argcnt++;
    XtSetValues(peerWindow, args, argcnt);

    argcnt = 0;
    XtSetArg(args[argcnt], XmNtopOffset, 10); argcnt++;
    XtSetArg(args[argcnt], XmNtopAttachment, XmATTACH_WIDGET); argcnt++;
    XtSetArg(args[argcnt], XmNtopWidget, rovPictureFrame); argcnt++;
    XtSetArg(args[argcnt], XmNleftOffset, 5); argcnt++;
    XtSetArg(args[argcnt], XmNleftAttachment, XmATTACH_WIDGET); argcnt++;
    XtSetArg(args[argcnt], XmNleftWidget, miscVehScrolledWindow); argcnt++;
    XtSetValues(aliveButton, args, argcnt);

    argcnt = 0;
    XtSetArg(args[argcnt], XmNtopOffset, 10); argcnt++;
    XtSetArg(args[argcnt], XmNtopAttachment, XmATTACH_WIDGET); argcnt++;
    XtSetArg(args[argcnt], XmNtopWidget, rovPictureFrame); argcnt++;
    XtSetArg(args[argcnt], XmNleftOffset, 5); argcnt++;
    XtSetArg(args[argcnt], XmNleftAttachment, XmATTACH_WIDGET); argcnt++;
    XtSetArg(args[argcnt], XmNleftWidget, aliveButton); argcnt++;
    XtSetValues(inWaterButton, args, argcnt);

    XtInitializeWidgetClass(xmFormWidgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XmNresizePolicy, XmRESIZE_GROW); argcnt++;
    XtSetArg(args[argcnt], XmNx, 2); argcnt++;
    XtSetArg(args[argcnt], XmNy, 2); argcnt++;
    XtSetArg(args[argcnt], XmNwidth, 296); argcnt++;
    XtSetArg(args[argcnt], XmNheight, 136); argcnt++;
    toolsledForm = XtCreateWidget("toolsledForm",
		xmFormWidgetClass,
		toolsledFrame,
		args,
		argcnt);
    XtManageChild(toolsledForm);

    XtInitializeWidgetClass(xmToggleButtonWidgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XmNlabelString, (xmstr[0]=XmStringCreateLtoR(
		"UnConnected", XmSTRING_DEFAULT_CHARSET))); argcnt++;
    XtSetArg(args[argcnt], XmNrecomputeSize, False); argcnt++;
    XtSetArg(args[argcnt], XmNvisibleWhenOff, True); argcnt++;
    XtSetArg(args[argcnt], XmNset, False); argcnt++;
    XtSetArg(args[argcnt], XmNtopAttachment, XmATTACH_FORM); argcnt++;
    XtSetArg(args[argcnt], XmNbottomAttachment, XmATTACH_NONE); argcnt++;
    XtSetArg(args[argcnt], XmNleftAttachment, XmATTACH_FORM); argcnt++;
    XtSetArg(args[argcnt], XmNrightAttachment, XmATTACH_NONE); argcnt++;
    XtSetArg(args[argcnt], XmNtopOffset, 0); argcnt++;
    XtSetArg(args[argcnt], XmNbottomOffset, 0); argcnt++;
    XtSetArg(args[argcnt], XmNleftOffset, 5); argcnt++;
    XtSetArg(args[argcnt], XmNrightOffset, 0); argcnt++;
    XtSetArg(args[argcnt], XmNwidth, 140); argcnt++;
    XtSetArg(args[argcnt], XmNheight, 31); argcnt++;
    toolsledConnectButton = XtCreateWidget("toolsledConnectButton",
		xmToggleButtonWidgetClass,
		toolsledForm,
		args,
		argcnt);
    XmStringFree( xmstr[0] );

    XtManageChild(toolsledConnectButton);

    XtInitializeWidgetClass(xmToggleButtonWidgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XmNlabelString, (xmstr[0]=XmStringCreateLtoR(
		"UnLatched", XmSTRING_DEFAULT_CHARSET))); argcnt++;
    XtSetArg(args[argcnt], XmNrecomputeSize, False); argcnt++;
    XtSetArg(args[argcnt], XmNvisibleWhenOff, True); argcnt++;
    XtSetArg(args[argcnt], XmNset, False); argcnt++;
    XtSetArg(args[argcnt], XmNtopAttachment, XmATTACH_FORM); argcnt++;
    XtSetArg(args[argcnt], XmNbottomAttachment, XmATTACH_NONE); argcnt++;
    XtSetArg(args[argcnt], XmNtopOffset, 0); argcnt++;
    XtSetArg(args[argcnt], XmNbottomOffset, 0); argcnt++;
    XtSetArg(args[argcnt], XmNx, 5); argcnt++;
    XtSetArg(args[argcnt], XmNwidth, 120); argcnt++;
    XtSetArg(args[argcnt], XmNheight, 31); argcnt++;
    toolsledLatchButton = XtCreateWidget("toolsledLatchButton",
		xmToggleButtonWidgetClass,
		toolsledForm,
		args,
		argcnt);
    XmStringFree( xmstr[0] );

    XtManageChild(toolsledLatchButton);

    XtInitializeWidgetClass(xmPushButtonWidgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XmNsensitive, False); argcnt++;
    XtSetArg(args[argcnt], XmNlabelString, (xmstr[0]=XmStringCreateLtoR(
		"Release\n\
Toolsled", XmSTRING_DEFAULT_CHARSET))); argcnt++;
    XtSetArg(args[argcnt], XmNrecomputeSize, False); argcnt++;
    XtSetArg(args[argcnt], XmNtopAttachment, XmATTACH_FORM); argcnt++;
    XtSetArg(args[argcnt], XmNbottomAttachment, XmATTACH_NONE); argcnt++;
    XtSetArg(args[argcnt], XmNleftAttachment, XmATTACH_FORM); argcnt++;
    XtSetArg(args[argcnt], XmNrightAttachment, XmATTACH_NONE); argcnt++;
    XtSetArg(args[argcnt], XmNtopOffset, 10); argcnt++;
    XtSetArg(args[argcnt], XmNbottomOffset, 0); argcnt++;
    XtSetArg(args[argcnt], XmNleftOffset, 30); argcnt++;
    XtSetArg(args[argcnt], XmNrightOffset, 0); argcnt++;
    XtSetArg(args[argcnt], XmNwidth, 94); argcnt++;
    XtSetArg(args[argcnt], XmNheight, 65); argcnt++;
    XtSetArg(args[argcnt], XmNtopAttachment, XmATTACH_WIDGET); argcnt++;
    XtSetArg(args[argcnt], XmNtopWidget, toolsledConnectButton); argcnt++;
    toolsledLatchReleaseButton = XtCreateWidget("toolsledLatchReleaseButton",
		xmPushButtonWidgetClass,
		toolsledForm,
		args,
		argcnt);
    XmStringFree( xmstr[0] );

    XtManageChild(toolsledLatchReleaseButton);

    XtInitializeWidgetClass(xmPushButtonWidgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XmNlabelString, (xmstr[0]=XmStringCreateLtoR(
		"Arm\n\
Latch", XmSTRING_DEFAULT_CHARSET))); argcnt++;
    XtSetArg(args[argcnt], XmNrecomputeSize, False); argcnt++;
    XtSetArg(args[argcnt], XmNtopAttachment, XmATTACH_FORM); argcnt++;
    XtSetArg(args[argcnt], XmNbottomAttachment, XmATTACH_NONE); argcnt++;
    XtSetArg(args[argcnt], XmNtopOffset, 10); argcnt++;
    XtSetArg(args[argcnt], XmNbottomOffset, 0); argcnt++;
    XtSetArg(args[argcnt], XmNleftOffset, 40); argcnt++;
    XtSetArg(args[argcnt], XmNx, 40); argcnt++;
    XtSetArg(args[argcnt], XmNwidth, 94); argcnt++;
    XtSetArg(args[argcnt], XmNheight, 65); argcnt++;
    XtSetArg(args[argcnt], XmNtopAttachment, XmATTACH_WIDGET); argcnt++;
    XtSetArg(args[argcnt], XmNtopWidget, toolsledLatchButton); argcnt++;
    toolsledLatchArmButton = XtCreateWidget("toolsledLatchArmButton",
		xmPushButtonWidgetClass,
		toolsledForm,
		args,
		argcnt);
    XmStringFree( xmstr[0] );

    XtAddCallback(toolsledLatchArmButton, XmNactivateCallback, activateToolsledLatchArmButton, (XtPointer)0);
    XtManageChild(toolsledLatchArmButton);

    XtInitializeWidgetClass(xmLabelWidgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XmNlabelString, (xmstr[0]=XmStringCreateLtoR(
		"Toolsled", XmSTRING_DEFAULT_CHARSET))); argcnt++;
    XtSetArg(args[argcnt], XmNrecomputeSize, False); argcnt++;
    XtSetArg(args[argcnt], XmNx, 50); argcnt++;
    XtSetArg(args[argcnt], XmNy, 0); argcnt++;
    XtSetArg(args[argcnt], XmNwidth, 181); argcnt++;
    XtSetArg(args[argcnt], XmNheight, 29); argcnt++;
    toolsledLabel = XtCreateWidget("toolsledLabel",
		xmLabelWidgetClass,
		toolsledForm,
		args,
		argcnt);
    XmStringFree( xmstr[0] );
    XtManageChild(toolsledLabel);

    argcnt = 0;
    XtSetArg(args[argcnt], XmNleftOffset, 30); argcnt++;
    XtSetArg(args[argcnt], XmNleftAttachment, XmATTACH_WIDGET); argcnt++;
    XtSetArg(args[argcnt], XmNleftWidget, toolsledLatchArmButton); argcnt++;
    XtSetValues(toolsledLatchReleaseButton, args, argcnt);

    argcnt = 0;
    XtSetArg(args[argcnt], XmNtopOffset, 0); argcnt++;
    XtSetArg(args[argcnt], XmNtopAttachment, XmATTACH_WIDGET); argcnt++;
    XtSetArg(args[argcnt], XmNtopWidget, toolsledLabel); argcnt++;
    XtSetValues(toolsledLatchButton, args, argcnt);

    argcnt = 0;
    XtSetArg(args[argcnt], XmNtopOffset, 0); argcnt++;
    XtSetArg(args[argcnt], XmNtopAttachment, XmATTACH_WIDGET); argcnt++;
    XtSetArg(args[argcnt], XmNtopWidget, toolsledLabel); argcnt++;
    XtSetArg(args[argcnt], XmNleftOffset, 5); argcnt++;
    XtSetArg(args[argcnt], XmNleftAttachment, XmATTACH_WIDGET); argcnt++;
    XtSetArg(args[argcnt], XmNleftWidget, toolsledLatchButton); argcnt++;
    XtSetValues(toolsledConnectButton, args, argcnt);

    argcnt = 0;
    XtSetArg(args[argcnt], XmNtopOffset, 0); argcnt++;
    XtSetArg(args[argcnt], XmNtopAttachment, XmATTACH_WIDGET); argcnt++;
    XtSetArg(args[argcnt], XmNtopWidget, aliveButton); argcnt++;
    XtSetArg(args[argcnt], XmNleftOffset, 20); argcnt++;
    XtSetArg(args[argcnt], XmNleftAttachment, XmATTACH_WIDGET); argcnt++;
    XtSetArg(args[argcnt], XmNleftWidget, miscVehScrolledWindow); argcnt++;
    XtSetValues(toolsledFrame, args, argcnt);

    XtInitializeWidgetClass(xmFormWidgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XmNresizePolicy, XmRESIZE_GROW); argcnt++;
    XtSetArg(args[argcnt], XmNx, 2); argcnt++;
    XtSetArg(args[argcnt], XmNy, 2); argcnt++;
    XtSetArg(args[argcnt], XmNwidth, 296); argcnt++;
    XtSetArg(args[argcnt], XmNheight, 116); argcnt++;
    deployForm = XtCreateWidget("deployForm",
		xmFormWidgetClass,
		deployFrame,
		args,
		argcnt);
    XtManageChild(deployForm);

    XtInitializeWidgetClass(xmPushButtonWidgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XmNsensitive, False); argcnt++;
    XtSetArg(args[argcnt], XmNlabelString, (xmstr[0]=XmStringCreateLtoR(
		"Release\n\
Latch", XmSTRING_DEFAULT_CHARSET))); argcnt++;
    XtSetArg(args[argcnt], XmNrecomputeSize, False); argcnt++;
    XtSetArg(args[argcnt], XmNtopAttachment, XmATTACH_FORM); argcnt++;
    XtSetArg(args[argcnt], XmNbottomAttachment, XmATTACH_NONE); argcnt++;
    XtSetArg(args[argcnt], XmNleftAttachment, XmATTACH_FORM); argcnt++;
    XtSetArg(args[argcnt], XmNrightAttachment, XmATTACH_NONE); argcnt++;
    XtSetArg(args[argcnt], XmNtopOffset, 10); argcnt++;
    XtSetArg(args[argcnt], XmNbottomOffset, 0); argcnt++;
    XtSetArg(args[argcnt], XmNleftOffset, 30); argcnt++;
    XtSetArg(args[argcnt], XmNrightOffset, 0); argcnt++;
    XtSetArg(args[argcnt], XmNwidth, 94); argcnt++;
    XtSetArg(args[argcnt], XmNheight, 65); argcnt++;
    deployLatchReleaseButton = XtCreateWidget("deployLatchReleaseButton",
		xmPushButtonWidgetClass,
		deployForm,
		args,
		argcnt);
    XmStringFree( xmstr[0] );

    XtManageChild(deployLatchReleaseButton);

    XtInitializeWidgetClass(xmPushButtonWidgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XmNlabelString, (xmstr[0]=XmStringCreateLtoR(
		"Arm\n\
Latch", XmSTRING_DEFAULT_CHARSET))); argcnt++;
    XtSetArg(args[argcnt], XmNrecomputeSize, False); argcnt++;
    XtSetArg(args[argcnt], XmNtopAttachment, XmATTACH_FORM); argcnt++;
    XtSetArg(args[argcnt], XmNbottomAttachment, XmATTACH_NONE); argcnt++;
    XtSetArg(args[argcnt], XmNtopOffset, 10); argcnt++;
    XtSetArg(args[argcnt], XmNbottomOffset, 0); argcnt++;
    XtSetArg(args[argcnt], XmNleftOffset, 40); argcnt++;
    XtSetArg(args[argcnt], XmNx, 40); argcnt++;
    XtSetArg(args[argcnt], XmNwidth, 94); argcnt++;
    XtSetArg(args[argcnt], XmNheight, 65); argcnt++;
    deployLatchArmButton = XtCreateWidget("deployLatchArmButton",
		xmPushButtonWidgetClass,
		deployForm,
		args,
		argcnt);
    XmStringFree( xmstr[0] );

    XtAddCallback(deployLatchArmButton, XmNactivateCallback, activateDeployLatchArmButton, (XtPointer)0);
    XtManageChild(deployLatchArmButton);

    XtInitializeWidgetClass(xmLabelWidgetClass);
    argcnt = 0;
    XtSetArg(args[argcnt], XmNlabelString, (xmstr[0]=XmStringCreateLtoR(
		"Deployment Latch", XmSTRING_DEFAULT_CHARSET))); argcnt++;
    XtSetArg(args[argcnt], XmNrecomputeSize, False); argcnt++;
    XtSetArg(args[argcnt], XmNx, 50); argcnt++;
    XtSetArg(args[argcnt], XmNy, 0); argcnt++;
    XtSetArg(args[argcnt], XmNwidth, 181); argcnt++;
    XtSetArg(args[argcnt], XmNheight, 29); argcnt++;
    deployLabel = XtCreateWidget("deployLabel",
		xmLabelWidgetClass,
		deployForm,
		args,
		argcnt);
    XmStringFree( xmstr[0] );
    XtManageChild(deployLabel);

    argcnt = 0;
    XtSetArg(args[argcnt], XmNtopOffset, 10); argcnt++;
    XtSetArg(args[argcnt], XmNtopAttachment, XmATTACH_WIDGET); argcnt++;
    XtSetArg(args[argcnt], XmNtopWidget, deployLabel); argcnt++;
    XtSetValues(deployLatchArmButton, args, argcnt);

    argcnt = 0;
    XtSetArg(args[argcnt], XmNtopOffset, 10); argcnt++;
    XtSetArg(args[argcnt], XmNtopAttachment, XmATTACH_WIDGET); argcnt++;
    XtSetArg(args[argcnt], XmNtopWidget, deployLabel); argcnt++;
    XtSetArg(args[argcnt], XmNleftOffset, 30); argcnt++;
    XtSetArg(args[argcnt], XmNleftAttachment, XmATTACH_WIDGET); argcnt++;
    XtSetArg(args[argcnt], XmNleftWidget, deployLatchArmButton); argcnt++;
    XtSetValues(deployLatchReleaseButton, args, argcnt);

    argcnt = 0;
    XtSetArg(args[argcnt], XmNtopOffset, 0); argcnt++;
    XtSetArg(args[argcnt], XmNtopAttachment, XmATTACH_WIDGET); argcnt++;
    XtSetArg(args[argcnt], XmNtopWidget, toolsledFrame); argcnt++;
    XtSetArg(args[argcnt], XmNleftOffset, 0); argcnt++;
    XtSetArg(args[argcnt], XmNleftAttachment, XmATTACH_OPPOSITE_WIDGET); argcnt++;
    XtSetArg(args[argcnt], XmNleftWidget, toolsledFrame); argcnt++;
    XtSetValues(deployFrame, args, argcnt);

    return( retval );
}

