2 * Copyright (c) 2018 Samsung Electronics Co., Ltd.
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
8 * http://www.apache.org/licenses/LICENSE-2.0
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.
17 #include <dali-toolkit/devel-api/layouting/layout-item.h>
18 #include <dali-toolkit/devel-api/layouting/layout-item-impl.h>
19 #include <dali-toolkit/devel-api/layouting/layout-transition-data.h>
20 #include <dali-toolkit/internal/layouting/layout-transition-data-impl.h>
27 LayoutItem::LayoutItem()
32 LayoutItem LayoutItem::New( Handle& handle )
34 Internal::LayoutItemPtr layout = Internal::LayoutItem::New( handle );
35 return LayoutItem( layout.Get() );
38 LayoutItem::LayoutItem( Internal::LayoutItem* LayoutItem )
39 : BaseHandle( LayoutItem )
43 Handle LayoutItem::GetOwner() const
45 return GetImplementation( *this ).GetOwner();
48 void LayoutItem::SetAnimateLayout( bool animateLayout )
50 GetImplementation( *this ).SetAnimateLayout( animateLayout );
53 bool LayoutItem::IsLayoutAnimated() const
55 return GetImplementation( *this ).IsLayoutAnimated();
58 void LayoutItem::SetTransitionData( LayoutTransitionData::LayoutTransitionType layoutTransitionType, LayoutTransitionData layoutTransitionData )
60 Toolkit::Internal::LayoutTransitionDataPtr layoutTransitionDataPtr = Toolkit::Internal::LayoutTransitionDataPtr();
61 if ( layoutTransitionData )
63 layoutTransitionDataPtr = Toolkit::Internal::LayoutTransitionDataPtr( &Toolkit::GetImplementation( layoutTransitionData ) );
65 GetImplementation( *this ).SetTransitionData( layoutTransitionType, layoutTransitionDataPtr );
68 LayoutTransitionData LayoutItem::GetTransitionData( LayoutTransitionData::LayoutTransitionType layoutTransitionType ) const
70 return LayoutTransitionData( GetImplementation( *this ).GetTransitionData( layoutTransitionType ).Get() );
73 } // namespace Toolkit