]> granicus.if.org Git - graphviz/commitdiff
provide for an attribute type indicator
authorellson <devnull@localhost>
Tue, 18 Oct 2005 21:05:41 +0000 (21:05 +0000)
committerellson <devnull@localhost>
Tue, 18 Oct 2005 21:05:41 +0000 (21:05 +0000)
lib/gvc/gvcjob.h
lib/gvc/gvevent.c

index 3d334f0aa9e47383d087567c5b5115d29ffbec90..251f9b818ca7ddd232211589b931b09f640ca697 100644 (file)
@@ -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 */
 
index f011635438a8c86e26f18ce1f3f61b239899f307..330726b73dc209e8b89182f6681e03accf62e993 100644 (file)
@@ -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;