a0577d8565781847a4a93528b1c199e784fdc357
[platform/core/uifw/dali-toolkit.git] / dali-toolkit / devel-api / controls / canvas-view / canvas-view.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-toolkit/devel-api/controls/canvas-view/canvas-view.h>
20
21 // INTERNAL INCLUDES
22 #include <dali-toolkit/internal/controls/canvas-view/canvas-view-impl.h>
23
24 namespace Dali
25 {
26 namespace Toolkit
27 {
28 CanvasView::CanvasView()
29 {
30 }
31
32 CanvasView::CanvasView(const CanvasView& canvasView)
33 : Control(canvasView)
34 {
35 }
36
37 CanvasView::CanvasView(CanvasView&& rhs) = default;
38
39 CanvasView& CanvasView::operator=(const CanvasView& rhs)
40 {
41   if(&rhs != this)
42   {
43     Control::operator=(rhs);
44   }
45   return *this;
46 }
47
48 CanvasView& CanvasView::operator=(CanvasView&& rhs) = default;
49
50 CanvasView::~CanvasView()
51 {
52 }
53
54 CanvasView CanvasView::New()
55 {
56   CanvasView canvasView = Internal::CanvasView::New(Vector2::ZERO);
57   return canvasView;
58 }
59
60 CanvasView CanvasView::New(const Vector2& viewBox)
61 {
62   CanvasView canvasView = Internal::CanvasView::New(viewBox);
63   return canvasView;
64 }
65
66 CanvasView CanvasView::DownCast(BaseHandle handle)
67 {
68   return Control::DownCast<CanvasView, Internal::CanvasView>(handle);
69 }
70
71 void CanvasView::AddDrawable(Dali::CanvasRenderer::Drawable& drawable)
72 {
73   Dali::Toolkit::GetImpl(*this).AddDrawable(drawable);
74 }
75
76 bool CanvasView::RemoveDrawable(Dali::CanvasRenderer::Drawable& drawable)
77 {
78   return Dali::Toolkit::GetImpl(*this).RemoveDrawable(drawable);
79 }
80
81 CanvasView::CanvasView(Internal::CanvasView& implementation)
82 : Control(implementation)
83 {
84 }
85
86 CanvasView::CanvasView(Dali::Internal::CustomActor* internal)
87 : Control(internal)
88 {
89   VerifyCustomActorPointer<Internal::CanvasView>(internal);
90 }
91
92 } // namespace Toolkit
93
94 } // namespace Dali