* eet_node: Progressively move all dump code in eet_node.
authorcedric <cedric@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Mon, 21 Dec 2009 15:46:56 +0000 (15:46 +0000)
committercedric <cedric@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Mon, 21 Dec 2009 15:46:56 +0000 (15:46 +0000)
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eet@44628 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33

src/lib/eet_node.c

index e0592df..fdd2759 100644 (file)
@@ -361,6 +361,31 @@ eet_node_dump_simple_type(Eet_Node *n, int level,
    dumpfunc(dumpdata, ";\n");
 }
 
+static void
+eet_node_dump_group_start(int level, void (*dumpfunc) (void *data, const char *str), void *dumpdata,
+                         int group_type, const char *name)
+{
+   int chnk_type;
+
+   chnk_type = (group_type >= EET_G_UNKNOWN && group_type <= EET_G_HASH) ?
+     group_type : EET_G_LAST;
+
+   eet_node_dump_level(level, dumpfunc, dumpdata);
+   dumpfunc(dumpdata, "group \"");
+   eet_node_dump_string_escape(dumpdata, dumpfunc, name);
+   dumpfunc(dumpdata, "\" ");
+
+   dumpfunc(dumpdata, eet_node_dump_g_name[chnk_type - EET_G_UNKNOWN]);
+   dumpfunc(dumpdata, " {\n");
+}
+
+static void
+eet_node_dump_group_end(int level, void (*dumpfunc) (void *data, const char *str), void *dumpdata)
+{
+   eet_node_dump_level(level, dumpfunc, dumpdata);
+   dumpfunc(dumpdata, "  }\n");
+}
+
 void
 eet_node_dump(Eet_Node *n, int dumplevel, void (*dumpfunc) (void *data, const char *str), void *dumpdata)
 {
@@ -371,6 +396,9 @@ eet_node_dump(Eet_Node *n, int dumplevel, void (*dumpfunc) (void *data, const ch
       case EET_G_VAR_ARRAY:
       case EET_G_ARRAY:
       case EET_G_LIST:
+        eet_node_dump_group_start(dumplevel, dumpfunc, dumpdata, n->type, n->name);
+        /* FIXME: Handle content of group. */
+        eet_node_dump_group_end(dumplevel, dumpfunc, dumpdata);
         break;
       case EET_T_STRING:
       case EET_T_INLINED_STRING: