/*->h.pan */


#define DRAWPERDEGREE 6000
#define DRAWPERMIN    100
#define FIXZOOMMUL    1
#define FIXZOOMDIV    8


#define SQR(a) ((a)*(a))

#define  PI   3.14159265

#define DEG_TO_RAD  (PI / 180.0)

#define MIN_TO_RAD  (DEG_TO_RAD / 60.0)


#define SIMPLE   0
#define CYLINDER 1
#define MERCATOR 2
#define SAT      3

#define MAXPROJ  4


#define MCOASTLINE 1
#define MISLAND    2
#define MLAKE      4
#define MRIVER     8
#define MCOUNTRY   16
#define MUSASTATE  32
#define MCITY      64
#define MGRID      128


#define COASTLINE  0
#define ISLAND     1
#define LAKE       2
#define RIVER      3
#define COUNTRY    4
#define USASTATE   5
#define CITY       6
#define GRID       7
#define BULLET     8

#define MAXSEL     8
#define MAXCOL     9




typedef struct point
{
 int type;
 int x;
 int y;
} point;



typedef struct city
{
 int type;
 int x;
 int y;
 char name[32];
 char country[32];
 char state[32];
} city;





extern int       busy;
extern int       abended;


extern int       projection;             /* type of projection      */
extern int       detail;                 /* level of detail to show */
extern int       selection;



extern int       oswidth;
extern int       osheight;

extern int       drwidth;
extern int       drheight;

extern int       drxcentre;
extern int       drycentre;



extern int      linecolour[MAXCOL];
extern int      fillcolour[MAXCOL];

extern int      textsize;
extern int      bulletsize;
extern int      showname;
extern int      showcountry;
extern int      showstate;
extern int      showbullet;
extern int      showcoords;


extern Draw_diag drawdiag;
extern void openpan(void);
extern void closepan(void);
extern void redrawdraw(void);
extern void mainicon(void);

extern void setplot(int plot);


extern zoomer panzoom;
extern void   pandozoom(void);

extern int    dynamarea(void);

extern void mapsizeicon(void);
extern void mapsizekey(int * key);

extern void loadchoices(void);
extern void savechoices(void);

extern void setcoords(int open);
extern void openmain(wimp_openstr * wopen);
extern void zcoord(void);



/* h.sat */

extern void satset(void);
extern void drawsat(void);

extern void satsizeicon(void);
extern void satsizekey(int * key);
extern void satsetupbox(void);

extern void inittable(void);


/* h.selcol */

extern void selectcolicon(void);
extern void citycolicon(void);
extern void gridcolicon(void);

extern void selcoldragend(void);
extern void selcoldragzero(void);

extern void selectcolkey(int * key);
extern void citycolkey(int * key);
extern void gridcolkey(int * key);

extern int  selcoldynam(int m3);

extern void selectcolred(void);
extern void citycolred(void);
extern void gridcolred(void);


extern int  H0;
extern int  SAT_LAT;
extern int  SAT_LON;


/* h.point */

extern void cpoint(int gain);
extern void zpoint(void);
extern void abspoint(void);


