Exemplo n.º 1
0
void create_models ( Widget parent )
{
Arg			args[10];
Cardinal		argcnt;
Widget			pane, form, rowcol;
static char		first = 1;

/*------------------------------------------------------------*/

/* Create a popup shell & list widget for the file list. */
	argcnt = 0;
	XtSetArg(args[argcnt], XmNcolormap, gemmap); argcnt++;
	XtSetArg(args[argcnt], XmNvisual,   gemvis); argcnt++;
	model_toplevel = XmCreateBulletinBoardDialog(parent,
			"ModelSelect",args, argcnt);

/*
 * models and files were read through create_model_menu()
 * first time
 */
	if ( !first ) {
		get_models();
		first = 0;
	}

	pane = XtVaCreateManagedWidget("modelpane",
				xmPanedWindowWidgetClass,
				model_toplevel,
				XmNsashWidth,  1,
				XmNsashHeight, 1,
				NULL);

	rowcol = XtVaCreateManagedWidget("ModelRC",
				  xmRowColumnWidgetClass, pane,
				  XmNorientation, XmVERTICAL,
				  XmNpacking, XmPACK_COLUMN,
				  NULL );

	create_model_list(rowcol);

	form = XtVaCreateManagedWidget("ModelFileFrame",
				  xmFormWidgetClass, pane,
				  NULL );

	model_filelist(form);

	rowcol = XtVaCreateManagedWidget("ModelConfirm",
				  xmRowColumnWidgetClass, pane,
				  XmNorientation, XmHORIZONTAL,
				  NULL );

	create_std_buttons( rowcol, (XtCallbackProc)model_confirm );

}
Exemplo n.º 2
0
bool wxDialog::XmDoCreateTLW(wxWindow* parent,
                             wxWindowID WXUNUSED(id),
                             const wxString& WXUNUSED(title),
                             const wxPoint& WXUNUSED(pos),
                             const wxSize& WXUNUSED(size),
                             long WXUNUSED(style),
                             const wxString& name)
{
    Widget parentWidget = (Widget) 0;
    if( parent )
        parentWidget = (Widget) parent->GetTopWidget();
    if( !parent )
        parentWidget = (Widget) wxTheApp->GetTopLevelWidget();

    wxASSERT_MSG( (parentWidget != (Widget) 0),
                  "Could not find a suitable parent shell for dialog." );

    Arg args[2];
    XtSetArg (args[0], XmNdefaultPosition, False);
    XtSetArg (args[1], XmNautoUnmanage, False);
    Widget dialogShell =
        XmCreateBulletinBoardDialog( parentWidget,
                                     name.char_str(),
                                     args, 2);
    m_mainWidget = (WXWidget) dialogShell;

    // We don't want margins, since there is enough elsewhere.
    XtVaSetValues( dialogShell,
                   XmNmarginHeight,   0,
                   XmNmarginWidth,    0,
                   XmNresizePolicy, XmRESIZE_NONE,
                   NULL ) ;

    XtTranslations ptr ;
    XtOverrideTranslations(dialogShell,
        ptr = XtParseTranslationTable("<Configure>: resize()"));
    XtFree((char *)ptr);

    XtRealizeWidget(dialogShell);

    wxAddWindowToTable( (Widget)m_mainWidget, this );

    return true;
}
Exemplo n.º 3
0
struct VarInput *GUI_MakeMenuButton(
				    struct FFTSound *fftsound,
				    void *pointer,
				    Widget menu,
				    char *name,
				    int x1,int x2
				    )
{

  struct VarInput *sm=calloc(1,sizeof(struct VarInput));
  XmString text=XmStringCreateLocalized(name);
  char *keys[]={"0","1","2","3","4","5","6","7","8","9","Q","W","E","R","T","Y","U","I","O","A","S","D"};
  char *temp1;
  char temp2[32];

  temp1=keys[transformnum];
  sprintf(temp2,"<Key>%s",temp1);
  transformnum++;

  a=sm->managedwidget=XtVaCreateManagedWidget(
				       "something",
				       xmPushButtonWidgetClass,menu,
				       XmNmnemonic,XStringToKeysym(temp1),XmNaccelerator,temp2,
				       XmNacceleratorText,XmStringCreateLocalized(temp1),
				       NULL
				       );

  XtVaSetValues(sm->managedwidget,XmNlabelString,text,NULL);

  sm->parentwidget=XmCreateBulletinBoardDialog(mainWindow,"sfform",NULL,0);
  XtVaSetValues(sm->parentwidget,XmNautoUnmanage,FALSE,NULL);

  sm->x1=x1;
  sm->x2=x2;
  sm->y=4;
  sm->radio=NULL;
  sm->fftsound=fftsound;
  sm->pointer=pointer;

  return sm;
}
Exemplo n.º 4
0
Arquivo: motif.c Projeto: E-LLP/QuIP
void make_menu(QSP_ARG_DECL  Screen_Obj *sop, Screen_Obj *mip)
{
#ifdef HAVE_MOTIF
	Arg al[10];
	int ac = 0;
	Widget post_button;
	char buf[8];

	sop->so_frame = generic_frame(curr_panel->po_panel_obj,
		sop, XmSHADOW_OUT);

	strcpy(buf,"Popup");	/* all this to elim a compiler warning */

#ifdef FOOBAR
	if(popups_supported)
	{
		/* XmCreatePopupMenu works on SGI and X, but not with
		OPENWIN */
		sop->so_obj = XmCreatePopupMenu(sop->so_frame,
			buf, al, ac);
		XtAddEventHandler(sop->so_frame,
			ButtonPressMask, FALSE,
			(XtEventHandler) post_menu_handler,
			(XtPointer)  sop->so_obj);
	}
	else
#endif /* FOOBAR */
	{
		dialog_y = 1;
		sop->so_obj = XmCreateBulletinBoardDialog(sop->so_frame,
			buf, al, ac);
		XtSetArg(al[ac], XmNuserData, sop); ac++;
		/* BUG?  should this be so_action_text??? */
		post_button = XmCreatePushButton(sop->so_frame,
			(char *)sop->so_action_text, al, ac);
		XtManageChild(post_button);
		XtAddCallback(post_button, XmNactivateCallback, post_func, NULL);
	}
#endif /* HAVE_MOTIF */
}
Exemplo n.º 5
0
Widget dslw_create ( Widget w )
/************************************************************************
 * dslw_create                                                          *
 *                                                                      *
 * This function creates the data selection popup window.               *
 *                                                                      *
 * Widget dslw_create ( w )		                                *
 *                                                                      *
 * Input parameters:                                                    *
 *      w		Widget	The parent widget                    	*
 *                                                                      *
 * Output parameters:                                                   *
 *                                                                      *
 * Return parameters:                                                   *
 *      dslw_create	Widget	The data selection popup  widget        *
 *                                                                      *
 **                                                                     *
 * Log:                                                                 *
 * L. Williams/EAI       7/95   for nwx2.1                		*
 * C. Lin/EAI            8/95                   			*
 * D.W.Plummer/NCEP	 9/96	Commented out "Select by ..."; changed	*
 *				time selection to hours instead of days	*
 * D.W.Plummer/NCEP	11/96	removed commented section from 9/96	*
 *                              changed time selection from hours only	*
 *				to either hours or days depending on	*
 *				product type (eg., W or O, etc.)	*
 * G. Krueger/EAI	11/97	Renamed NxmHelp functions		*
 * I. Durham/GSC 	 5/98	changed call for underscore		*
 * T. Piper/GSC		 6/01	Freed xmstr				*
 * T. Piper/SAIC	 7/02	Reinstated the select by state option	*	
 * T. Piper/SAIC	10/05	declared ii & nn long			*
 * E. Safford/SAIC	12/07	renamed guidInit to idata_init()	*
 ***********************************************************************/
{
struct guid_grp *grp_ptr;
Widget		paned_w, topform; 
Widget		groups_frame, products_frame;
Widget		rc, form, form2, form3, form4, frame3;
Widget		radio_box1, close_button, help_button;
Widget   	label1, label2, label3, label4;
Widget		data_group_list;

XmString	station, state, *xmstr, msg;
Arg 		wargs[10];
Pixel		fg, bg;
int		jj, ier;
long		ii, nn;

/*---------------------------------------------------------------------*/

	nn = 0;
	XtSetArg(wargs[nn], XmNtitle, "Data Selection"); nn++;
        dataSelectW = XmCreateBulletinBoardDialog(w, "data_selection",
						   wargs, nn);

	paned_w = XtVaCreateManagedWidget("paned_w",
			xmPanedWindowWidgetClass, dataSelectW,
			XmNsashWidth,             1,
			XmNsashHeight,            1,
			NULL);

	XtVaGetValues(paned_w, 
		      XmNforeground, &fg, 
		      XmNbackground, &bg, 
		      NULL);

	topform = XtVaCreateManagedWidget("topform",
			xmFormWidgetClass, paned_w,
			NULL);
	
/*
 *	Create Group List
 */
	msg = XmStringCreateLocalized("Select Data Type Group");
	label1 = XtVaCreateManagedWidget("Group label",
			xmLabelWidgetClass, topform,
			XmNlabelString,     msg,
			XmNtopAttachment,   XmATTACH_FORM,
			XmNrightAttachment, XmATTACH_FORM,
			XmNleftAttachment,  XmATTACH_FORM,
			NULL);
	XmStringFree(msg);

	groups_frame = XtVaCreateWidget("groups_frame",
			xmFrameWidgetClass, topform,
			XmNshadowType,      XmSHADOW_IN,
			XmNtopAttachment,   XmATTACH_WIDGET,
			XmNtopWidget,       label1, 
			XmNrightAttachment, XmATTACH_FORM,
			XmNleftAttachment,  XmATTACH_FORM,
			NULL);

	form = XtVaCreateWidget("form", xmFormWidgetClass, groups_frame, NULL);

	guid_ngrp = idata_init( &ier );
	if ( ier != G_NORMAL ) {
	    printf("NWX:  ERROR reading guidata.tbl.  See system administrator.\n");
	    exit(guid_ngrp);
	}

	grp_ptr=guid_grp_head;

	xmstr = (XmString *) XtMalloc(sizeof (XmString) * (size_t)guid_ngrp);
	for (ii = 0; ii < guid_ngrp; ii++) {
      		xmstr[ii] = XmStringCreateLocalized(grp_ptr->grpname);
      		grp_ptr = grp_ptr->nextgrp;
	}

	nn = 0;
	XtSetArg(wargs[nn], XmNitems,            xmstr);            nn++;
	XtSetArg(wargs[nn], XmNitemCount,        guid_ngrp);        nn++;
	XtSetArg(wargs[nn], XmNvisibleItemCount, 7);                nn++;
	XtSetArg(wargs[nn], XmNselectionPolicy,  XmSINGLE_SELECT);  nn++;
	XtSetArg(wargs[nn], XmNscrollingPolicy,  XmAUTOMATIC);      nn++;
	XtSetArg(wargs[nn], XmNtopAttachment,    XmATTACH_FORM);    nn++;
	XtSetArg(wargs[nn], XmNleftAttachment,   XmATTACH_FORM);    nn++;
	XtSetArg(wargs[nn], XmNrightAttachment,  XmATTACH_FORM);    nn++;
	XtSetArg(wargs[nn], XmNbottomAttachment, XmATTACH_FORM);    nn++;
	data_group_list = XmCreateScrolledList(form, "data_group", wargs, nn);

	XtManageChild(data_group_list);

	XtAddCallback(data_group_list, XmNsingleSelectionCallback,
			dslw_groupCb, _prodlistW);

	XtManageChild(form);
	XtManageChild(groups_frame);

	for (jj = 0; jj < guid_ngrp; jj++)
      		XmStringFree(xmstr[jj]);
	XtFree((XtPointer)xmstr);
	
/*
 *	Create Product List
 */
	msg = XmStringCreateLocalized("Select Data Type Product");
	label2 = XtVaCreateManagedWidget("product label1",
			xmLabelWidgetClass, topform,
			XmNlabelString,     msg,
			XmNtopAttachment,   XmATTACH_WIDGET,
			XmNtopWidget,       groups_frame,
			XmNrightAttachment, XmATTACH_FORM,
			XmNleftAttachment,  XmATTACH_FORM,
			NULL);
	XmStringFree(msg);

	msg = XmStringCreateLocalized("  * Product Unavailable  ");
	label3 = XtVaCreateManagedWidget("product label2",
			xmLabelWidgetClass, topform,
			XmNlabelString,     msg,
			XmNtopAttachment,   XmATTACH_WIDGET,
			XmNtopWidget,       label2,
			XmNrightAttachment, XmATTACH_FORM,
			XmNleftAttachment,  XmATTACH_FORM,
			NULL);
	XmStringFree(msg);

	products_frame = XtVaCreateWidget("products_frame", 
			xmFrameWidgetClass, topform,
			XmNshadowType,      XmSHADOW_IN,
			XmNtopAttachment,   XmATTACH_WIDGET,
			XmNtopWidget,       label3,
			XmNrightAttachment, XmATTACH_FORM,
			XmNleftAttachment,  XmATTACH_FORM,
			NULL);

	form = XtVaCreateWidget ("form", xmFormWidgetClass, 
				  products_frame, NULL);

	 nn = 0;
	XtSetArg(wargs[nn], XmNvisibleItemCount, 7);                nn++;
	XtSetArg(wargs[nn], XmNwordWrap,         True);             nn++;
	XtSetArg(wargs[nn], XmNselectionPolicy,  XmSINGLE_SELECT);  nn++;
	XtSetArg(wargs[nn], XmNscrollingPolicy,  XmAUTOMATIC);      nn++;
	XtSetArg(wargs[nn], XmNtopAttachment,    XmATTACH_FORM);    nn++;
	XtSetArg(wargs[nn], XmNleftAttachment,   XmATTACH_FORM);    nn++;
	XtSetArg(wargs[nn], XmNrightAttachment,  XmATTACH_FORM);    nn++;
	XtSetArg(wargs[nn], XmNbottomAttachment, XmATTACH_FORM);    nn++;
	_prodlistW = XmCreateScrolledList(form, "data_type", wargs, nn);

	XtManageChild(_prodlistW);

	XtAddCallback(_prodlistW, XmNsingleSelectionCallback,
			 dslw_prodCb, NULL);

	XtManageChild(form);
	XtManageChild(products_frame);

/*
 *  Bottom Pane
 */
	form = XtVaCreateManagedWidget("form",
			xmFormWidgetClass, paned_w,
			XmNfractionBase, 1,
			NULL);

/*
 *  "Time Covered"
 */
	_dttmFrameW = XtVaCreateManagedWidget("_dttmFrameW",
			xmFrameWidgetClass,  form,
			XmNshadowType,       XmSHADOW_IN,
			XmNtopAttachment,    XmATTACH_FORM,
			XmNbottomAttachment, XmATTACH_FORM,
			XmNleftAttachment,   XmATTACH_POSITION,
			XmNleftPosition,     0,
			XmNrightAttachment,  XmATTACH_POSITION,
			XmNrightPosition,    1,
			NULL);

	form2 = XtVaCreateManagedWidget("form2", xmFormWidgetClass, 
						_dttmFrameW, NULL);

        pdata_setTimeCovered( EVENT, &ier );
/*	timeCoveredType = EVENT; */
	msg = XmStringCreateLocalized("Time Covered (Hours)");
	_timeLabel = XtVaCreateManagedWidget("Time",
			xmLabelWidgetClass, form2,
			XmNlabelString,     msg,
			XmNtopAttachment,   XmATTACH_FORM,
			XmNleftAttachment,  XmATTACH_FORM,
			NULL);
	XmStringFree(msg);

	rc = XtVaCreateWidget("rc",
                        xmRowColumnWidgetClass, form2,
                        XmNorientation,         XmHORIZONTAL,
                        XmNradioBehavior,       True,
                        XmNtraversalOn,         False,
                        XmNtopAttachment,       XmATTACH_WIDGET,
                        XmNtopWidget,           _timeLabel,
                        XmNleftAttachment,      XmATTACH_FORM,
                        XmNbottomAttachment,    XmATTACH_FORM,
                        NULL);

	nn = (long)XtNumber ( HourVals );
	_timeButtons = (WidgetList)XtMalloc(nn * sizeof(Widget));

	for ( ii = 0 ; ii < nn ; ii++ ) {
                _timeButtons[ii] =
                        XtVaCreateManagedWidget( HourVals[ii],
                            xmToggleButtonWidgetClass, rc,
                            NULL );
                XtAddCallback(_timeButtons[ii], XmNarmCallback,
                        (XtCallbackProc)dslw_dttmCb,
                        (XtPointer)ii);
        }

	XmToggleButtonSetState( _timeButtons[0], True, False );
	XtManageChild(rc);
	dslw_dttmSensitive ( False );

/*
 *  Select By
 */
	form = XtVaCreateManagedWidget("form",
                        xmFormWidgetClass, paned_w,
                        XmNfractionBase, 1,
                        NULL);

	frame3 = XtVaCreateManagedWidget("frame3",
                        xmFrameWidgetClass,  form,
                        XmNshadowType,       XmSHADOW_IN,
                        XmNtopAttachment,    XmATTACH_FORM,
                        XmNbottomAttachment, XmATTACH_FORM,
                        XmNleftAttachment,   XmATTACH_POSITION,
                        XmNleftPosition,     0,
                        XmNrightAttachment,  XmATTACH_POSITION,
                        XmNrightPosition,    1,
                        NULL);


	form4 = XtVaCreateManagedWidget("form", xmFormWidgetClass, frame3, NULL);

	msg = XmStringCreateLocalized("Select By");
        label4 = XtVaCreateManagedWidget("select_by",
                        xmLabelWidgetClass, form4,
                        XmNlabelString,     msg,
                        XmNtopAttachment,   XmATTACH_FORM,
                        XmNleftAttachment,  XmATTACH_FORM,
                        NULL);
        XmStringFree(msg);

        station = XmStringCreateLocalized("station");
        state = XmStringCreateLocalized("state");
        radio_box1 = XmVaCreateSimpleRadioBox(form4,
                        "radio_box1", 0, (XtCallbackProc)dslw_slctCb,
                        XmVaRADIOBUTTON,     station, NULL, NULL, NULL,
                        XmVaRADIOBUTTON,     state, NULL, NULL, NULL,
			XmNnumColumns,	     2,
			XmNspacing,	     55,
                        XmNradioBehavior,    TRUE,
                        XmNtopAttachment,    XmATTACH_WIDGET,
                        XmNtopWidget,        label4,
                        XmNleftAttachment,   XmATTACH_FORM,
                        XmNbottomAttachment, XmATTACH_FORM,
                        NULL);
        XtManageChild(radio_box1);

        XmStringFree(station);
        XmStringFree(state);

/*
 *  CLOSE, and HELP
 */
	form3 = XtVaCreateManagedWidget("form3", 
			xmFormWidgetClass, paned_w,
			XmNfractionBase, 2,
			NULL);

	close_button = XtVaCreateManagedWidget("CLOSE",
			xmPushButtonGadgetClass, form3,
			XmNshadowType,           XmSHADOW_IN,
			XmNtopAttachment,        XmATTACH_FORM,
			XmNbottomAttachment,     XmATTACH_FORM,
			XmNleftAttachment,       XmATTACH_POSITION,
			XmNleftPosition,         0,
			XmNrightAttachment,      XmATTACH_POSITION,
			XmNrightPosition,        1,
			NULL);

	XtAddCallback ( close_button, XmNactivateCallback, 
		        (XtCallbackProc)dslw_closeCb, NULL);

	help_button = XtVaCreateManagedWidget("HELP",
			xmPushButtonGadgetClass, form3,
			XmNshadowType,           XmSHADOW_IN,
			XmNtopAttachment,        XmATTACH_FORM,
			XmNbottomAttachment,     XmATTACH_FORM,
			XmNleftAttachment,       XmATTACH_POSITION,
			XmNleftPosition,         1,
			XmNrightAttachment,      XmATTACH_POSITION,
			XmNrightPosition,        2,
			NULL);

	XtAddCallback ( help_button, XmNactivateCallback, 
			(XtCallbackProc)NxmHelp_helpBtnCb,
			(XtPointer)2);

	return(dataSelectW);

}
Exemplo n.º 6
0
Widget XmCreateBulletinBoardDialog_TNK(Widget parent, String name, ArgList arglist,Cardinal argcount) { return XmCreateBulletinBoardDialog(parent, name, arglist, argcount);}
Exemplo n.º 7
0
/* ARGSUSED */
void show_textCb ( Widget w, XtPointer clnt, 
					XmDrawingAreaCallbackStruct *call )
/********************************************************************************
*										*
**										*
*										*	
* T. Piper/SAIC          1/02   Freed xfle, xmfl, & text_font as necessary	*
* T. Piper/SAIC		 2/02	Added 2nd argument, XtPointer client_data	*
*										*
********************************************************************************/
{
static Widget textpane, textform, textdialog_cancel, textbutton_form, textdialog_save;
XmString tstr;
XmFontList xmfl;
XmFontListEntry xfle;
Arg args[10];
Cardinal argcnt;

/*----------------------------------------------------------------------------*/

if( ! text_dialog)
   {
   text_dialog = XmCreateBulletinBoardDialog(toplevel, "textdialog_panel", NULL, 0);

   tstr = XmStringCreateLocalized( "Sounding Text" );
   XtVaSetValues( text_dialog, XmNdialogTitle, tstr, NULL);
   XmStringFree(tstr);

   textpane = XtVaCreateManagedWidget("text_pane",
                                xmPanedWindowWidgetClass,
                                text_dialog,
                                XmNsashWidth, 1,
                                XmNsashHeight, 1,
                                NULL);


   textform = XtVaCreateWidget("textform", xmFormWidgetClass,
                                textpane, XmNwidth, 650, XmNheight, 800,
                                XmNfractionBase, 10, NULL );
   argcnt = 0;
   XtSetArg(args[argcnt],XmNscrollBarDisplayPolicy,XmAS_NEEDED); argcnt++;
   XtSetArg(args[argcnt],XmNscrollingPolicy,XmAUTOMATIC); argcnt++;
   XtSetArg(args[argcnt],XmNheight,800); argcnt++;
   XtSetArg(args[argcnt],XmNwidth,650); argcnt++;
   textfield = XmCreateScrolledText(textform,"textform_text",
				args, argcnt);
   if ( text_font ) XFreeFont ( XtDisplay(toplevel), text_font );
   text_font = XLoadQueryFont(XtDisplay(toplevel),"-adobe-courier-bold-r-normal--14-100-100-100-m-90-iso8859-1");
   xfle = XmFontListEntryCreate(XmFONTLIST_DEFAULT_TAG, XmFONT_IS_FONT, (XtPointer)text_font );
   xmfl = XmFontListAppendEntry(NULL, xfle);
   XtFree ( (XtPointer)xfle );
   XtVaSetValues(textfield, XmNeditMode, XmMULTI_LINE_EDIT,
                                XmNeditable, False,
				XmNfontList, xmfl,
                                NULL );
   XmFontListFree ( xmfl );
   XtManageChild ( textfield );
   XtManageChild ( textform );

   textbutton_form = XtVaCreateWidget("textbuttonform", xmFormWidgetClass,
                                textpane, XmNwidth, 650, XmNfractionBase, 10, NULL );

   textdialog_save = XtVaCreateManagedWidget ("SAVE",
                        xmPushButtonWidgetClass, textbutton_form,
                        XmNleftAttachment, XmATTACH_POSITION,
                        XmNleftPosition, 3,
                        XmNtopAttachment, XmATTACH_FORM,
                        XmNbottomAttachment, XmATTACH_FORM,
                        XmNrightAttachment, XmATTACH_POSITION,
                        XmNrightPosition, 5,
                        NULL );
   XtAddCallback(textdialog_save, XmNactivateCallback,
                        (XtCallbackProc)textdialog_save_cb, NULL);

   textdialog_cancel = XtVaCreateManagedWidget ("CLOSE",
                        xmPushButtonWidgetClass, textbutton_form,
                        XmNleftAttachment, XmATTACH_POSITION,
                        XmNleftPosition, 5,
                        XmNtopAttachment, XmATTACH_FORM,
                        XmNbottomAttachment, XmATTACH_FORM,
                        XmNrightAttachment, XmATTACH_POSITION,
                        XmNrightPosition, 7,
                        NULL );
   XtAddCallback(textdialog_cancel, XmNactivateCallback,
                        (XtCallbackProc)textdialog_cancel_cb, NULL);

   XtManageChild ( textbutton_form );

   XtManageChild ( textpane );
   XtManageChild ( text_dialog );
   
   }
else
   XtManageChild ( text_dialog );

update_text_values();

}
Exemplo n.º 8
0
void create_mangroup ( Widget parent )
/************************************************************************
 *
 *	This subroutione creates the manual group widgets.
 *
 *		create_mangroup  ( parent )
 *
 *	Input parameters:
 *		parent	Wiget		parent widget id
 *
 ***********************************************************************/
{
Arg			args[10];
Cardinal		argcnt;
Widget			group_pane, form, frame[3];
Widget			rowcol, model_button;

/*----------------------------------------------------------------------*/

/* Create a popup shell & list widget for the file list. */

	group_panel_toplevel = XmCreateBulletinBoardDialog(parent,
			"group_panel", args, 0);

	argcnt = 0;
	XtSetArg(args[argcnt], XmNsashWidth, 1); argcnt++;
	XtSetArg(args[argcnt], XmNsashHeight, 1); argcnt++;
	group_pane = XtCreateManagedWidget("group_pane",
						xmPanedWindowWidgetClass,
						group_panel_toplevel,
						args,
						argcnt);

	argcnt = 0;
	form = XtCreateManagedWidget("group_form",
						xmFormWidgetClass,
						group_pane,
						NULL,
						argcnt);

	frame[0] = XtVaCreateManagedWidget("Inc_Group",
				  xmFrameWidgetClass, form,
				  XmNtopAttachment,    XmATTACH_FORM,
				  XmNleftAttachment,	 XmATTACH_FORM,
				  XmNbottomAttachment,	   XmATTACH_POSITION,
				  XmNbottomPosition,	80,
				  NULL );

	create_search(frame[0]);

	frame[1] = XtVaCreateManagedWidget("FListFrame",
				  xmFrameWidgetClass, form,
				  XmNtopAttachment,    XmATTACH_FORM,
				  XmNleftAttachment,	XmATTACH_WIDGET,
				  XmNleftWidget,    frame[0],
				  XmNbottomAttachment,	   XmATTACH_POSITION,
				  XmNbottomPosition,	80,
				  NULL );

	gframe_listW = create_framelist(frame[1], 1);

	frame[2] = XtVaCreateManagedWidget("FListGroup",
				  xmFrameWidgetClass, form,
				  XmNtopAttachment,    XmATTACH_FORM,
				  XmNleftAttachment,	XmATTACH_WIDGET,
				  XmNleftWidget,	frame[1],
				  XmNrightAttachment,	 XmATTACH_FORM,
				  XmNbottomAttachment,	   XmATTACH_POSITION,
				  XmNbottomPosition,	80,
				  NULL );

	ggroup_listW = create_grouplist(frame[2]);

	rowcol = XtVaCreateManagedWidget("GroupNameRc",
				  xmRowColumnWidgetClass, form,
				  XmNtopAttachment,    XmATTACH_POSITION,
				  XmNleftAttachment,	XmATTACH_POSITION,
				  XmNnumColumns, 1,
				  XmNorientation, XmHORIZONTAL,
				  XmNradioBehavior, False,
				  XmNpacking, XmPACK_TIGHT,
				  NULL );

	create_groupname(rowcol);
	model_button = create_buttons(form);
	create_model_selection(model_button);

	rowcol = XtVaCreateManagedWidget("ManualGroupCtrbRc",
				  xmRowColumnWidgetClass, group_pane,
				  XmNnumColumns, 1,
				  XmNorientation, XmHORIZONTAL,
				  XmNradioBehavior, False,
				  NULL );

	create_ctrB(rowcol);
}