Windows NT 4.0 source code leak
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

85 lines
2.0 KiB

/*
Enhanced NCSA Mosaic from Spyglass
"Guitar"
Copyright 1994 Spyglass, Inc.
All Rights Reserved
Author(s):
Jim Seidman [email protected]
*/
#ifdef FEATURE_CLIENT_IMAGEMAP
struct _circle {
short x; /* Center point */
short y;
short r2; /* radius squared */
};
enum _shapetype {
SHAPE_UNKNOWN = 0,
SHAPE_RECT,
SHAPE_CIRCLE,
SHAPE_POLYGON
};
struct _vertex {
short x;
short y;
};
struct MapArea {
enum _shapetype type;
union {
RECT theRect;
struct _circle theCirc;
struct _poly {
RECT rBound; /* Bounding rectangle for polygon */
struct _vertex *pVertices; /* separately allocated memory */
short nVertCount;
} thePoly;
} shape;
unsigned long hrefOffset; /* == -1 if NOHREF */
};
struct MapInfo {
int refCount;
unsigned int flags;
int nAreaCount;
struct MapArea *pAreas;
char *pool;
int nPoolSize;
BOOL bLoading;
};
/* Possible settings for "flags" field */
#define MAP_MISSING 0x0002 /* The map wasn't in the file */
#define MAP_NOTLOADED 0x0004 /* We haven't even tried to load the map */
struct Params_Map_Fetch {
struct MapInfo *pMap;
/* Used internally */
HTRequest *request;
int nStatus;
BOOL fNotFromCache;
};
int Map_Fetch_Async(struct Mwin *tw, int nState, void **ppInfo);
struct _www; /* so will compile under gcc */
BOOL Map_NukeMaps(struct _www *pdoc);
PUBLIC HTStream *HTMLToMap(struct Mwin *tw, HTRequest * request, void *param, HTFormat input_format, HTFormat output_format, HTStream *output_stream);
struct _MapContext *Map_StartMap(const char *name, const char *url, const char *base);
void Map_AddToMap(struct _MapContext *, const char *coords, const char *href, BOOL nohref, const char *shape);
void Map_EndMap(struct _MapContext *);
void Map_AbortMap(struct _MapContext *mc);
BOOL Map_IsValid(struct MapInfo *map);
const char *Map_FindLink(struct MapInfo *pmap, int x, int y);
void Map_Unload(struct MapInfo *pmap);
struct MapInfo *Map_CreatePlaceholder(const char *src);
void Map_DeleteAll(void);
#endif