void SVGFEBlendElement::parseAttribute(const QualifiedName& name, const AtomicString& value) { if (!isSupportedAttribute(name)) { SVGFilterPrimitiveStandardAttributes::parseAttribute(name, value); return; } if (name == SVGNames::modeAttr) { BlendMode mode = BlendModeNormal; if (parseBlendMode(value, mode)) setModeBaseValue(mode); return; } if (name == SVGNames::inAttr) { setIn1BaseValue(value); return; } if (name == SVGNames::in2Attr) { setIn2BaseValue(value); return; } ASSERT_NOT_REACHED(); }
void SVGFEBlendElement::parseMappedAttribute(Attribute* attr) { const String& value = attr->value(); if (attr->name() == SVGNames::modeAttr) { if (value == "normal") setModeBaseValue(FEBLEND_MODE_NORMAL); else if (value == "multiply") setModeBaseValue(FEBLEND_MODE_MULTIPLY); else if (value == "screen") setModeBaseValue(FEBLEND_MODE_SCREEN); else if (value == "darken") setModeBaseValue(FEBLEND_MODE_DARKEN); else if (value == "lighten") setModeBaseValue(FEBLEND_MODE_LIGHTEN); } else if (attr->name() == SVGNames::inAttr) setIn1BaseValue(value); else if (attr->name() == SVGNames::in2Attr) setIn2BaseValue(value); else SVGFilterPrimitiveStandardAttributes::parseMappedAttribute(attr); }