/*
  Jerry J. Trantow
  1560 A. East Irving Place
  Milwaukee, Wi 53202-1460

HISTORY
24 June 1990 Converted from Tabs to spaces and 60 char line
11 July 1990 Changed GAD_CANCEL->GAD_STOP,GAD_OK->GAD_START
11 July 1990 Changed from GADGHCOMP to GADGHBOX 
*/

#define GAD_DELAYVALUE    (1) /* Gadget id numbers */
#define GAD_START         (2)
#define GAD_STOP          (3)
#define GAD_PRIORITYVALUE (4)

#define MAXBUF (15)         /* max gadget string buf size */
UBYTE DelayGadBuffer[MAXBUF]; /* space for gadget strings */
UBYTE UndoBuffer[MAXBUF];
UBYTE PriorityGadBuffer[MAXBUF];

char stTopaz[] = "topaz.font";
struct TextAttr taPlain=
{
  (STRPTR)stTopaz,        /* ta_Name  */
  (UWORD)8,               /* ta_YSize */
  (UBYTE)FS_NORMAL,       /* ta_Style */
  (UBYTE)FPF_ROMFONT      /* ta_Flags */
};
SHORT ChoiceList[]= /* coordinate pairs for gadget border */
{ 0, 0,
  49,0,
  49,9,
  0, 9,
  0, 0,
};
struct Border ChoiceBorder=
{ (SHORT)0,              /* LeftEdge   */
  (SHORT)0,              /* TopEdge    */
  (SHORT)2,              /* FrontPen   */
  (SHORT)3,              /* BackPen    */
  (SHORT)JAM1,           /* DrawMode   */
  (SHORT)5,              /* Count      */
  (SHORT *)&ChoiceList,  /* XY         */
  (struct Border *)NULL  /* NextBorder */
};
struct IntuiText DelayValueText=
{ (UBYTE)3,        /* FrontPen */
  (UBYTE)2,        /* BackPen  */
  (UBYTE)JAM1,     /* DrawMode */
  (SHORT)80,       /* LeftEdge */
  (SHORT)0,        /* TopEdge  */
  (struct TextAttr *)&taPlain,  /* ITextFont */
  (UBYTE *)"Delay [msec]",      /* IText     */
  (struct IntuiText *)NULL      /* NextText  */
};
struct IntuiText PriorityValueText=
{ (UBYTE)3,     /* FrontPen */
  (UBYTE)2,     /* BackPen  */
  (UBYTE)JAM1,  /* DrawMode */
  (SHORT)80,    /* LeftEdge */
  (SHORT)0,     /* TopEdge  */
  (struct TextAttr *)&taPlain, /* ITextFont */
  (UBYTE *)"Priority",         /* IText     */
  (struct IntuiText *)NULL     /* NextText  */
};
struct IntuiText StartText=
{ (UBYTE)3,     /* FrontPen */
  (UBYTE)2,     /* BackPen  */
  (UBYTE)JAM1,  /* DrawMode */
  (SHORT)5,    /* LeftEdge */
  (SHORT)2,     /* TopEdge  */
  (struct TextAttr *)&taPlain, /* ITextFont */
  (UBYTE *)"START",            /* IText     */
  (struct IntuiText *)NULL     /* NextText  */
};
struct IntuiText StopText=
{ (UBYTE)3,      /* FrontPen */
  (UBYTE)2,      /* BackPen  */
  (UBYTE)JAM1,   /* DrawMode */
  (SHORT)3,      /* LeftEdge */
  (SHORT)2,      /* TopEdge  */
  (struct TextAttr *)&taPlain, /* ITextFont */
  (UBYTE *)" STOP",            /* IText     */
  (struct IntuiText *)NULL     /* NextText  */
};
struct StringInfo DelaySpecialString =
{ (UBYTE *)DelayGadBuffer, /* Buffer     */
  (UBYTE *)UndoBuffer,     /* UndoBuffer */
  (SHORT)0,                /* BufferPos  */
  (SHORT)MAXBUF-1,         /* MaxChars   */
  (SHORT)0,                /* DispPos   */
  (SHORT)0,                /* UndoPos   */
  (SHORT)0,                /* NumChars  */
  (SHORT)0,                /* DispCount */
  (SHORT)0,                /* CLeft     */
  (SHORT)0,                /* CTop      */
  (struct Layer *)NULL,    /* LayerPtr  */
  (LONG)0L,                /* LongInt   */
  (struct KeyMap *)NULL    /* AltKeyMap */
};
struct StringInfo PrioritySpecialString =
{ (UBYTE *)PriorityGadBuffer, /* Buffer     */
  (UBYTE *)UndoBuffer,        /* UndoBuffer */
  (SHORT)0,               /* BufferPos */
  (SHORT)MAXBUF-1,        /* MaxChars  */
  (SHORT)0,               /* DispPos   */
  (SHORT)0,               /* UndoPos   */
  (SHORT)0,               /* NumChars  */
  (SHORT)0,               /* DispCount */
  (SHORT)0,               /* CLeft     */
  (SHORT)0,               /* CTop      */
  (struct Layer *)NULL,   /* LayerPtr  */
  (LONG)0L,               /* LongInt   */
  (struct KeyMap *)NULL   /* AltKeyMap */
};
struct Gadget DelayGadget =
{ (struct Gadget *)NULL,  /* NextGadget */
  120,15,64,10,           /* dimensions */
  (USHORT)GADGHCOMP,       /* Flags      */
  (USHORT)LONGINT|STRINGRIGHT
     |RELVERIFY,               /* Activation   */
  (USHORT)STRGADGET,           /* GadgetType   */
  (APTR)NULL,                  /* GadgetRender */
  (APTR)NULL,                  /* SelectRender */
  (struct IntuiText *)&DelayValueText, /* GadgetText */
  0L,                          /* MutualExclude */
  (APTR)&DelaySpecialString,   /* SpecialInfo   */
  (USHORT)GAD_DELAYVALUE,      /* GadgetID      */
  (APTR)NULL                   /* UserData      */
};
struct Gadget PriorityGadget =
{ (struct Gadget *)&DelayGadget,  /* NextGadget    */
  120,26,64,10,                   /* dimensions    */
  (USHORT)GADGHCOMP,               /* Flags         */
  (USHORT)LONGINT|STRINGRIGHT
     |RELVERIFY,                  /* Activation */
  (USHORT)STRGADGET,              /* GadgetType    */
  (APTR)NULL,                     /* GadgetRender  */
  (APTR)NULL,                     /* SelectRender  */
  (struct IntuiText *)&PriorityValueText, /* GadgetText */
  (LONG)0L,                       /* MutualExclude */
  (APTR)&PrioritySpecialString,   /* SpecialInfo   */
  (USHORT)GAD_PRIORITYVALUE,      /* GadgetID      */
  (APTR)NULL                      /* UserData      */
};
struct Gadget StopGadget =
{ (struct Gadget *)&PriorityGadget,         /* NextGadget */
  -75,-15,50,10,                            /* dimensions */
  (USHORT)GRELRIGHT|GRELBOTTOM|GADGHBOX,         /* Flags */
  (USHORT)RELVERIFY,                     /* Activation    */
  (USHORT)BOOLGADGET,                       /* GadgetType */
  (APTR)&ChoiceBorder,                    /* GadgetRender */
  (APTR)NULL,                             /* SelectRender */
  (struct IntuiText *)&StopText,            /* GadgetText */
  (LONG)0L,                              /* MutualExclude */
  (APTR)NULL,                              /* SpecialInfo */
  (USHORT)GAD_STOP,                           /* GadgetID */
  (APTR)NULL                                  /* UserData */
};
struct Gadget StartGadget =
{ (struct Gadget *)&StopGadget,   /* NextGadget    */
  25,-15,50,10,                   /* dimensions    */
  (USHORT)GADGHBOX|GRELBOTTOM,    /* Flags         */
  (USHORT)RELVERIFY,              /* Activation    */
  (USHORT)BOOLGADGET,             /* GadgetType    */
  (APTR)&ChoiceBorder,            /* GadgetRender  */
  (APTR)NULL,                     /* SelectRender  */
  (struct IntuiText *)&StartText, /* GadgetText    */
  (LONG)0L,                       /* MutualExclude */
  (APTR)NULL,                     /* SpecialInfo   */
  (USHORT)GAD_START,              /* GadgetID      */
  (APTR)NULL                      /* UserData      */
};
struct NewWindow NewWindow=
{ (SHORT)20,       /* LeftEdge  */
  (SHORT)20,       /* TopEdge   */
  (SHORT)375,      /* Width     */
  (SHORT)50,       /* Height    */
  (UBYTE)0,        /* DetailPen */
  (UBYTE)1,        /* BlockPen  */
  (ULONG)CLOSEWINDOW|GADGETUP,       /* IDCMPFlags   */
  (ULONG)NOCAREREFRESH|WINDOWDEPTH|WINDOWCLOSE|WINDOWDRAG|
         SMART_REFRESH|ACTIVATE,     /* Flags        */
  (struct Gadget *)&StartGadget,        /* First Gadget */
  (struct Image *)NULL,              /* CheckMark    */
  (UBYTE *)"MultiTasking Spinning Pointer", /* Title */
  (struct Screen *)NULL,     /* Screen    */
  (struct BitMap *)NULL,     /* BitMap    */
  (SHORT)0,                  /* MinWidth  */
  (SHORT)0,                  /* MinHeight */
  (SHORT)0,                  /* MaxWidth  */
  (SHORT)0,                  /* MaxHeight */
  (USHORT)WBENCHSCREEN       /* Type      */
};
