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 "SkSVGUse.h"
11 #include "SkSVGParser.h"
12
13 const SkSVGAttribute SkSVGUse::gAttributes[] = {
14 SVG_ATTRIBUTE(height),
15 SVG_ATTRIBUTE(width),
16 SVG_ATTRIBUTE(x),
17 SVG_LITERAL_ATTRIBUTE(xlink:href, f_xlink_href),
18 SVG_ATTRIBUTE(y)
19 };
20
DEFINE_SVG_INFO(Use)21 DEFINE_SVG_INFO(Use)
22
23 void SkSVGUse::translate(SkSVGParser& parser, bool defState) {
24 INHERITED::translate(parser, defState);
25 parser._startElement("add");
26 const char* start = strchr(f_xlink_href.c_str(), '#') + 1;
27 SkASSERT(start);
28 parser._addAttributeLen("use", start, strlen(start) - 1);
29 parser._endElement(); // clip
30 }
31