X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali-toolkit%2Finternal%2Fcontrols%2Fcontrol%2Fcontrol-data-impl.h;h=561460fe8ed40ab5ef33e88044a595a6817e9205;hb=9abd3e2c82249e93a46625c5ba7bda3960487708;hp=2a06d4cf050fc1d0b67379e6ae5e50c0e54ccdea;hpb=70af9b56b598122bf7dc91adcd1ffacbb94ae733;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 2a06d4c..561460f 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) 2018 Samsung Electronics Co., Ltd. + * Copyright (c) 2019 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. @@ -21,13 +21,15 @@ // EXTERNAL INCLUDES #include #include +#include +#include #include // INTERNAL INCLUDES -#include +#include #include +#include #include -#include #include #include #include @@ -65,7 +67,7 @@ typedef Dali::OwnerContainer< RegisteredVisual* > RegisteredVisualContainer; /** * @brief Holds the Implementation for the internal control class */ -class Control::Impl : public ConnectionTracker, public Visual::ResourceObserver +class Control::Impl : public ConnectionTracker, public Visual::EventObserver { public: @@ -124,9 +126,17 @@ public: /** * @brief Called when a resource is ready. * @param[in] object The visual whose resources are ready - * @note Overriding method in Visual::ResourceObserver. + * @note Overriding method in Visual::EventObserver. */ - virtual void ResourceReady( Visual::Base& object ); + virtual void ResourceReady( Visual::Base& object ) override; + + /** + * @brief Called when an event occurs. + * @param[in] object The visual whose events occur + * @param[in] signalId The signal to emit. See Visual to find supported signals + * @note Overriding method in Visual::EventObserver. + */ + virtual void NotifyVisualEvent( Visual::Base& object, Property::Index signalId ) override; /** * @copydoc Dali::Toolkit::DevelControl::RegisterVisual() @@ -325,17 +335,45 @@ public: bool FilterKeyEvent( const KeyEvent& event ); /** - * @brief Get the layout associated with this control, if any. - * - * @return A pointer to the layout, or NULL. + * @copydoc DevelControl::VisualEventSignal() + */ + DevelControl::VisualEventSignalType& VisualEventSignal(); + + /** + * @brief Sets whether the Autofill functionality is enabled. + * @param[in] autofillEnabled Set true when Autofill should be enabled. + */ + void SetAutofillEnabled( bool autofillEnabled ); + + /** + * @brief Check if the Autofill framework is enabled. + * @return True if Autofill is enabled */ - Toolkit::Internal::LayoutItemPtr GetLayout() const; + bool IsAutofillEnabled(); /** - * @brief Set the layout on this control. - * @param[in] layout Pointer to the layout + * @brief Sets AutofillItemHandle + * @param item AutofillItem handle */ - void SetLayout( Toolkit::Internal::LayoutItem& layout ); + void SetAutofillItemHandle( Dali::AutofillItem item ); + + /** + * @brief Gets AutofillItemHandle + * @return AutofillItem handle + */ + Dali::AutofillItem GetAutofillItemHandle(); + + /** + * @brief Sets AutofillContainer which this control belongs to. + * @param[in] container + */ + void SetAutofillContainer( Toolkit::AutofillContainer container ); + + /** + * @brief Gets AutofillContainer that the control belongs to. + * @return AutofillContainer handle + */ + Toolkit::AutofillContainer GetAutofillContainer(); private: @@ -382,9 +420,6 @@ public: DevelControl::State mState; std::string mSubStateName; - // Layout - Toolkit::Internal::LayoutItemPtr mLayout; - int mLeftFocusableActorId; ///< Actor ID of Left focusable control. int mRightFocusableActorId; ///< Actor ID of Right focusable control. int mUpFocusableActorId; ///< Actor ID of Up focusable control. @@ -400,6 +435,7 @@ public: Toolkit::Control::KeyInputFocusSignalType mKeyInputFocusGainedSignal; Toolkit::Control::KeyInputFocusSignalType mKeyInputFocusLostSignal; Toolkit::Control::ResourceReadySignalType mResourceReadySignal; + DevelControl::VisualEventSignalType mVisualEventSignal; // Gesture Detection PinchGestureDetector mPinchGestureDetector; @@ -411,10 +447,13 @@ public: TooltipPtr mTooltip; InputMethodContext mInputMethodContext; + AutofillItem mAutofillItem; + Toolkit::AutofillContainer mAutofillContainer; 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. + bool mIsAutofillEnabled : 1; ///< Stroes whether the Autofill functionality is enabled. RegisteredVisualContainer mRemoveVisuals; ///< List of visuals that are being replaced by another visual once ready