Home | History | Annotate | Download | only in svg

Lines Matching refs:parser

52 void SkSVGPaint::addAttribute(SkSVGParser& parser, int attrIndex,
88 int index = parser.findAttribute(this, attrValue, (int) (delimiter - attrValue), true);
91 addAttribute(parser, index, delimiter, (int) (end - delimiter));
101 bool SkSVGPaint::flush(SkSVGParser& parser, bool isFlushable, bool isDef) {
103 SkSVGPaint* walking = parser.fHead;
117 SkSVGPaint& lastState = parser.fLastFlush;
125 bool itsFound = parser.fIDs.find(id.c_str(), &found);
129 gradient->write(parser, current.f_fill);
130 gradient->write(parser, current.f_stroke);
166 if (parser.fSuppressPaint == false) {
167 parser._startElement("paint");
168 bool success = writeChangedAttributes(parser, current, changed);
171 success = writeChangedElements(parser, current, changed);
174 parser._endElement(); // paint
192 void SkSVGPaint::setSave(SkSVGParser& parser) {
194 SkSVGPaint* walking = parser.fHead;
229 if ((sum == parser.fLastTransform) == false) {
231 bool success = parser.fLastTransform.invert(&inverse);
235 parser.fLastTransform = sum;
254 parser._startElement("matrix");
255 parser._addAttributeLen("matrix", outputStr.c_str(), outputStr.size());
256 parser._endElement();
259 if (parser.fTransformClips.size() > 0) {
261 parser._startElement("add");
264 parser._addAttributeLen("use", start, strlen(start) - 1);
265 parser._endElement(); // clip
270 bool SkSVGPaint::writeChangedAttributes(SkSVGParser& parser,
272 SkSVGPaint& lastState = parser.fLastFlush;
289 parser._addAttribute("stroke", "false");
296 parser._addAttributeLen("textSize", attrValue, attrLength);
299 parser._addAttributeLen("textTracking", attrValue, attrLength);
311 parser._addAttribute("stroke", "true");
321 bool itsFound = parser.fIDs.find(id.c_str(), &found);
326 parser._addAttribute("shader", id.c_str());
332 parser._addAttributeLen("strokeCap", attrValue, attrLength);
335 parser._addAttributeLen("strokeJoin", attrValue, attrLength);
338 parser._addAttributeLen("strokeMiter", attrValue, attrLength);
341 parser._addAttributeLen("strokeWidth", attrValue, attrLength);
353 bool SkSVGPaint::writeChangedElements(SkSVGParser& parser,
355 SkSVGPaint& lastState = parser.fLastFlush;
377 parser._startElement("typeface");
378 parser._addAttributeLen("fontName", attrValue, attrLength);
379 parser._endElement(); // typeface
387 parser._startElement("color");
389 parser._addAttributeLen("color", parser.fLastColor.c_str(), parser.fLastColor.size());
390 parser._addAttributeLen("alpha", opacity.c_str(), opacity.size());
391 parser._endElement(); // color
401 parser._startElement("shader");
402 parser._endElement();
409 bool lastEqual = parser.fLastColor.equals(attrValue, attrLength);
412 parser._startElement("color");
414 parser._addAttributeLen("color", attrValue, attrLength);
415 parser.fLastColor.set(attrValue, attrLength);
419 parser._addAttributeLen("alpha", opacity.c_str(), opacity.size());
421 parser._endElement(); // color
426 parser._startElement("dash");
428 parser._addAttribute("intervals", topAttr->c_str());
429 parser._endElement(); // dash