home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Fred Fish Collection 1.5
/
ffcollection-1-5-1992-11.iso
/
ff_disks
/
200-299
/
ff204.lzh
/
PopInfo
/
YesNo.c
< prev
Wrap
C/C++ Source or Header
|
1989-04-30
|
2KB
|
53 lines
#include <intuition/intuitionbase.h>
#define OKAY 1
#define CANCEL 0
short YesNoXYBorder[]={
0,0,101,0,101,12,0,12,0,0};
struct Border YesNoBorder={
-1,-1,1,0,JAM1,5,YesNoXYBorder,NULL};
struct IntuiText OkayText={
1,1,JAM1,5,2,NULL," OKAY",NULL};
struct IntuiText CancelText={
1,1,JAM1,5,2,NULL," CANCEL",NULL};
struct Gadget OkayGadget={
NULL,8,20,100,11,GADGHCOMP,RELVERIFY,BOOLGADGET,
(APTR)&YesNoBorder,NULL,&OkayText,NULL,NULL,OKAY,NULL};
struct Gadget CancelGadget={
&OkayGadget,120,20,100,11,GADGHCOMP,RELVERIFY,BOOLGADGET,
(APTR)&YesNoBorder,NULL,&CancelText,NULL,NULL,CANCEL,NULL};
struct IntuiText YesNoText={
1,1,JAM1,8,7,NULL,NULL,NULL};
struct NewWindow YesNoWindow={
50,30,230,36,0,3,GADGETUP|VANILLAKEY,ACTIVATE|RMBTRAP,&CancelGadget,
NULL,NULL,NULL,NULL,0,0,0,0,CUSTOMSCREEN};
struct Window *QWindow;
struct IntuiMessage *MyMsg;
struct IntuitionBase *IntuitionBase;
YesNo(text)
char *text;
{
int Class,Code;
char key;
IntuitionBase=(struct IntuitionBase *) OpenLibrary("intuition.library",0);
YesNoWindow.Screen=(struct Screen *) IntuitionBase->ActiveScreen;
QWindow=(struct Window *) OpenWindow(&YesNoWindow);
YesNoText.IText=text;
PrintIText(QWindow->RPort,&YesNoText,0,0);
waitforinput:
Wait (1<<QWindow->UserPort->mp_SigBit);
MyMsg=GetMsg(QWindow->UserPort);
ReplyMsg(MyMsg);
Class=MyMsg->Class; Code=MyMsg->Code; key=toupper((char ) Code);
if (Class==VANILLAKEY && key!='Y' && key!='N') goto waitforinput;
CloseWindow(QWindow);
CloseLibrary(IntuitionBase);
if (((struct Gadget *) MyMsg->IAddress)->GadgetID==OKAY || key=='Y') return(TRUE);
return(FALSE);
}