#include <intuition/intuition.h>

/* Gadget-IDs */
#define GID_Up	    1
#define GID_PUp     2
#define GID_Top     3
#define GID_Down    4
#define GID_PDown   5
#define GID_Bottom  6

/************************** Gadget-Definitionen ***************************/

WORD bda_b2[6] = { 1,10, 17,10, 17,0 },  bda_b[6] = { 0,10, 0,0, 16,0 },
     bda_u[8]  = { 0,2, 5,0, 4,0, 9,2 }, bda_d[8] = { 0,0, 5,2, 4,2, 9,0 },
     bda_h[4]  = { 0,0, 9,0 };

struct Border	Box2	     = { 0,0, 1,0,JAM1, 3, bda_b2, NULL },
		Box	     = { 0,0, 2,0,JAM1, 3, bda_b, &Box2 },
		IBox2	     = { 0,0, 2,0,JAM1, 3, bda_b2, NULL },
		IBox	     = { 0,0, 1,0,JAM1, 3, bda_b, &IBox2 },
		ArrowUp      = { 4,3, 1,0,JAM1, 4, bda_u, &Box },
		ArrowDown    = { 4,4, 1,0,JAM1, 4, bda_d, &Box },
		ArrowsUp2    = { 4,5, 1,0,JAM1, 4, bda_u, &Box },
		ArrowsUp     = { 4,2, 1,0,JAM1, 4, bda_u, &ArrowsUp2 },
		ArrowsDown2  = { 4,2, 1,0,JAM1, 4, bda_d, &Box },
		ArrowsDown   = { 4,5, 1,0,JAM1, 4, bda_d, &ArrowsDown2 },
		ArrowTop2    = { 4,4, 1,0,JAM1, 4, bda_u, &Box },
		ArrowTop     = { 4,2, 1,0,JAM1, 2, bda_h, &ArrowTop2 },
		ArrowBottom2 = { 4,3, 1,0,JAM1, 4, bda_d, &Box },
		ArrowBottom  = { 4,7, 1,0,JAM1, 2, bda_h, &ArrowBottom2 };

#define GFLGs1 (GFLG_GADGHCOMP | GFLG_RELBOTTOM | GFLG_GADGHIMAGE)
#define GFLGs2 (GFLGs1 | GFLG_RELRIGHT)
#define GACTs (GACT_RELVERIFY | GACT_BOTTOMBORDER)
#define GTYPs (GTYP_BOOLGADGET | GTYP_GZZGADGET)

struct Gadget
    ggup     = { NULL, 0,-9, 18,10, GFLGs1, GACTs, GTYPs,
		 &ArrowUp, &IBox, NULL, 0, NULL, GID_Up, NULL },
    ggdown   = { &ggup, -35,-9, 18,10, GFLGs2, GACTs, GTYPs,
		 &ArrowDown, &IBox, NULL, 0, NULL, GID_Down, NULL },
    ggpup    = { &ggdown, 18,-9, 18,10, GFLGs1, GACTs, GTYPs,
		 &ArrowsUp, &IBox, NULL, 0, NULL, GID_PUp, NULL },
    ggpdown  = { &ggpup, -53,-9, 18,10, GFLGs2, GACTs, GTYPs,
		 &ArrowsDown, &IBox, NULL, 0, NULL, GID_PDown, NULL },
    ggtop    = { &ggpdown, 36,-9, 18,10, GFLGs1, GACTs, GTYPs,
		 &ArrowTop, &IBox, NULL, 0, NULL, GID_Top, NULL },
    ggbottom = { &ggtop, -71,-9, 18,10, GFLGs2, GACTs, GTYPs,
		 &ArrowBottom, &IBox, NULL, 0, NULL, GID_Bottom, NULL };
