blob: 17f89ca2e3d547914dff9d7796274ed448808b4f [file] [log] [blame]
// Copyright 2013 The Flutter Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include <emscripten.h>
#include "export.h"
#include "helpers.h"
#include "third_party/skia/include/core/SkPaint.h"
using namespace Skwasm;
SKWASM_EXPORT SkPaint* paint_create() {
return new SkPaint();
}
SKWASM_EXPORT void paint_destroy(SkPaint* paint) {
delete paint;
}
SKWASM_EXPORT void paint_setBlendMode(SkPaint* paint, SkBlendMode mode) {
paint->setBlendMode(mode);
}
// No getter for blend mode, as it's non trivial. Cache on the dart side.
SKWASM_EXPORT void paint_setStyle(SkPaint* paint, SkPaint::Style style) {
paint->setStyle(style);
}
SKWASM_EXPORT SkPaint::Style paint_getStyle(SkPaint* paint) {
return paint->getStyle();
}
SKWASM_EXPORT void paint_setStrokeWidth(SkPaint* paint, SkScalar width) {
paint->setStrokeWidth(width);
}
SKWASM_EXPORT SkScalar paint_getStrokeWidth(SkPaint* paint) {
return paint->getStrokeWidth();
}
SKWASM_EXPORT void paint_setStrokeCap(SkPaint* paint, SkPaint::Cap cap) {
paint->setStrokeCap(cap);
}
SKWASM_EXPORT SkPaint::Cap paint_getStrokeCap(SkPaint* paint) {
return paint->getStrokeCap();
}
SKWASM_EXPORT void paint_setStrokeJoin(SkPaint* paint, SkPaint::Join join) {
paint->setStrokeJoin(join);
}
SKWASM_EXPORT SkPaint::Join paint_getStrokeJoin(SkPaint* paint) {
return paint->getStrokeJoin();
}
SKWASM_EXPORT void paint_setAntiAlias(SkPaint* paint, bool antiAlias) {
paint->setAntiAlias(antiAlias);
}
SKWASM_EXPORT bool paint_getAntiAlias(SkPaint* paint) {
return paint->isAntiAlias();
}
SKWASM_EXPORT void paint_setColorInt(SkPaint* paint, SkColor colorInt) {
paint->setColor(colorInt);
}
SKWASM_EXPORT SkColor paint_getColorInt(SkPaint* paint) {
return paint->getColor();
}
SKWASM_EXPORT void paint_setMiterLimit(SkPaint* paint, SkScalar miterLimit) {
paint->setStrokeMiter(miterLimit);
}
SKWASM_EXPORT SkScalar paint_getMiterLImit(SkPaint* paint) {
return paint->getStrokeMiter();
}