Spannable: Add StrikethroughSpan
[platform/core/uifw/dali-toolkit.git] / dali-toolkit / devel-api / text / spans / strikethrough-span.cpp
1 /*
2  * Copyright (c) 2022 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/text/spans/strikethrough-span.h>
20
21 // INTERNAL INCLUDES
22 #include <dali-toolkit/internal/text/spannable/spans/strikethrough-span-impl.h>
23
24 namespace Dali
25 {
26 namespace Toolkit
27 {
28 namespace Text
29 {
30 StrikethroughSpan StrikethroughSpan::New()
31 {
32   return Internal::StrikethroughSpan::New();
33 }
34
35 StrikethroughSpan StrikethroughSpan::New(Vector4 color, float height)
36 {
37   return Internal::StrikethroughSpan::New(color, height);
38 }
39
40 StrikethroughSpan::StrikethroughSpan(Internal::StrikethroughSpan* internal)
41 : BaseSpan(internal)
42 {
43 }
44
45 StrikethroughSpan::StrikethroughSpan()                             = default;
46 StrikethroughSpan::StrikethroughSpan(const StrikethroughSpan& rhs) = default;
47 StrikethroughSpan::StrikethroughSpan(StrikethroughSpan&& rhs)      = default;
48 StrikethroughSpan& StrikethroughSpan::operator=(const StrikethroughSpan& rhs) = default;
49 StrikethroughSpan& StrikethroughSpan::operator=(StrikethroughSpan&& rhs) = default;
50 StrikethroughSpan::~StrikethroughSpan()                                  = default;
51
52 //Methods
53 const Vector4 StrikethroughSpan::GetColor() const
54 {
55   return GetImplementation(*this).GetColor();
56 }
57
58 bool StrikethroughSpan::IsColorDefined() const
59 {
60   return GetImplementation(*this).IsColorDefined();
61 }
62
63 const float StrikethroughSpan::GetHeight() const
64 {
65   return GetImplementation(*this).GetHeight();
66 }
67
68 bool StrikethroughSpan::IsHeightDefined() const
69 {
70   return GetImplementation(*this).IsHeightDefined();
71 }
72
73 StrikethroughSpan StrikethroughSpan::DownCast(BaseHandle handle)
74 {
75   return StrikethroughSpan(dynamic_cast<Dali::Toolkit::Text::Internal::StrikethroughSpan*>(handle.GetObjectPtr()));
76 }
77
78 } // namespace Text
79
80 } // namespace Toolkit
81
82 } // namespace Dali