X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=dali-toolkit%2Finternal%2Fcontrols%2Fcontrol%2Fcontrol-data-impl.h;h=5b2cee58fb65228bab919c954f73f4ba634cb1a5;hp=c31ed81ef8346ba9eaa7dda04213045174d30aef;hb=a9d56fc12792cd84a5d41568dc0bbf26157f4334;hpb=b0faad981257720e1a5fb15af45647f30b669adf diff --git a/dali-toolkit/internal/controls/control/control-data-impl.h b/dali-toolkit/internal/controls/control/control-data-impl.h index c31ed81..5b2cee5 100644 --- a/dali-toolkit/internal/controls/control/control-data-impl.h +++ b/dali-toolkit/internal/controls/control/control-data-impl.h @@ -393,16 +393,32 @@ public: Dali::Property GetVisualProperty(Dali::Property::Index index, Dali::Property::Key visualPropertyKey); /** - * @brief Make visual transition from source control to this control about specific Property::Index - * If both of source and this control have Property::Index property, than create animation between them. + * @brief Retrieves source and destination visual properties for the Transition of this Control. + * The properties of this Control will be transitioned from the propeties of source Control to that of destination control. + * If a property value is different between source and destination Control, + * the property information of each Control will be included in sourceProperties and destinationProperties. * - * @param[in] animation Return animation from source to this control. - * @param[in] source Source control to be used property animation. - * @param[in] visualIndex Property::Index to make animation. - * @param[in] alphaFunction alpha function of the animation. - * @param[in] timePeriod time period of the animation. + * @param[out] sourceProperties Source property list to be applied on this Control. + * @param[out] destinationProperties Destination property list to be applied on this Control. + * @param[in] source Source control of the animation. + * @param[in] destination Destination control of the animation. + * + * @note This method do not handle Actor properties. + * And the size and order of the sourceProperties and destinationProperties must be synchronized. + * + * This method triggers Control::OnCreateTransition(). + */ + void CreateTransitions(std::vector>& sourceProperties, + std::vector>& destinationProperties, + Dali::Toolkit::Control source, Dali::Toolkit::Control destination); + + /** + * @brief Update visual properties. + * @param[in] properties Property list to be used to update visual properties of this Control. + * + * @note This method triggers Control::OnUpdateVisualProperties(). */ - void MakeVisualTransition(Dali::Animation& animation, Dali::Toolkit::Control source, Dali::Property::Index visualIndex, AlphaFunction alphaFunction, TimePeriod timePeriod); + void UpdateVisualProperties(const std::vector>& properties); /** * @brief Gets the current control's accessible object. @@ -470,9 +486,8 @@ private: /** * @brief Checks highlighted object geometry if it is showing or not - * @param[in] propertyNotification PropertyNotification */ - void CheckHighlightedObjectGeometry(Dali::PropertyNotification& propertyNotification); + void CheckHighlightedObjectGeometry(); /** * @brief Register property notification to check highlighted object position @@ -531,7 +546,7 @@ public: Dali::Accessibility::Role mAccessibilityRole = Dali::Accessibility::Role::UNKNOWN; - std::vector> mAccessibilityRelations; + std::vector> mAccessibilityRelations; std::function(Actor)> mAccessibilityConstructor; std::unique_ptr mAccessibilityObject; @@ -552,6 +567,7 @@ public: bool mIsKeyboardFocusGroup : 1; ///< Stores whether the control is a focus group. bool mIsEmittingResourceReadySignal : 1; ///< True during ResourceReady(). bool mNeedToEmitResourceReady : 1; ///< True if need to emit the resource ready signal again. + bool mDispatchKeyEvents : 1; ///< Whether the actor emits key event signals RegisteredVisualContainer mRemoveVisuals; ///< List of visuals that are being replaced by another visual once ready @@ -581,9 +597,9 @@ public: private: // Accessibility - notification for highlighted object to check if it is showing. - bool mIsAccessibilityPositionPropertyNotificationSet{false}; - Dali::PropertyNotification mAccessibilityPositionNotification; - Dali::Accessibility::MovedOutOfScreenType mAccessibilityMovedOutOfScreenDirection{Accessibility::MovedOutOfScreenType::NONE}; + bool mIsAccessibilityPositionPropertyNotificationSet{false}; + Dali::PropertyNotification mAccessibilityPositionNotification; + Dali::Accessibility::ScreenRelativeMoveType mAccessibilityLastScreenRelativeMoveType{Accessibility::ScreenRelativeMoveType::OUTSIDE}; }; } // namespace Internal