28 char* url,
char *tooltip,
char *target,
char *
id)
40 A = realloc(A, size_A *
sizeof(
point));
42 for (i = 0; i < nump; i++)
49 gvprintf(job,
"rect %s %d,%d %d,%d\n", url,
50 A[0].x, A[1].y, A[1].x, A[0].y);
53 gvprintf(job,
"circle %s %d,%d,%d\n", url,
54 A[0].x, A[0].y, A[1].x-A[0].x);
58 for (i = 0; i < nump; i++)
59 gvprintf(job,
" %d,%d", A[i].x, A[i].y);
71 gvprintf(job,
"rectangle (%d,%d) (%d,%d) %s %s\n",
72 A[0].x, A[1].y, A[1].x, A[0].y, url, tooltip);
82 gvputs(job,
"<area shape=\"circle\"");
85 gvputs(job,
"<area shape=\"rect\"");
88 gvputs(job,
"<area shape=\"poly\"");
104 if (target && target[0]) {
105 gvputs(job,
" target=\"");
109 if (tooltip && tooltip[0]) {
126 gvputs(job,
" coords=\"");
129 gvprintf(job,
"%d,%d,%d", A[0].x, A[0].y, A[1].x-A[0].x);
133 gvprintf(job,
"%d,%d,%d,%d", A[0].x, A[1].y, A[1].x, A[0].y);
136 gvprintf(job,
"%d,%d", A[0].x, A[0].y);
137 for (i = 1; i < nump; i++)
138 gvprintf(job,
",%d,%d", A[i].x, A[i].y);
150 static void map_begin_page(
GVJ_t * job)
157 gvputs(job,
"base referer\n");
158 if (obj->
url && obj->
url[0]) {
165 if (obj->
url && obj->
url[0]) {
175 gvputs(job,
"<map id=\"");
177 gvputs(job,
"\" name=\"");
186 static void map_end_page(
GVJ_t * job)
208 static void map_begin_cluster(
GVJ_t * job)
218 static void map_begin_node(
GVJ_t * job)
227 map_begin_edge(
GVJ_t * job)
251 static void map_begin_anchor(
GVJ_t * job,
char *url,
char *tooltip,
char *target,
char *
id)
257 url, tooltip, target,
id);
323 {
FORMAT_ISMAP,
"map", 1, &map_engine, &render_features_map},
pointf * tailendurl_map_p
char * xml_url_string(char *s)
#define GVRENDER_DOES_MAP_POLYGON
gvplugin_installed_t gvdevice_map_types[]
#define GVRENDER_DOES_MAP_RECTANGLE
#define GVRENDER_Y_GOES_DOWN
int gvputs(GVJ_t *job, const char *s)
#define GVRENDER_DOES_TARGETS
#define GVRENDER_DOES_TOOLTIPS
#define GVRENDER_DOES_MAP_CIRCLE
gvplugin_active_render_t render
char * xml_string(char *s)
CGRAPH_API char * agnameof(void *)
pointf * url_bsplinemap_p
#define GVRENDER_DOES_MAPS
pointf * headendurl_map_p
int url_bsplinemap_poly_n
#define GVRENDER_DOES_LABELS
#define EMIT_CLUSTERS_LAST
map_shape_t url_map_shape
gvplugin_installed_t gvrender_map_types[]
void gvprintf(GVJ_t *job, const char *format,...)