/* * MapInfo.h -- Public include file for MapInfo interface. * * Authors : Patrick Lecoanet. * Creation date : * * $Id$ */ /* * Copyright (c) 1993 - 2005 CENA, Patrick Lecoanet -- * * See the file "Copyright" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * */ #ifndef _MapInfo_h #define _MapInfo_h #ifdef __CPLUSPLUS__ extern "C" { #endif #include "Types.h" #include "List.h" #include "Geo.h" /* *----------------------------------------------------------------------- * * New types * *----------------------------------------------------------------------- */ typedef void *ZnMapInfoId; typedef enum { ZnMapInfoLineSimple, ZnMapInfoLineDashed, ZnMapInfoLineDotted, ZnMapInfoLineMixed, ZnMapInfoLineMarked } ZnMapInfoLineStyle; typedef enum { ZnMapInfoNormalText, ZnMapInfoUnderlinedText } ZnMapInfoTextStyle; void ZnMapInfoGetLine(ZnMapInfoId map_info, unsigned int index, ZnPtr *tag, ZnMapInfoLineStyle *line_style, ZnDim *line_width, ZnPos *x_from, ZnPos *y_from, ZnPos *x_to, ZnPos *y_to); unsigned int ZnMapInfoNumLines(ZnMapInfoId map_info); void ZnMapInfoGetMarks(ZnMapInfoId map_info, unsigned int index, ZnPoint **marks, unsigned int *num_marks); void ZnMapInfoGetSymbol(ZnMapInfoId map_info, unsigned int index, ZnPtr *tag, ZnPos *x, ZnPos *y, char *symbol); unsigned int ZnMapInfoNumSymbols(ZnMapInfoId map_info); void ZnMapInfoGetText(ZnMapInfoId map_info, unsigned int index, ZnPtr *tag, ZnMapInfoTextStyle *text_style, ZnMapInfoLineStyle *line_style, ZnPos *x, ZnPos *y, char **text); unsigned int ZnMapInfoNumTexts(ZnMapInfoId map_info); void ZnMapInfoGetArc(ZnMapInfoId map_info, unsigned int index, ZnPtr *tag, ZnMapInfoLineStyle *line_style, ZnDim *line_width, ZnPos *center_x, ZnPos *center_y, ZnDim *radius, ZnReal *start_angle, ZnReal *extend); unsigned int ZnMapInfoNumArcs(ZnMapInfoId map_info); typedef void (*ZnMapInfoChangeProc)(ClientData client_data, ZnMapInfoId map_info); ZnMapInfoId ZnGetMapInfo(Tcl_Interp *interp, char *name, ZnMapInfoChangeProc proc, ClientData client_data); void ZnFreeMapInfo(ZnMapInfoId map_info, ZnMapInfoChangeProc proc, ClientData client_data); int ZnMapInfoObjCmd(ClientData client_data, Tcl_Interp *interp, int argc, Tcl_Obj *CONST args[]); int ZnVideomapObjCmd(ClientData client_data, Tcl_Interp *interp, int argc, Tcl_Obj *CONST args[]); #ifdef __CPLUSPLUS__ } #endif #endif /* _MapInfo_h */