2 * Copyright (c) 2014 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.
18 #include <dali-toolkit/public-api/controls/scrollable/scroll-view/scroll-view-effect.h>
19 #include <dali-toolkit/public-api/controls/scrollable/scroll-view/scroll-view-twist-effect.h>
20 #include <dali-toolkit/internal/controls/scrollable/scroll-view/scroll-view-effect-impl.h>
21 #include <dali-toolkit/internal/controls/scrollable/scroll-view/scroll-view-twist-effect-impl.h>
31 const float ScrollViewTwistEffect::DEFAULT_MINIMUM_DISTANCE_FOR_SHRINK( 0.0f );
33 ScrollViewTwistEffect ScrollViewTwistEffect::New()
35 return ScrollViewTwistEffect(new Internal::ScrollViewTwistEffect());
38 ScrollViewTwistEffect::ScrollViewTwistEffect()
43 ScrollViewTwistEffect::ScrollViewTwistEffect(Internal::ScrollViewTwistEffect *impl)
44 : ScrollViewEffect(impl)
48 ScrollViewTwistEffect ScrollViewTwistEffect::DownCast( BaseHandle handle )
50 return ScrollViewTwistEffect( dynamic_cast<Internal::ScrollViewTwistEffect*>(handle.GetObjectPtr()) );
53 float ScrollViewTwistEffect::GetMinimumDistanceForShrink() const
55 return GetImpl(*this).GetMinimumDistanceForShrink();
58 void ScrollViewTwistEffect::SetMinimumDistanceForShrink(float distance)
60 GetImpl(*this).SetMinimumDistanceForShrink( distance );
63 void ScrollViewTwistEffect::EnableEffect(bool enableFlag)
65 GetImpl(*this).EnableEffect(enableFlag);
68 void ScrollViewTwistEffect::ApplyToActor( Actor child,
69 bool additionalEffects,
70 const Vector2& angleSwing,
75 GetImpl(*this).ApplyToActor( child,
83 void ScrollViewTwistEffect::SetMaxSwingAngle(const Vector2& maxSwingAngle)
85 GetImpl(*this).SetMaxSwingAngle(maxSwingAngle);
88 void ScrollViewTwistEffect::SetSwingDropOff(const Vector2& dropOff, const Vector2& distance, AlphaFunction function)
90 GetImpl(*this).SetSwingDropOff(dropOff, distance, function);
93 } // namespace Toolkit