2 * Copyright (c) 2021 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-toolkit/public-api/transition/scale-transition.h>
22 #include <dali-toolkit/internal/transition/scale-transition-impl.h>
28 ScaleTransition::ScaleTransition() = default;
30 ScaleTransition::ScaleTransition(Internal::ScaleTransition* scaleTransition)
31 : TransitionBase(scaleTransition)
35 ScaleTransition ScaleTransition::New(Dali::Toolkit::Control control, float scaleFactor, TimePeriod timePeriod)
37 Internal::ScaleTransitionPtr internal = Dali::Toolkit::Internal::ScaleTransition::New(control, Vector2(scaleFactor, scaleFactor), timePeriod);
39 return ScaleTransition(internal.Get());
42 ScaleTransition ScaleTransition::New(Dali::Toolkit::Control control, const Vector2& scaleFactor, TimePeriod timePeriod)
44 Internal::ScaleTransitionPtr internal = Dali::Toolkit::Internal::ScaleTransition::New(control, scaleFactor, timePeriod);
46 return ScaleTransition(internal.Get());
49 ScaleTransition ScaleTransition::DownCast(BaseHandle handle)
51 return ScaleTransition(dynamic_cast<Dali::Toolkit::Internal::ScaleTransition*>(handle.GetObjectPtr()));
54 ScaleTransition::~ScaleTransition() = default;
56 ScaleTransition::ScaleTransition(const ScaleTransition& handle) = default;
58 ScaleTransition& ScaleTransition::operator=(const ScaleTransition& rhs) = default;
60 ScaleTransition::ScaleTransition(ScaleTransition&& rhs) = default;
62 ScaleTransition& ScaleTransition::operator=(ScaleTransition&& rhs) = default;
64 void ScaleTransition::SetScaleFactor(const Vector2& scaleFactor)
66 GetImplementation(*this).SetScaleFactor(scaleFactor);
69 Vector2 ScaleTransition::GetScaleFactor() const
71 return GetImplementation(*this).GetScaleFactor();
74 } // namespace Toolkit