Lines Matching full:parser
60 void SkSVGPaint::addAttribute(SkSVGParser& parser, int attrIndex,
96 int index = parser.findAttribute(this, attrValue, (int) (delimiter - attrValue), true);
99 addAttribute(parser, index, delimiter, (int) (end - delimiter));
109 bool SkSVGPaint::flush(SkSVGParser& parser, bool isFlushable, bool isDef) {
111 SkSVGPaint* walking = parser.fHead;
125 SkSVGPaint& lastState = parser.fLastFlush;
133 bool itsFound = parser.fIDs.find(id.c_str(), &found);
137 gradient->write(parser, current.f_fill);
138 gradient->write(parser, current.f_stroke);
174 if (parser.fSuppressPaint == false) {
175 parser._startElement("paint");
176 bool success = writeChangedAttributes(parser, current, changed);
179 success = writeChangedElements(parser, current, changed);
182 parser._endElement(); // paint
200 void SkSVGPaint::setSave(SkSVGParser& parser) {
202 SkSVGPaint* walking = parser.fHead;
237 if ((sum == parser.fLastTransform) == false) {
239 bool success = parser.fLastTransform.invert(&inverse);
243 parser.fLastTransform = sum;
262 parser._startElement("matrix");
263 parser._addAttributeLen("matrix", outputStr.c_str(), outputStr.size());
264 parser._endElement();
267 if (parser.fTransformClips.size() > 0) {
269 parser._startElement("add");
272 parser._addAttributeLen("use", start, strlen(start) - 1);
273 parser._endElement(); // clip
278 bool SkSVGPaint::writeChangedAttributes(SkSVGParser& parser,
280 SkSVGPaint& lastState = parser.fLastFlush;
297 parser._addAttribute("stroke", "false");
304 parser._addAttributeLen("textSize", attrValue, attrLength);
307 parser._addAttributeLen("textTracking", attrValue, attrLength);
319 parser._addAttribute("stroke", "true");
329 bool itsFound = parser.fIDs.find(id.c_str(), &found);
334 parser._addAttribute("shader", id.c_str());
340 parser._addAttributeLen("strokeCap", attrValue, attrLength);
343 parser._addAttributeLen("strokeJoin", attrValue, attrLength);
346 parser._addAttributeLen("strokeMiter", attrValue, attrLength);
349 parser._addAttributeLen("strokeWidth", attrValue, attrLength);
361 bool SkSVGPaint::writeChangedElements(SkSVGParser& parser,
363 SkSVGPaint& lastState = parser.fLastFlush;
385 parser._startElement("typeface");
386 parser._addAttributeLen("fontName", attrValue, attrLength);
387 parser._endElement(); // typeface
395 parser._startElement("color");
397 parser._addAttributeLen("color", parser.fLastColor.c_str(), parser.fLastColor.size());
398 parser._addAttributeLen("alpha", opacity.c_str(), opacity.size());
399 parser._endElement(); // color
409 parser._startElement("shader");
410 parser._endElement();
417 bool lastEqual = parser.fLastColor.equals(attrValue, attrLength);
420 parser._startElement("color");
422 parser._addAttributeLen("color", attrValue, attrLength);
423 parser.fLastColor.set(attrValue, attrLength);
427 parser._addAttributeLen("alpha", opacity.c_str(), opacity.size());
429 parser._endElement(); // color
434 parser._startElement("dash");
436 parser._addAttribute("intervals", topAttr->c_str());
437 parser._endElement(); // dash