From: ellson Date: Tue, 18 Oct 2005 21:05:41 +0000 (+0000) Subject: provide for an attribute type indicator X-Git-Tag: LAST_LIBGRAPH~32^2~7107 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=392fa4ee765a616985a1383e40d6794f6415442b;p=graphviz provide for an attribute type indicator --- diff --git a/lib/gvc/gvcjob.h b/lib/gvc/gvcjob.h index 3d334f0aa..251f9b818 100644 --- a/lib/gvc/gvcjob.h +++ b/lib/gvc/gvcjob.h @@ -41,6 +41,7 @@ extern "C" { typedef enum { FONT_REGULAR, FONT_BOLD, FONT_ITALIC } font_type; #define PENWIDTH_NORMAL 1. #define PENWIDTH_BOLD 2. + typedef enum { GVATTR_STRING, GVATTR_BOOL, GVATTR_COLOR } gvattr_t; typedef struct { char *fontfam, fontopt; @@ -204,8 +205,9 @@ extern "C" { char *active_tooltip; /* tooltip of active object - or NULL */ char *selected_href; /* href of selected object - or NULL */ gv_argvlist_t selected_obj_type_name; /* (e.g. "edge" "node3" "e" "->" "node5" "") */ - gv_argvlist_t selected_obj_attributes; /* even args are names, odd are values */ - /* e.g. "color" "red" "style" "filled" */ + gv_argvlist_t selected_obj_attributes; /* attribute triplets: name, value, type */ + /* e.g. "color", "red", GVATTR_COLOR, + "style", "filled", GVATTR_BOOL, */ void *window; /* display-specific data for gvrender plugin */ diff --git a/lib/gvc/gvevent.c b/lib/gvc/gvevent.c index f01163543..330726b73 100644 --- a/lib/gvc/gvevent.c +++ b/lib/gvc/gvevent.c @@ -77,6 +77,7 @@ static void gv_graph_state(GVJ_t *job, graph_t *g) a = g->univ->globattr->list[i]; gv_argvlist_set_item(list, j++, a->name); gv_argvlist_set_item(list, j++, agxget(g, a->index)); + gv_argvlist_set_item(list, j++, (char*)GVATTR_STRING); } list->argc = j;