56fc4ce9a5004cdfae80979e21a1d224e9222868
[platform/core/uifw/dali-adaptor.git] / dali / devel-api / adaptor-framework / canvas-renderer-shape.cpp
1 /*
2 * Copyright (c) 2021 Samsung Electronics Co., Ltd.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  *
16  */
17
18 // CLASS HEADER
19 #include <dali/devel-api/adaptor-framework/canvas-renderer-shape.h>
20
21 // INTERNAL INCLUDES
22 #include <dali/internal/canvas-renderer/common/canvas-renderer-impl.h>
23 #include <dali/internal/canvas-renderer/common/shape-factory.h>
24 #include <dali/internal/canvas-renderer/common/shape-impl.h>
25
26 namespace Dali
27 {
28 CanvasRenderer::Shape CanvasRenderer::Shape::New()
29 {
30   return Shape(Internal::Adaptor::ShapeFactory::New());
31 }
32
33 CanvasRenderer::Shape::Shape()
34 {
35 }
36
37 CanvasRenderer::Shape::~Shape()
38 {
39 }
40
41 CanvasRenderer::Shape::Shape(Internal::Adaptor::Shape* impl)
42 : CanvasRenderer::Drawable(impl)
43 {
44 }
45
46 bool CanvasRenderer::Shape::AddRect(Rect<float> rect, Vector2 roundedCorner)
47 {
48   return GetImplementation(*this).AddRect(rect, roundedCorner);
49 }
50
51 bool CanvasRenderer::Shape::AddCircle(Vector2 center, Vector2 radius)
52 {
53   return GetImplementation(*this).AddCircle(center, radius);
54 }
55
56 bool CanvasRenderer::Shape::AddArc(Vector2 center, float radius, float startAngle, float sweep, bool pie)
57 {
58   return GetImplementation(*this).AddArc(center, radius, startAngle, sweep, pie);
59 }
60
61 bool CanvasRenderer::Shape::AddMoveTo(Vector2 point)
62 {
63   return GetImplementation(*this).AddMoveTo(point);
64 }
65
66 bool CanvasRenderer::Shape::AddLineTo(Vector2 line)
67 {
68   return GetImplementation(*this).AddLineTo(line);
69 }
70
71 bool CanvasRenderer::Shape::AddCubicTo(Vector2 controlPoint1, Vector2 controlPoint2, Vector2 endPoint)
72 {
73   return GetImplementation(*this).AddCubicTo(controlPoint1, controlPoint2, endPoint);
74 }
75
76 bool CanvasRenderer::Shape::Close()
77 {
78   return GetImplementation(*this).Close();
79 }
80
81 bool CanvasRenderer::Shape::ResetPath()
82 {
83   return GetImplementation(*this).ResetPath();
84 }
85
86 bool CanvasRenderer::Shape::SetFillColor(Vector4 color)
87 {
88   return GetImplementation(*this).SetFillColor(color);
89 }
90
91 Vector4 CanvasRenderer::Shape::GetFillColor() const
92 {
93   return GetImplementation(*this).GetFillColor();
94 }
95
96 bool CanvasRenderer::Shape::SetFillRule(CanvasRenderer::Shape::FillRule rule)
97 {
98   return GetImplementation(*this).SetFillRule(rule);
99 }
100
101 CanvasRenderer::Shape::FillRule CanvasRenderer::Shape::GetFillRule() const
102 {
103   return GetImplementation(*this).GetFillRule();
104 }
105
106 bool CanvasRenderer::Shape::SetStrokeWidth(float width)
107 {
108   return GetImplementation(*this).SetStrokeWidth(width);
109 }
110
111 float CanvasRenderer::Shape::GetStrokeWidth() const
112 {
113   return GetImplementation(*this).GetStrokeWidth();
114 }
115
116 bool CanvasRenderer::Shape::SetStrokeColor(Vector4 color)
117 {
118   return GetImplementation(*this).SetStrokeColor(color);
119 }
120
121 Vector4 CanvasRenderer::Shape::GetStrokeColor() const
122 {
123   return GetImplementation(*this).GetStrokeColor();
124 }
125
126 bool CanvasRenderer::Shape::SetStrokeDash(const Dali::Vector<float>& dashPattern)
127 {
128   return GetImplementation(*this).SetStrokeDash(dashPattern);
129 }
130
131 Dali::Vector<float> CanvasRenderer::Shape::GetStrokeDash() const
132 {
133   return GetImplementation(*this).GetStrokeDash();
134 }
135
136 bool CanvasRenderer::Shape::SetStrokeCap(CanvasRenderer::Shape::StrokeCap cap)
137 {
138   return GetImplementation(*this).SetStrokeCap(cap);
139 }
140
141 CanvasRenderer::Shape::StrokeCap CanvasRenderer::Shape::GetStrokeCap() const
142 {
143   return GetImplementation(*this).GetStrokeCap();
144 }
145
146 bool CanvasRenderer::Shape::SetStrokeJoin(CanvasRenderer::Shape::StrokeJoin join)
147 {
148   return GetImplementation(*this).SetStrokeJoin(join);
149 }
150
151 CanvasRenderer::Shape::StrokeJoin CanvasRenderer::Shape::GetStrokeJoin() const
152 {
153   return GetImplementation(*this).GetStrokeJoin();
154 }
155
156 } // namespace Dali