|
1 |
|
2 /* |
|
3 * Copyright 2006 The Android Open Source Project |
|
4 * |
|
5 * Use of this source code is governed by a BSD-style license that can be |
|
6 * found in the LICENSE file. |
|
7 */ |
|
8 |
|
9 |
|
10 #include "SkSVGPolygon.h" |
|
11 #include "SkSVGParser.h" |
|
12 |
|
13 const SkSVGAttribute SkSVGPolygon::gAttributes[] = { |
|
14 SVG_LITERAL_ATTRIBUTE(clip-rule, f_clipRule), |
|
15 SVG_LITERAL_ATTRIBUTE(fill-rule, f_fillRule), |
|
16 SVG_ATTRIBUTE(points) |
|
17 }; |
|
18 |
|
19 DEFINE_SVG_INFO(Polygon) |
|
20 |
|
21 void SkSVGPolygon::addAttribute(SkSVGParser& parser, int attrIndex, |
|
22 const char* attrValue, size_t attrLength) { |
|
23 INHERITED::addAttribute(parser, attrIndex, attrValue, attrLength); |
|
24 } |
|
25 |
|
26 void SkSVGPolygon::translate(SkSVGParser& parser, bool defState) { |
|
27 parser._startElement("polygon"); |
|
28 SkSVGElement::translate(parser, defState); |
|
29 SVG_ADD_ATTRIBUTE(points); |
|
30 if (f_fillRule.size() > 0) |
|
31 parser._addAttribute("fillType", f_fillRule.equals("evenodd") ? "evenOdd" : "winding"); |
|
32 parser._endElement(); |
|
33 } |