Home | History | Annotate | Download | only in parser
      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 }
     34