2 * Copyright (c) 2015 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.
19 #include <dali/devel-api/animation/animation-data.h>
25 AnimationData::AnimationData()
29 AnimationData::~AnimationData()
35 void AnimationData::Add( AnimationDataElement* animationDataElement )
37 mAnimationDataList.PushBack( animationDataElement );
41 Dali::Animation AnimationData::CreateAnimation( Dali::Actor targetActor, float duration )
43 Dali::Animation animation;
45 if( mAnimationDataList.Size() > 0 )
47 animation = Dali::Animation::New( duration );
49 // Setup an Animation from AnimationData.
50 AnimationData::AnimationDataList::Iterator end = mAnimationDataList.End();
51 for( AnimationData::AnimationDataList::Iterator iter = mAnimationDataList.Begin(); iter != end; ++iter )
53 // Override the actor in the animation.
54 animation.AnimateTo( Property( targetActor, ( *iter )->property ), ( *iter )->value,
55 ( *iter )->alphaFunction, TimePeriod( ( *iter )->timePeriodDelay, ( *iter )->timePeriodDuration ) );
63 void AnimationData::Clear()
65 AnimationData::AnimationDataList::Iterator end = mAnimationDataList.End();
66 for( AnimationData::AnimationDataList::Iterator iter = mAnimationDataList.Begin(); iter != end; ++iter )
70 mAnimationDataList.Clear();