3
#include <X11/Intrinsic.h>
5
#include <X11/StringDefs.h>
6
#include <X11/Xaw/Box.h>
7
#include <X11/Xaw/Command.h>
8
#include <X11/Xaw/Label.h>
10
#include "metaconst.h"
14
extern void GetMetanetGeometry();
19
void AlertOk(w,shell,callData)
24
XtPopdown((Widget)shell);
28
void MetanetAlert(description)
36
XtCallbackRec callbacks[2];
39
callbacks[1].callback = NULL;
40
callbacks[1].closure = NULL;
42
GetMetanetGeometry(&x,&y,&w,&h);
44
XtSetArg(args[iargs], XtNx, x + incX); iargs++;
45
XtSetArg(args[iargs], XtNy, y + incY); iargs++;
46
XtSetArg(args[iargs], XtNfont, theG.metafont); iargs++;
47
shell = XtCreatePopupShell("Metanet Alert",transientShellWidgetClass,
51
XtSetArg(args[iargs], XtNfont, theG.metafont); iargs++;
52
Alert = XtCreateManagedWidget("Alert",boxWidgetClass,shell,args,iargs);
55
XtSetArg(args[iargs], XtNlabel, description); iargs++;
56
XtSetArg(args[iargs], XtNborderWidth, 0); iargs++;
57
XtSetArg(args[iargs], XtNfont, theG.metafont); iargs++;
58
XtCreateManagedWidget("labelAlert",labelWidgetClass,Alert,args,iargs);
60
callbacks[0].callback = (XtCallbackProc)AlertOk;
61
callbacks[0].closure = (caddr_t)shell;
63
XtSetArg(args[iargs], XtNlabel, "ok" ); iargs++;
64
XtSetArg(args[iargs], XtNcallback, callbacks); iargs++;
65
XtSetArg(args[iargs], XtNfont, theG.metafont); iargs++;
66
XtCreateManagedWidget("Alertcommand",commandWidgetClass,
69
XtPopup(shell,XtGrabExclusive);
73
XtAppNextEvent(app_con,&event);
74
XtDispatchEvent(&event);
76
XtDestroyWidget(shell);
79
void AlertYes(w,shell,callData)
84
XtPopdown((Widget)shell);
89
void AlertNo(w,shell,callData)
94
XtPopdown((Widget)shell);
99
int MetanetYesOrNo(description)
107
XtCallbackRec callbacks[2];
110
callbacks[1].callback = NULL;
111
callbacks[1].closure = NULL;
113
GetMetanetGeometry(&x,&y,&w,&h);
115
XtSetArg(args[iargs], XtNx, x + incX); iargs++;
116
XtSetArg(args[iargs], XtNy, y + incY); iargs++;
117
XtSetArg(args[iargs], XtNfont, theG.metafont); iargs++;
118
shell = XtCreatePopupShell("Metanet Alert",transientShellWidgetClass,
119
toplevel,args,iargs);
122
XtSetArg(args[iargs], XtNfont, theG.metafont); iargs++;
123
Alert = XtCreateManagedWidget("Alert",boxWidgetClass,shell,args,iargs);
126
XtSetArg(args[iargs], XtNlabel, description); iargs++;
127
XtSetArg(args[iargs], XtNborderWidth, 0); iargs++;
128
XtSetArg(args[iargs], XtNfont, theG.metafont); iargs++;
129
XtCreateManagedWidget("labelAlert",labelWidgetClass,Alert,args,iargs);
131
callbacks[0].callback = (XtCallbackProc)AlertYes;
132
callbacks[0].closure = (caddr_t)shell;
134
XtSetArg(args[iargs], XtNlabel, "yes" ); iargs++;
135
XtSetArg(args[iargs], XtNcallback, callbacks); iargs++;
136
XtSetArg(args[iargs], XtNfont, theG.metafont); iargs++;
137
XtCreateManagedWidget("yescommand",commandWidgetClass,Alert,args,iargs);
139
callbacks[0].callback = (XtCallbackProc)AlertNo;
140
callbacks[0].closure = (caddr_t)shell;
142
XtSetArg(args[iargs], XtNlabel, "no" ); iargs++;
143
XtSetArg(args[iargs], XtNcallback, callbacks); iargs++;
144
XtSetArg(args[iargs], XtNfont, theG.metafont); iargs++;
145
XtCreateManagedWidget("nocommand",commandWidgetClass,Alert,args,iargs);
147
XtPopup(shell,XtGrabExclusive);
151
XtAppNextEvent(app_con,&event);
152
XtDispatchEvent(&event);
154
XtDestroyWidget(shell);