OLD | NEW |
1 /* | 1 /* |
2 * Copyright 2016 Google Inc. | 2 * Copyright 2016 Google Inc. |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license that can be | 4 * Use of this source code is governed by a BSD-style license that can be |
5 * found in the LICENSE file. | 5 * found in the LICENSE file. |
6 */ | 6 */ |
7 | 7 |
8 #include "SkSVGAttribute.h" | 8 #include "SkSVGAttribute.h" |
9 #include "SkSVGRenderContext.h" | |
10 | 9 |
11 SkSVGPresentationAttributes::SkSVGPresentationAttributes() | 10 SkSVGPresentationAttributes SkSVGPresentationAttributes::MakeInitial() { |
12 : fFillIsSet(false) | 11 SkSVGPresentationAttributes result; |
13 , fStrokeIsSet(false) { } | |
14 | 12 |
15 void SkSVGPresentationAttributes::setFill(const SkSVGColorType& c) { | 13 result.fFill.set(SkSVGPaint(SkSVGColorType(SK_ColorBLACK))); |
16 fFill = c; | 14 result.fFillOpacity.set(SkSVGNumberType(1)); |
17 fFillIsSet = true; | 15 |
| 16 result.fStroke.set(SkSVGPaint(SkSVGPaint::Type::kNone)); |
| 17 result.fStrokeLineCap.set(SkSVGLineCap(SkSVGLineCap::Type::kButt)); |
| 18 result.fStrokeLineJoin.set(SkSVGLineJoin(SkSVGLineJoin::Type::kMiter)); |
| 19 result.fStrokeOpacity.set(SkSVGNumberType(1)); |
| 20 result.fStrokeWidth.set(SkSVGLength(1)); |
| 21 |
| 22 return result; |
18 } | 23 } |
19 | |
20 void SkSVGPresentationAttributes::setStroke(const SkSVGColorType& c) { | |
21 fStroke = c; | |
22 fStrokeIsSet = true; | |
23 } | |
24 | |
25 | |
26 void SkSVGPresentationAttributes::applyTo(SkSVGRenderContext* ctx) const { | |
27 if (fFillIsSet) { | |
28 ctx->writablePresentationContext()->setFillColor(fFill); | |
29 } | |
30 | |
31 if (fStrokeIsSet) { | |
32 ctx->writablePresentationContext()->setStrokeColor(fStroke); | |
33 } | |
34 } | |
OLD | NEW |