7a4821bfc6c685d77f264cf3e678b83b0475a9fa
[platform/core/uifw/dali-toolkit.git] / dali-toolkit / devel-api / visual-factory / visual-base.cpp
1  /*
2  * Copyright (c) 2015 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/visual-factory/visual-base.h>
20
21 // INTERAL INCLUDES
22 #include <dali-toolkit/internal/visuals/visual-base-impl.h>
23
24 namespace Dali
25 {
26
27 namespace Toolkit
28 {
29
30 Visual::Base::Base()
31 {
32 }
33
34 Visual::Base::~Base()
35 {
36 }
37
38 Visual::Base::Base( const Visual::Base& handle )
39 : BaseHandle( handle )
40 {
41 }
42
43 Visual::Base& Visual::Base::operator=( const Visual::Base& handle )
44 {
45   BaseHandle::operator=( handle );
46   return *this;
47 }
48
49 Visual::Base::Base(Internal::Visual::Base *impl)
50 : BaseHandle( impl )
51 {
52 }
53
54 void Visual::Base::SetName( const std::string& name )
55 {
56   GetImplementation( *this ).SetName( name );
57 }
58
59 const std::string& Visual::Base::GetName()
60 {
61   return GetImplementation( *this ).GetName();
62 }
63
64 void Visual::Base::SetSize( const Vector2& size )
65 {
66   GetImplementation( *this ).SetSize( size );
67 }
68
69 const Vector2& Visual::Base::GetSize() const
70 {
71   return GetImplementation( *this ).GetSize();
72 }
73
74 float Visual::Base::GetHeightForWidth( float width ) const
75 {
76   return GetImplementation( *this ).GetHeightForWidth( width );
77 }
78
79 void Visual::Base::GetNaturalSize(Vector2& naturalSize )
80 {
81   GetImplementation( *this ).GetNaturalSize( naturalSize );
82 }
83
84 void Visual::Base::SetDepthIndex( float index )
85 {
86   GetImplementation( *this ).SetDepthIndex( index );
87 }
88
89 float Visual::Base::GetDepthIndex() const
90 {
91   return GetImplementation( *this ).GetDepthIndex();
92 }
93
94 void Visual::Base::SetOnStage( Actor& actor )
95 {
96   GetImplementation( *this ).SetOnStage( actor );
97 }
98
99 void Visual::Base::SetOffStage( Actor& actor )
100 {
101   GetImplementation( *this ).SetOffStage( actor );
102 }
103
104 void Visual::Base::RemoveAndReset( Actor& actor )
105 {
106   if( actor && *this )
107   {
108     SetOffStage( actor );
109   }
110   Reset();
111 }
112
113 void Visual::Base::CreatePropertyMap( Property::Map& map ) const
114 {
115   GetImplementation( *this ).CreatePropertyMap( map );
116 }
117
118 void Visual::Base::SetProperty( Dali::Property::Index index, const Dali::Property::Value& propertyValue )
119 {
120   GetImplementation( *this ).SetProperty( index, propertyValue );
121 }
122
123 Dali::Property::Value Visual::Base::GetProperty( Dali::Property::Index index )
124 {
125   return GetImplementation( *this ).GetProperty( index );
126 }
127
128 } // namespace Toolkit
129
130 } // namespace Dali