OSDN Git Service

* merge from mastergit
[modchxj/mod_chxj.git] / src / chxj_node_convert.c
index 24d31cf..67fc8d1 100644 (file)
@@ -270,7 +270,13 @@ chxj_node_convert(
       /* <PARAM>                                                              */
       /*----------------------------------------------------------------------*/
       else if (strcasecmp(name, "param") == 0) {
-        /* ignore param tag block. */
+        if (handlers[tagPARAM].start_tag_handler) 
+          handlers[tagPARAM].start_tag_handler(pdoc, child);
+
+        chxj_node_convert(spec, r, pdoc, doc, child, indent+1);
+
+        if (handlers[tagPARAM].end_tag_handler)
+          handlers[tagPARAM].end_tag_handler(pdoc, child);
       }
       else {
         chxj_node_convert(spec, r, pdoc, doc, child, indent+1);
@@ -406,7 +412,13 @@ chxj_node_convert(
       /* <OBJECT>                                                             */
       /*----------------------------------------------------------------------*/
       if (strcasecmp(name, "object") == 0) {
-        /* ignore object block */
+        if (handlers[tagOBJECT].start_tag_handler) 
+          handlers[tagOBJECT].start_tag_handler(pdoc, child);
+
+        chxj_node_convert(spec, r, pdoc, doc, child, indent+1);
+
+        if (handlers[tagOBJECT].end_tag_handler)
+          handlers[tagOBJECT].end_tag_handler(pdoc, child);
       }
       else {
         chxj_node_convert(spec, r, pdoc, doc, child, indent+1);
@@ -789,6 +801,19 @@ chxj_node_convert(
         if (handlers[tagCENTER].end_tag_handler)
           handlers[tagCENTER].end_tag_handler(pdoc, child);
       }
+      else
+      /*----------------------------------------------------------------------*/
+      /* <CAPTION>                                                            */
+      /*----------------------------------------------------------------------*/
+      if (strcasecmp(name, "caption") == 0) {
+        if (handlers[tagCAPTION].start_tag_handler) 
+          handlers[tagCAPTION].start_tag_handler(pdoc, child);
+
+        chxj_node_convert(spec, r, pdoc, doc, child, indent+1);
+
+        if (handlers[tagCAPTION].end_tag_handler)
+          handlers[tagCAPTION].end_tag_handler(pdoc, child);
+      }
       /*----------------------------------------------------------------------*/
       /* <CHXJ:IF>                                                            */
       /*----------------------------------------------------------------------*/
@@ -808,6 +833,15 @@ chxj_node_convert(
           }
         }
       }
+      /*----------------------------------------------------------------------*/
+      /* <CHXJ:RAW>                                                           */
+      /*----------------------------------------------------------------------*/
+      else
+      if (strcasecmp(name, "chxj:raw") == 0) {
+        if (handlers[tagCHXJRAW].start_tag_handler) {
+           handlers[tagCHXJRAW].start_tag_handler(pdoc, child);
+        }
+      }
       else {
         chxj_node_convert(spec, r, pdoc, doc, child, indent+1);
       }