0c39ff5ec5562ad11cced42243dd84d12fd674c8
[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::SetSize( const Vector2& size )
55 {
56   GetImplementation( *this ).SetSize( size );
57 }
58
59 const Vector2& Visual::Base::GetSize() const
60 {
61   return GetImplementation( *this ).GetSize();
62 }
63
64 void Visual::Base::GetNaturalSize(Vector2& naturalSize ) const
65 {
66   GetImplementation( *this ).GetNaturalSize( naturalSize );
67 }
68
69 void Visual::Base::SetDepthIndex( float index )
70 {
71   GetImplementation( *this ).SetDepthIndex( index );
72 }
73
74 float Visual::Base::GetDepthIndex() const
75 {
76   return GetImplementation( *this ).GetDepthIndex();
77 }
78
79 void Visual::Base::SetOnStage( Actor& actor )
80 {
81   GetImplementation( *this ).SetOnStage( actor );
82 }
83
84 void Visual::Base::SetOffStage( Actor& actor )
85 {
86   GetImplementation( *this ).SetOffStage( actor );
87 }
88
89 void Visual::Base::RemoveAndReset( Actor& actor )
90 {
91   if( actor && *this )
92   {
93     SetOffStage( actor );
94   }
95   Reset();
96 }
97
98 void Visual::Base::CreatePropertyMap( Property::Map& map ) const
99 {
100   GetImplementation( *this ).CreatePropertyMap( map );
101 }
102
103 void Visual::Base::SetProperty( Dali::Property::Index index, const Dali::Property::Value& propertyValue )
104 {
105   GetImplementation( *this ).SetProperty( index, propertyValue );
106 }
107
108 Dali::Property::Value Visual::Base::GetProperty( Dali::Property::Index index )
109 {
110   return GetImplementation( *this ).GetProperty( index );
111 }
112
113 } // namespace Toolkit
114
115 } // namespace Dali