X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali-toolkit%2Finternal%2Fcontrols%2Fscrollable%2Fscrollable-impl.h;h=4240a1e46c0c5cfacac359a2277ec06d519b5ac8;hb=d3e4ed352b1b3436394c7a218a961487b7ee00fa;hp=bf6fa98d996d0c52d5a3496d7ab96d2b8e676315;hpb=3320153709e9409873ee708680b1b9eed8cb1060;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/dali-toolkit/internal/controls/scrollable/scrollable-impl.h b/dali-toolkit/internal/controls/scrollable/scrollable-impl.h index bf6fa98..4240a1e 100644 --- a/dali-toolkit/internal/controls/scrollable/scrollable-impl.h +++ b/dali-toolkit/internal/controls/scrollable/scrollable-impl.h @@ -1,8 +1,8 @@ -#ifndef __DALI_TOOLKIT_INTERNAL_SCROLLABLE_H__ -#define __DALI_TOOLKIT_INTERNAL_SCROLLABLE_H__ +#ifndef DALI_TOOLKIT_INTERNAL_SCROLLABLE_H +#define DALI_TOOLKIT_INTERNAL_SCROLLABLE_H /* - * Copyright (c) 2014 Samsung Electronics Co., Ltd. + * Copyright (c) 2021 Samsung Electronics Co., Ltd. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -22,18 +22,17 @@ #include // INTERNAL INCLUDES +#include +#include #include #include namespace Dali { - namespace Toolkit { - namespace Internal { - class Scrollable; typedef IntrusivePtr ScrollablePtr; @@ -43,7 +42,6 @@ typedef IntrusivePtr ScrollablePtr; class Scrollable : public Control { public: - /** * @copydoc Dali::Toolkit::Scrollable::IsOvershootEnabled */ @@ -83,13 +81,13 @@ public: * @param[in] position The position to scroll to. * @param[in] duration The duration of the animation in seconds */ - virtual void ScrollTo(const Vector2 &position, float duration) = 0; + virtual void ScrollTo(const Vector2& position, float duration) = 0; /** * Set the color of the overshoot effect. * @parm[in] color The color of the overshoot effect */ - virtual void SetOvershootEffectColor( const Vector4& color ) = 0; + virtual void SetOvershootEffectColor(const Vector4& color) = 0; /** * Retrieve the color of the overshoot effect. @@ -100,7 +98,7 @@ public: /** * @copydoc Dali::Toolkit::Scrollable::SetOvershootAnimationSpeed(float pixelsPerSecond) */ - void SetOvershootAnimationSpeed( float pixelsPerSecond ); + void SetOvershootAnimationSpeed(float pixelsPerSecond); /** * @copydoc Dali::Toolkit::Scrollable::GetOvershootAnimationSpeed() @@ -116,19 +114,32 @@ public: * Set the size of the overshoot effect. * @parm[in] size The size of the overshoot effect */ - virtual void SetOvershootSize( const Vector2& size ) = 0; + virtual void SetOvershootSize(const Vector2& size) = 0; -private: +protected: // From Control + struct AccessibleImpl : public DevelControl::AccessibleImpl + { + using DevelControl::AccessibleImpl::AccessibleImpl; + + bool IsScrollable() override; + }; + + /** + * @copydoc Control::OnInitialize + */ + virtual void OnInitialize() override; +private: /** * Temporary function to override EnableScrollOvershoot functionality for overshoot * Only ScrollView needs to override this as HQ has not requested disable functionality in ItemView * @param[in] enable true to enable, false to disable overshoot indicator */ - virtual void EnableScrollOvershoot(bool enable) {} + virtual void EnableScrollOvershoot(bool enable) + { + } public: //Signals - /** * @copydoc Dali::Toolkit::Scrollable::ScrollStartedSignal() */ @@ -153,7 +164,7 @@ public: //Signals * @return True if the signal was connected. * @post If a signal was connected, ownership of functor was passed to CallbackBase. Otherwise the caller is responsible for deleting the unused functor. */ - static bool DoConnectSignal( BaseObject* object, ConnectionTrackerInterface* tracker, const std::string& signalName, FunctorDelegate* functor ); + static bool DoConnectSignal(BaseObject* object, ConnectionTrackerInterface* tracker, const std::string& signalName, FunctorDelegate* functor); //properties @@ -163,7 +174,7 @@ public: //Signals * @param[in] index The property index. * @param[in] value The new property value. */ - static void SetProperty( BaseObject* object, Property::Index index, const Property::Value& value ); + static void SetProperty(BaseObject* object, Property::Index index, const Property::Value& value); /** * Called to retrieve a property of an object of this type. @@ -171,21 +182,20 @@ public: //Signals * @param[in] index The property index. * @return The current value of the property. */ - static Property::Value GetProperty( BaseObject* object, Property::Index index ); + static Property::Value GetProperty(BaseObject* object, Property::Index index); protected: - /** - * Construct a new Scrollable. + * Removed default constructor. */ - Scrollable(); + Scrollable() = delete; /** * @brief Construct a new Scrollable. * * @param[in] behaviourFlags Flags to enable */ - Scrollable( ControlBehaviour behaviourFlags ); + Scrollable(ControlBehaviour behaviourFlags); /** * A reference counted object may only be deleted by calling Unreference() @@ -193,7 +203,6 @@ protected: virtual ~Scrollable(); private: - /** * Gets position property. * @@ -202,7 +211,6 @@ private: Vector2 GetPropertyPosition() const; private: - // Undefined Scrollable(const Scrollable&); @@ -210,20 +218,18 @@ private: Scrollable& operator=(const Scrollable& rhs); protected: - - Vector4 mOvershootEffectColor; ///