static CanvasStyle toHTMLCanvasStyle(ExecState*, JSValue value)
{
    if (!value.isObject())
        return CanvasStyle();
    JSObject* object = asObject(value);
    if (object->inherits(&JSCanvasGradient::s_info))
        return CanvasStyle(jsCast<JSCanvasGradient*>(object)->impl());
    if (object->inherits(&JSCanvasPattern::s_info))
        return CanvasStyle(jsCast<JSCanvasPattern*>(object)->impl());
    return CanvasStyle();
}
Exemple #2
0
CanvasStyle CanvasStyle::createFromStringWithOverrideAlpha(const String& color, float alpha)
{
    RGBA32 rgba;
    ColorParseResult parseResult = parseColor(rgba, color);
    switch (parseResult) {
    case ParsedRGBA:
        return CanvasStyle(colorWithOverrideAlpha(rgba, alpha));
    case ParsedCurrentColor:
        return CanvasStyle(CurrentColorWithOverrideAlpha, alpha);
    case ParseFailed:
        return CanvasStyle();
    default:
        ASSERT_NOT_REACHED();
        return CanvasStyle();
    }
}
Exemple #3
0
CanvasStyle CanvasStyle::createFromString(const String& color, Document* document)
{
    RGBA32 rgba;
    ColorParseResult parseResult = parseColor(rgba, color, document);
    switch (parseResult) {
    case ParsedRGBA:
    case ParsedSystemColor:
        return CanvasStyle(rgba);
    case ParsedCurrentColor:
        return CanvasStyle(ConstructCurrentColor);
    case ParseFailed:
        return CanvasStyle();
    default:
        ASSERT_NOT_REACHED();
        return CanvasStyle();
    }
}