diff options
author | Johannes Hofmann <Johannes.Hofmann@gmx.de> | 2008-10-30 18:13:21 +0100 |
---|---|---|
committer | Johannes Hofmann <Johannes.Hofmann@gmx.de> | 2008-10-30 18:13:21 +0100 |
commit | 8d4ea27d076aca880c1aa41f9a374d042aad1fc3 (patch) | |
tree | 3e4d40560e0ce8447a34df841884c31082b22aae /src | |
parent | 2e5dfb3b847f86aa4cb02de86cb14fd5dd084740 (diff) |
fix some bugs
Diffstat (limited to 'src')
-rw-r--r-- | src/css.cc | 11 | ||||
-rw-r--r-- | src/html.cc | 8 | ||||
-rw-r--r-- | src/styleengine.cc | 14 |
3 files changed, 19 insertions, 14 deletions
@@ -10,6 +10,7 @@ */ #include <stdio.h> +#include "prefs.h" #include "html_common.hh" #include "css.hh" @@ -99,10 +100,12 @@ CssStyleSheet * CssContext::buildUserAgentStyle () { CssProperty::Value v; props = new CssPropertyList (); - v.color = 13; - props->set (CssProperty::CSS_PROPERTY_BACKGROUND_COLOR, v); - v.size = 20; - props->set (CssProperty::CSS_PROPERTY_FONT_SIZE, v); + v.color = prefs.link_color; + props->set (CssProperty::CSS_PROPERTY_COLOR, v); + v.textDecoration = dw::core::style::TEXT_DECORATION_UNDERLINE; + props->set (CssProperty::CSS_PROPERTY_TEXT_DECORATION, v); + v.cursor = dw::core::style::CURSOR_POINTER; + props->set (CssProperty::CSS_PROPERTY_CURSOR, v); s->addRule (new CssSelector(a_Html_tag_index("a"), NULL, NULL), props); return s; } diff --git a/src/html.cc b/src/html.cc index 4ad1b5bc..7edb6b27 100644 --- a/src/html.cc +++ b/src/html.cc @@ -2495,17 +2495,9 @@ static void Html_tag_open_a(DilloHtml *html, const char *tag, int tagsize) S_TOP(html)->current_bg_color), */ ); - } else { - style_attrs.color = Color::createSimple(HT2LT(html), - html->link_color); } -// if ((attrbuf = a_Html_get_attr(html, tag, tagsize, "title"))) -// style_attrs.x_tooltip = a_Dw_tooltip_new_no_ref(attrbuf); - - style_attrs.textDecoration |= TEXT_DECORATION_UNDERLINE; style_attrs.x_link = Html_set_new_link(html, &url); - style_attrs.cursor = CURSOR_POINTER; // html->styleEngine->style () = // Style::create (HT2LT(html), &style_attrs); diff --git a/src/styleengine.cc b/src/styleengine.cc index c75ad26d..e3f16bb7 100644 --- a/src/styleengine.cc +++ b/src/styleengine.cc @@ -45,7 +45,7 @@ StyleEngine::~StyleEngine () { void StyleEngine::startElement (int tag, const char *id, const char *klass, const char *style) { - fprintf(stderr, "===> START %d %s %s %s\n", tag, id, klass, style); +// fprintf(stderr, "===> START %d %s %s %s\n", tag, id, klass, style); if (stack->getRef (stack->size () - 1)->style == NULL) style0 (); @@ -66,7 +66,7 @@ void StyleEngine::setNonCssProperties (CssPropertyList *props) { } void StyleEngine::endElement (int tag) { - fprintf(stderr, "===> END %d\n", tag); +// fprintf(stderr, "===> END %d\n", tag); assert (stack->size () > 0); Node *n = stack->getRef (stack->size () - 1); @@ -97,12 +97,22 @@ void StyleEngine::apply (StyleAttrs *attrs, CssPropertyList *props) { case CssProperty::CSS_PROPERTY_BORDER_BOTTOM_STYLE: attrs->borderStyle.bottom = p->value.borderStyle; break; + case CssProperty::CSS_PROPERTY_COLOR: + attrs->color = + Color::createSimple (layout, p->value.color); + break; + case CssProperty::CSS_PROPERTY_CURSOR: + attrs->cursor = p->value.cursor; + break; case CssProperty::CSS_PROPERTY_FONT_FAMILY: fontAttrs.name = p->value.name; break; case CssProperty::CSS_PROPERTY_FONT_SIZE: fontAttrs.size = p->value.size; break; + case CssProperty::CSS_PROPERTY_TEXT_DECORATION: + attrs->textDecoration |= p->value.textDecoration; + break; default: break; |