#include "mdp.h" void create_dialogs(Widget parent) { Arg al[50]; Cardinal ac; Widget button; ac = 0; XtSetArg(al[ac],XmNdirMask,""); ac++; XtSetArg(al[ac],XmNwidth,300); ac++; XtSetArg(al[ac],XmNfontList,fontlist); ac++; XtSetArg(al[ac],XmNlabelFontList,fontlist); ac++; XtSetArg(al[ac],XmNtextFontList,tfontlist); ac++; XtSetArg(al[ac],XmNdialogTitle, XmStringCreateLtoR("File", charset)); ac++; open_dialog = XmCreateFileSelectionDialog(parent,"openDialog",al,ac); XtAddCallback(open_dialog,XmNokCallback,okopen_cb, (XtPointer)open_dialog); XtAddCallback(open_dialog,XmNcancelCallback,cancel_cb, (XtPointer)open_dialog); button = XmFileSelectionBoxGetChild(open_dialog,XmDIALOG_HELP_BUTTON); XtUnmanageChild(button); } void okopen_cb(Widget w,XtPointer client,XtPointer app) { char *name; XmFileSelectionBoxCallbackStruct *fcb = (XmFileSelectionBoxCallbackStruct *) app; XmStringGetLtoR(fcb->value,charset,&name); /* hacer algo */ XtUnmanageChild((Widget)client); } void cancel_cb(Widget w,XtPointer client,XtPointer app) { XtUnmanageChild((Widget)client); }