X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali-toolkit%2Finternal%2Fcontrols%2Fcontrol%2Fcontrol-data-impl.h;h=d2eb48e3e1de025cfc352a3b69736c30bedd3faa;hb=2ec8c5f2b33bd2ac8e1ca84a5f9c4e9778748b2e;hp=f9c30991a159b21e336477ebb3bb859a05ce20d2;hpb=e5208b9110e3aa0fb53d4db1cd19408cc958bfbb;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/dali-toolkit/internal/controls/control/control-data-impl.h b/dali-toolkit/internal/controls/control/control-data-impl.h index f9c3099..d2eb48e 100755 --- a/dali-toolkit/internal/controls/control/control-data-impl.h +++ b/dali-toolkit/internal/controls/control/control-data-impl.h @@ -2,7 +2,7 @@ #define DALI_TOOLKIT_CONTROL_DATA_IMPL_H /* - * Copyright (c) 2017 Samsung Electronics Co., Ltd. + * Copyright (c) 2018 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. @@ -27,14 +27,12 @@ #include #include #include +#include #include #include #include #include #include -#include -#include -#include namespace Dali { @@ -86,7 +84,7 @@ public: /** * @brief Constructor. - * @param[in] controlImpl The control which own this implementation + * @param[in] controlImpl The control which owns this implementation */ Impl( Control& controlImpl ); @@ -188,6 +186,16 @@ public: Toolkit::Visual::ResourceStatus GetVisualResourceStatus( Property::Index index ) const; /** + * @param[in,out] animation Handle to existing animation, or an empty handle that + * can be set to a New animation if createAnimation is true + * @param[in] transitionData The transition data describing the animation + * @param[in] createAnimation True if the animation should be created + */ + void AddTransitions( Dali::Animation& animation, + const Toolkit::TransitionData& transitionData, + bool createAnimation = false ); + + /** * @copydoc Dali::Toolkit::DevelControl::CreateTransition() */ Dali::Animation CreateTransition( const Toolkit::TransitionData& transitionData ); @@ -303,10 +311,39 @@ public: */ Extents GetPadding() const; - void AccessibilitySetAttribute( const std::string& key, - const std::string value ); - std::string AccessibilityGetAttribute( const std::string& key ); - void AccessibilityEraseAttribute( std::string& key ); + /** + * @brief Set the input method context. + * @param[in] inputMethodContext The input method context. + */ + void SetInputMethodContext( InputMethodContext& inputMethodContext ); + + /** + * @brief Filter an key event. + * @param[in] event The key to be filtered. + * @return True if the key handled, otherwise false. + */ + bool FilterKeyEvent( const KeyEvent& event ); + + /** + * @brief Get the layout associated with this control, if any. + * + * @return A pointer to the layout, or NULL. + */ + Toolkit::Internal::LayoutItemPtr GetLayout() const; + + /** + * @brief Set the layout on this control. + * @param[in] layout Pointer to the layout + */ + void SetLayout( Toolkit::Internal::LayoutItem& layout ); + + /** + * @brief Remove the layout from this control + * + * @note This does not remove any children from this control, nor does it strip + * layouts from them but it does remove them from the layout hierarchy. + */ + void RemoveLayout(); private: @@ -352,7 +389,9 @@ public: Control& mControlImpl; DevelControl::State mState; std::string mSubStateName; - Property::Map mAccessibilityAttributes; + + // Layout + Toolkit::Internal::LayoutItemPtr mLayout; int mLeftFocusableActorId; ///< Actor ID of Left focusable control. int mRightFocusableActorId; ///< Actor ID of Right focusable control. @@ -369,7 +408,6 @@ public: Toolkit::Control::KeyInputFocusSignalType mKeyInputFocusGainedSignal; Toolkit::Control::KeyInputFocusSignalType mKeyInputFocusLostSignal; Toolkit::Control::ResourceReadySignalType mResourceReadySignal; - Toolkit::Control::AccessibilityActivateSignalType mAccessibilityActivateSignal; // Gesture Detection PinchGestureDetector mPinchGestureDetector; @@ -380,12 +418,15 @@ public: // Tooltip TooltipPtr mTooltip; + InputMethodContext mInputMethodContext; + ControlBehaviour mFlags : CONTROL_BEHAVIOUR_FLAG_COUNT; ///< Flags passed in from constructor. bool mIsKeyboardNavigationSupported :1; ///< Stores whether keyboard navigation is supported by the control. bool mIsKeyboardFocusGroup :1; ///< Stores whether the control is a focus group. RegisteredVisualContainer mRemoveVisuals; ///< List of visuals that are being replaced by another visual once ready + // Properties - these need to be members of Internal::Control::Impl as they access private methods/data of Internal::Control and Internal::Control::Impl. static const PropertyRegistration PROPERTY_1; static const PropertyRegistration PROPERTY_2; @@ -401,11 +442,6 @@ public: static const PropertyRegistration PROPERTY_12; static const PropertyRegistration PROPERTY_13; static const PropertyRegistration PROPERTY_14; - static const PropertyRegistration PROPERTY_15; - - std::function< std::unique_ptr< Dali::Accessibility::Accessible >( Actor ) > - accessibilityConstructor; - std::unique_ptr< Dali::Accessibility::Accessible > accessibilityObject; };