From 9a0fd0097f44d5923d9ddef62068fcd4212ee848 Mon Sep 17 00:00:00 2001 From: konn Date: Fri, 18 Jul 2008 06:34:37 +0000 Subject: [PATCH] * Added option tag with CSS for SoftBank XHTML converter. * Added option tag with CSS for SoftBank HTML converter. git-svn-id: svn+ssh://svn.sourceforge.jp/svnroot/modchxj/mod_chxj/branches/sandbox@3011 1a406e8e-add9-4483-a2c8-d8cac5b7c224 --- src/chxj_jhtml.c | 19 +++++++++++++++++-- src/chxj_jxhtml.c | 21 +++++++++++++++++++-- 2 files changed, 36 insertions(+), 4 deletions(-) diff --git a/src/chxj_jhtml.c b/src/chxj_jhtml.c index 64ebae97..602b19f6 100644 --- a/src/chxj_jhtml.c +++ b/src/chxj_jhtml.c @@ -2864,7 +2864,7 @@ s_jhtml_end_select_tag(void *pdoc, Node *UNUSED(child)) * @return The conversion result is returned. */ static char * -s_jhtml_start_option_tag(void *pdoc, Node *child) +s_jhtml_start_option_tag(void *pdoc, Node *node) { jhtml_t *jhtml = GET_JHTML(pdoc); Doc *doc = jhtml->doc; @@ -2872,9 +2872,10 @@ s_jhtml_start_option_tag(void *pdoc, Node *child) char *selected = NULL; char *value = NULL; + char *attr_style = NULL; W_L("buf.pool, val); } + else if (STRCASEEQ('s','S',"style",nm) && val && *val) { + /*----------------------------------------------------------------------*/ + /* CHTML 1.0 version 2.0 */ + /*----------------------------------------------------------------------*/ + attr_style = apr_pstrdup(doc->buf.pool, val); + } else if (STRCASEEQ('v','V',"value",nm)) { /*----------------------------------------------------------------------*/ /* CHTML 1.0 version 2.0 */ @@ -2901,6 +2908,11 @@ s_jhtml_start_option_tag(void *pdoc, Node *child) W_L(" selected"); } W_L(">"); + + if (IS_CSS_ON(jhtml->entryp)) { + s_jhtml_push_and_get_now_style(pdoc, node, attr_style); + } + return jhtml->out; } @@ -2918,6 +2930,9 @@ s_jhtml_end_option_tag(void *pdoc, Node *UNUSED(child)) { jhtml_t *jhtml = GET_JHTML(pdoc); /* Don't close */ + if (IS_CSS_ON(jhtml->entryp)) { + chxj_css_pop_prop_list(jhtml->css_prop_stack); + } return jhtml->out; } diff --git a/src/chxj_jxhtml.c b/src/chxj_jxhtml.c index e83de631..0cf558f3 100644 --- a/src/chxj_jxhtml.c +++ b/src/chxj_jxhtml.c @@ -3051,7 +3051,7 @@ s_jxhtml_end_select_tag(void *pdoc, Node *UNUSED(child)) * @return The conversion result is returned. */ static char * -s_jxhtml_start_option_tag(void *pdoc, Node *child) +s_jxhtml_start_option_tag(void *pdoc, Node *node) { jxhtml_t *jxhtml = GET_JXHTML(pdoc); Doc *doc = jxhtml->doc; @@ -3059,9 +3059,10 @@ s_jxhtml_start_option_tag(void *pdoc, Node *child) char *selected = NULL; char *value = NULL; + char *attr_style = NULL; W_L("buf.pool, val); } + else if (STRCASEEQ('s','S',"style",nm) && val && *val) { + /*----------------------------------------------------------------------*/ + /* CHTML 1.0 version 2.0 */ + /*----------------------------------------------------------------------*/ + attr_style = apr_pstrdup(doc->buf.pool, val); + } else if (STRCASEEQ('v','V',"value",nm)) { /*----------------------------------------------------------------------*/ /* CHTML 1.0 version 2.0 */ @@ -3088,6 +3095,11 @@ s_jxhtml_start_option_tag(void *pdoc, Node *child) W_L(" selected"); } W_L(">"); + + if (IS_CSS_ON(jxhtml->entryp)) { + s_jxhtml_push_and_get_now_style(pdoc, node, attr_style); + } + return jxhtml->out; } @@ -3105,7 +3117,12 @@ s_jxhtml_end_option_tag(void *pdoc, Node *UNUSED(child)) { jxhtml_t *jxhtml = GET_JXHTML(pdoc); Doc *doc = jxhtml->doc; + W_L(""); + if (IS_CSS_ON(jxhtml->entryp)) { + chxj_css_pop_prop_list(jxhtml->css_prop_stack); + } + return jxhtml->out; } -- 2.11.0