From fc6ce909fb5eacfe1cf7ea5e5092660a32839317 Mon Sep 17 00:00:00 2001 From: konn Date: Fri, 18 Jul 2008 06:34:30 +0000 Subject: [PATCH] * Added option tag with CSS for CHTML2.0 converter. git-svn-id: svn+ssh://svn.sourceforge.jp/svnroot/modchxj/mod_chxj/branches/sandbox@3008 1a406e8e-add9-4483-a2c8-d8cac5b7c224 --- src/chxj_chtml20.c | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/src/chxj_chtml20.c b/src/chxj_chtml20.c index 7980f5ac..e1172e37 100644 --- a/src/chxj_chtml20.c +++ b/src/chxj_chtml20.c @@ -2764,12 +2764,13 @@ s_chtml20_end_select_tag(void *pdoc, Node *UNUSED(child)) * @return The conversion result is returned. */ static char * -s_chtml20_start_option_tag(void *pdoc, Node *child) +s_chtml20_start_option_tag(void *pdoc, Node *node) { chtml20_t *chtml20; Doc *doc; request_rec *r; Attr *attr; + char *attr_style = NULL; chtml20 = GET_CHTML20(pdoc); doc = chtml20->doc; @@ -2779,7 +2780,7 @@ s_chtml20_start_option_tag(void *pdoc, Node *child) char *value = NULL; W_L("buf.pool, val); } + else if (strcasecmp(nm, "style") == 0 && val && *val) { + /*--------------------------------------------------------------------*/ + /* CHTML 1.0 version 2.0 */ + /*--------------------------------------------------------------------*/ + attr_style = apr_pstrdup(doc->buf.pool, val); + } break; case 'v': @@ -2820,6 +2827,9 @@ s_chtml20_start_option_tag(void *pdoc, Node *child) W_L(" selected"); } W_L(">"); + if (IS_CSS_ON(chtml20->entryp)) { + s_chtml20_push_and_get_now_style(pdoc, node, attr_style); + } return chtml20->out; } @@ -2838,6 +2848,9 @@ s_chtml20_end_option_tag(void *pdoc, Node *UNUSED(child)) chtml20_t *chtml20 = GET_CHTML20(pdoc); /* Don't close */ + if (IS_CSS_ON(chtml20->entryp)) { + chxj_css_pop_prop_list(chtml20->css_prop_stack); + } return chtml20->out; } -- 2.11.0