diff options
author | Johannes Hofmann <Johannes.Hofmann@gmx.de> | 2009-02-06 19:00:51 +0100 |
---|---|---|
committer | Johannes Hofmann <Johannes.Hofmann@gmx.de> | 2009-02-06 19:00:51 +0100 |
commit | 2f4c8b74ebe3ccf0569eda982bbd2afc5473687b (patch) | |
tree | 50fec6031b11bd8e50188eabc350ac9c7a86bf25 /src/table.cc | |
parent | bc624c1fdb57712c71fa3c98b562924a5a27e32b (diff) |
add type to CSS properties
Diffstat (limited to 'src/table.cc')
-rw-r--r-- | src/table.cc | 64 |
1 files changed, 39 insertions, 25 deletions
diff --git a/src/table.cc b/src/table.cc index 63387778..96a4e0ca 100644 --- a/src/table.cc +++ b/src/table.cc @@ -60,28 +60,33 @@ void Html_tag_open_table(DilloHtml *html, const char *tag, int tagsize) if (border != -1) { cssLength = CSS_CREATE_LENGTH (border, CSS_LENGTH_TYPE_PX); - props.set (CSS_PROPERTY_BORDER_TOP_WIDTH, cssLength); - props.set (CSS_PROPERTY_BORDER_BOTTOM_WIDTH, cssLength); - props.set (CSS_PROPERTY_BORDER_LEFT_WIDTH, cssLength); - props.set (CSS_PROPERTY_BORDER_RIGHT_WIDTH, cssLength); + props.set (CSS_PROPERTY_BORDER_TOP_WIDTH, CSS_TYPE_LENGTH_PERCENTAGE, + cssLength); + props.set (CSS_PROPERTY_BORDER_BOTTOM_WIDTH, CSS_TYPE_LENGTH_PERCENTAGE, + cssLength); + props.set (CSS_PROPERTY_BORDER_LEFT_WIDTH, CSS_TYPE_LENGTH_PERCENTAGE, + cssLength); + props.set (CSS_PROPERTY_BORDER_RIGHT_WIDTH, CSS_TYPE_LENGTH_PERCENTAGE, + cssLength); } if (cellspacing != -1) { cssLength = CSS_CREATE_LENGTH (cellspacing, CSS_LENGTH_TYPE_PX); - props.set (CSS_PROPERTY_BORDER_SPACING, cssLength); + props.set (CSS_PROPERTY_BORDER_SPACING, CSS_TYPE_LENGTH_PERCENTAGE, + cssLength); } if ((attrbuf = a_Html_get_attr(html, tag, tagsize, "width"))) - props.set (CSS_PROPERTY_WIDTH, + props.set (CSS_PROPERTY_WIDTH, CSS_TYPE_LENGTH_PERCENTAGE, a_Html_parse_length (html, attrbuf)); if ((attrbuf = a_Html_get_attr(html, tag, tagsize, "align"))) { if (dStrcasecmp (attrbuf, "left") == 0) - props.set (CSS_PROPERTY_TEXT_ALIGN, TEXT_ALIGN_LEFT); + props.set (CSS_PROPERTY_TEXT_ALIGN, CSS_TYPE_ENUM, TEXT_ALIGN_LEFT); else if (dStrcasecmp (attrbuf, "right") == 0) - props.set (CSS_PROPERTY_TEXT_ALIGN, TEXT_ALIGN_RIGHT); + props.set (CSS_PROPERTY_TEXT_ALIGN, CSS_TYPE_ENUM, TEXT_ALIGN_RIGHT); else if (dStrcasecmp (attrbuf, "center") == 0) - props.set (CSS_PROPERTY_TEXT_ALIGN, TEXT_ALIGN_CENTER); + props.set (CSS_PROPERTY_TEXT_ALIGN, CSS_TYPE_ENUM, TEXT_ALIGN_CENTER); } if ((attrbuf = a_Html_get_attr(html, tag, tagsize, "bgcolor"))) { @@ -90,7 +95,7 @@ void Html_tag_open_table(DilloHtml *html, const char *tag, int tagsize) if (bgcolor == 0xffffff && !prefs.allow_white_bg) bgcolor = prefs.bg_color; S_TOP(html)->current_bg_color = bgcolor; - props.set (CSS_PROPERTY_BACKGROUND_COLOR, bgcolor); + props.set (CSS_PROPERTY_BACKGROUND_COLOR, CSS_TYPE_COLOR, bgcolor); } } @@ -100,18 +105,26 @@ void Html_tag_open_table(DilloHtml *html, const char *tag, int tagsize) table_cell_props = new CssPropertyList (); if (border > 0) { cssLength = CSS_CREATE_LENGTH (1, CSS_LENGTH_TYPE_PX); - table_cell_props->set (CSS_PROPERTY_BORDER_TOP_WIDTH, cssLength); - table_cell_props->set (CSS_PROPERTY_BORDER_BOTTOM_WIDTH, cssLength); - table_cell_props->set (CSS_PROPERTY_BORDER_LEFT_WIDTH, cssLength); - table_cell_props->set (CSS_PROPERTY_BORDER_RIGHT_WIDTH, cssLength); + table_cell_props->set (CSS_PROPERTY_BORDER_TOP_WIDTH, + CSS_TYPE_LENGTH_PERCENTAGE, cssLength); + table_cell_props->set (CSS_PROPERTY_BORDER_BOTTOM_WIDTH, + CSS_TYPE_LENGTH_PERCENTAGE, cssLength); + table_cell_props->set (CSS_PROPERTY_BORDER_LEFT_WIDTH, + CSS_TYPE_LENGTH_PERCENTAGE, cssLength); + table_cell_props->set (CSS_PROPERTY_BORDER_RIGHT_WIDTH, + CSS_TYPE_LENGTH_PERCENTAGE, cssLength); } if (cellpadding != -1) { cssLength = CSS_CREATE_LENGTH (cellpadding, CSS_LENGTH_TYPE_PX); - table_cell_props->set (CSS_PROPERTY_PADDING_TOP, cssLength); - table_cell_props->set (CSS_PROPERTY_PADDING_BOTTOM, cssLength); - table_cell_props->set (CSS_PROPERTY_PADDING_LEFT, cssLength); - table_cell_props->set (CSS_PROPERTY_PADDING_RIGHT, cssLength); + table_cell_props->set (CSS_PROPERTY_PADDING_TOP, + CSS_TYPE_LENGTH_PERCENTAGE, cssLength); + table_cell_props->set (CSS_PROPERTY_PADDING_BOTTOM, + CSS_TYPE_LENGTH_PERCENTAGE, cssLength); + table_cell_props->set (CSS_PROPERTY_PADDING_LEFT, + CSS_TYPE_LENGTH_PERCENTAGE, cssLength); + table_cell_props->set (CSS_PROPERTY_PADDING_RIGHT, + CSS_TYPE_LENGTH_PERCENTAGE, cssLength); } if (S_TOP(html)->table_cell_props) @@ -154,7 +167,7 @@ void Html_tag_open_tr(DilloHtml *html, const char *tag, int tagsize) if (bgcolor != -1) { if (bgcolor == 0xffffff && !prefs.allow_white_bg) bgcolor = prefs.bg_color; - props.set (CSS_PROPERTY_BACKGROUND_COLOR, bgcolor); + props.set (CSS_PROPERTY_BACKGROUND_COLOR, CSS_TYPE_COLOR, bgcolor); S_TOP(html)->current_bg_color = bgcolor; } } @@ -172,7 +185,8 @@ void Html_tag_open_tr(DilloHtml *html, const char *tag, int tagsize) table_cell_props = new CssPropertyList (*S_TOP(html)->table_cell_props); if (bgcolor != -1) { - table_cell_props->set (CSS_PROPERTY_BACKGROUND_COLOR, bgcolor); + table_cell_props->set (CSS_PROPERTY_BACKGROUND_COLOR, + CSS_TYPE_COLOR, bgcolor); new_style = true; } if (a_Html_tag_set_valign_attr (html, tag, tagsize, table_cell_props)) @@ -261,17 +275,17 @@ static void Html_tag_open_table_cell(DilloHtml *html, /* text style */ if (!S_TOP(html)->cell_text_align_set) { - props->set (CSS_PROPERTY_TEXT_ALIGN, text_align); + props->set (CSS_PROPERTY_TEXT_ALIGN, CSS_TYPE_ENUM, text_align); } if (a_Html_get_attr(html, tag, tagsize, "nowrap")) - props->set (CSS_PROPERTY_WHITE_SPACE, WHITE_SPACE_NOWRAP); + props->set (CSS_PROPERTY_WHITE_SPACE, CSS_TYPE_ENUM, WHITE_SPACE_NOWRAP); else - props->set (CSS_PROPERTY_WHITE_SPACE, WHITE_SPACE_NORMAL); + props->set (CSS_PROPERTY_WHITE_SPACE, CSS_TYPE_ENUM, WHITE_SPACE_NORMAL); a_Html_tag_set_align_attr (html, props, tag, tagsize); if ((attrbuf = a_Html_get_attr(html, tag, tagsize, "width"))) { - props->set (CSS_PROPERTY_WIDTH, + props->set (CSS_PROPERTY_WIDTH, CSS_TYPE_LENGTH_PERCENTAGE, a_Html_parse_length (html, attrbuf)); } @@ -284,7 +298,7 @@ static void Html_tag_open_table_cell(DilloHtml *html, if (bgcolor == 0xffffff && !prefs.allow_white_bg) bgcolor = prefs.bg_color; - props->set (CSS_PROPERTY_BACKGROUND_COLOR, bgcolor); + props->set (CSS_PROPERTY_BACKGROUND_COLOR, CSS_TYPE_COLOR, bgcolor); S_TOP(html)->current_bg_color = bgcolor; } } |