diff options
author | fmalita <fmalita@chromium.org> | 2016-08-17 08:38:15 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-08-17 08:38:15 -0700 |
commit | d24ee1419f17fe3ac70373ca74136a766522e399 (patch) | |
tree | b70f2c4ad0c3afc0fd77e2df46506db2c4710782 /experimental/svg/model/SkSVGLine.h | |
parent | 4c56b9fa714d1bee54666adf7e5e1db5fb398dc7 (diff) |
[SVGDom] Add <line> support
R=robertphillips@google.com,stephana@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2244223005
Review-Url: https://codereview.chromium.org/2244223005
Diffstat (limited to 'experimental/svg/model/SkSVGLine.h')
-rw-r--r-- | experimental/svg/model/SkSVGLine.h | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/experimental/svg/model/SkSVGLine.h b/experimental/svg/model/SkSVGLine.h new file mode 100644 index 0000000000..c2716e00e2 --- /dev/null +++ b/experimental/svg/model/SkSVGLine.h @@ -0,0 +1,40 @@ +/* + * Copyright 2016 Google Inc. + * + * Use of this source code is governed by a BSD-style license that can be + * found in the LICENSE file. + */ + +#ifndef SkSVGLine_DEFINED +#define SkSVGLine_DEFINED + +#include "SkSVGShape.h" +#include "SkSVGTypes.h" + +class SkSVGLine final : public SkSVGShape { +public: + virtual ~SkSVGLine() = default; + static sk_sp<SkSVGLine> Make() { return sk_sp<SkSVGLine>(new SkSVGLine()); } + + void setX1(const SkSVGLength&); + void setY1(const SkSVGLength&); + void setX2(const SkSVGLength&); + void setY2(const SkSVGLength&); + +protected: + void onSetAttribute(SkSVGAttribute, const SkSVGValue&) override; + + void onDraw(SkCanvas*, const SkSVGLengthContext&, const SkPaint&) const override; + +private: + SkSVGLine(); + + SkSVGLength fX1 = SkSVGLength(0); + SkSVGLength fY1 = SkSVGLength(0); + SkSVGLength fX2 = SkSVGLength(0); + SkSVGLength fY2 = SkSVGLength(0); + + typedef SkSVGShape INHERITED; +}; + +#endif // SkSVGLine_DEFINED |