/* file drawmap-help.h */

#define HWIDTH  450
#define HHEIGHT 340
#define HLEFTEDGE   (WWIDTH-HWIDTH)/2
#define HTOPEDGE    (WHEIGHT-HHEIGHT)/2

#define HELPBUFSIZE 15000              /* size of total help buffer */

char *helpbuffer = NULL;

char helpfilename[] = "drawmap.help";

struct TRStructure trs;                /* structure for help requester */

struct Window *hw;

struct NewWindow newhelpw = {          /* help window */
    HLEFTEDGE, HTOPEDGE,
    HWIDTH, HHEIGHT,
    WHITE, BLUE,
    GADGETUP,                          /* idcmp */
    SMART_REFRESH | ACTIVATE | BORDERLESS, /* flags */
    NULL,
    NULL,
    NULL,                              /* title */
    NULL,                              /* screen */
    NULL,                              /* bitmap */
    HWIDTH, HHEIGHT,                   /* min size */
    HWIDTH, HHEIGHT,                   /* max size */
    CUSTOMSCREEN
   };

SHORT border_data1[] = {               /* border description for */
    0,0,                               /*    help window         */
    HWIDTH-1, 0,
    HWIDTH-2, 1,
    1, 1,
    1, HHEIGHT-2,
    0, HHEIGHT-1,
    0,0
};

SHORT border_data2[] = {
    HWIDTH-1, 0,
    HWIDTH-1, HHEIGHT-1,
    0, HHEIGHT-1,
    1, HHEIGHT-2,
    HWIDTH-2, HHEIGHT-2,
    HWIDTH-2, 1,
    HWIDTH-1, 0
};

struct Border border2 = {              /* border for help window */
    0,0,
    BLACK, BLUE, JAM1,
    (sizeof(border_data2)/sizeof(SHORT))/2,
    &border_data2[0],
    NULL
};

struct Border border1 = {
    0,0,
    WHITE, BLUE, JAM1,
    (sizeof(border_data1)/sizeof(SHORT))/2,
    &border_data1[0],
    &border2
};

struct gadget_and_disp  {              /* structure for help gadget */
   char *text;                         /*   text linkage            */
   int disp;
};

struct gadget_and_disp gadgetlist[] = { /* list of gadget texts */

   { "Aitoff",           -1 },
   { "Boundaries",       -1 },
   { "Boundary Colors",  -1 },
   { "Box",              -1 },
   { "Box Zoom In",      -1 },
   { "Box Zoom Out",     -1 },
   { "Clear Screen",     -1 },
   { "Detail Level",     -1 },
   { "Display Center",   -1 },
   { "Draw Line",        -1 },
   { "Flat",             -1 },
   { "Flood Color",      -1 },
   { "Flood Fill",       -1 },
   { "Gall",             -1 },
   { "Globe",            -1 },
   { "Grid",             -1 },
   { "Hammer-Aitoff",    -1 },
   { "Help",             -1 },
   { "Lambert (cyl)",    -1 },
   { "Line Color",       -1 },
   { "Mercator",         -1 },
   { "Mollweide",        -1 },
   { "New Center",       -1 },
   { "Orbital",          -1 },
   { "Palette",          -1 },
   { "Print Map",        -1 },
   { "Quit",             -1 },
   { "Recenter",         -1 },
   { "Redraw",           -1 },
   { "Reset Colors",     -1 },
   { "Sanson-Flamsteed", -1 },
   { "Save Config",      -1 },
   { "Save Map",         -1 },
   { "Shadow",           -1 },
   { "Simple Polyconic", -1 },
   { "Slide",            -1 },
   { "Text",             -1 },
   { "Text Color",       -1 },
   { "Toggle Title",     -1 },
   { "Zoom In",          -1 },
   { "Zoom Out",         -1 },
   { "Exit Help",        -1 }
};

#define NUMGADGETS (sizeof (gadgetlist) / sizeof (struct gadget_and_disp))

struct GadgetBlock gadgetblocks[NUMGADGETS];

#define HTOP_MARGIN    20
#define HBOTTOM_MARGIN 14
#define HGAD_HEIGHT    10
#define HGAP1          (HHEIGHT-HBOTTOM_MARGIN-2*HTOP_MARGIN-HGAD_HEIGHT)
#define HGAP           HGAP1/((NUMGADGETS/2)-1)-HGAD_HEIGHT

#define HGADGETSTARTX 70
#define HGADGETSTARTY (2*HTOP_MARGIN)
