X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=base%2Fdali-toolkit%2Fpublic-api%2Fcontrols%2Fcontrol-impl.h;h=f79bb8bd0e6466951c2d90e4f4c5679d815f9ef0;hb=98e004e02ba280e3353acaf249f9860bad354d28;hp=fb2d06226b223c9c3fb28e1ee5245914fd43c494;hpb=42112a7873ace9129326e94b2d31e83b7d9657b9;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/base/dali-toolkit/public-api/controls/control-impl.h b/base/dali-toolkit/public-api/controls/control-impl.h index fb2d062..f79bb8b 100644 --- a/base/dali-toolkit/public-api/controls/control-impl.h +++ b/base/dali-toolkit/public-api/controls/control-impl.h @@ -19,12 +19,18 @@ */ // EXTERNAL INCLUDES +#include #include +#include +#include +#include +#include +#include // INTERNAL INCLUDES #include -namespace Dali DALI_IMPORT_API +namespace Dali { namespace Toolkit @@ -179,6 +185,17 @@ public: static bool DoAction(BaseObject* object, const std::string& actionName, const std::vector& attributes); /** + * Connects a callback function with the object's signals. + * @param[in] object The object providing the signal. + * @param[in] tracker Used to disconnect the signal. + * @param[in] signalName The signal to connect to. + * @param[in] functor A newly allocated FunctorDelegate. + * @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 ); + + /** * @brief If deriving classes wish to fine tune pinch gesture * detection then they can access the gesture detector through this * API and modify the detection. @@ -496,6 +513,11 @@ private: // From CustomActorImpl, derived classes can override these. virtual bool OnTouchEvent(const TouchEvent& event); /** + * @copydoc Dali::CustomActorImpl::OnHoverEvent(const HoverEvent&) + */ + virtual bool OnHoverEvent(const HoverEvent& event); + + /** * @copydoc Dali::CustomActorImpl::OnKeyEvent(const KeyEvent&) */ virtual bool OnKeyEvent(const KeyEvent& event); @@ -528,7 +550,7 @@ private: * @param[in] styleManager The StyleManager Object * @param[in] change Information denoting what has changed. */ - void DoStyleChange( Toolkit::StyleManager styleManager, StyleChange change ); + DALI_INTERNAL void DoStyleChange( Toolkit::StyleManager styleManager, StyleChange change ); protected: // Construction @@ -538,7 +560,9 @@ protected: // Construction CONTROL_BEHAVIOUR_NONE = 0, REQUIRES_TOUCH_EVENTS = 1<<1, ///< True if the OnTouchEvent() callback is required. REQUIRES_STYLE_CHANGE_SIGNALS = 1<<2, ///< True if needs to monitor style change signals such as theme/font change - NO_SIZE_NEGOTIATION = 1<<3 ///< True if control does not need size negotiation, i.e. it can be skipped in the algorithm + NO_SIZE_NEGOTIATION = 1<<3, ///< True if control does not need size negotiation, i.e. it can be skipped in the algorithm + REQUIRES_HOVER_EVENTS = 1<<4, ///< True if the OnHoverEvent() callback is required. + REQUIRES_MOUSE_WHEEL_EVENTS = 1<<5 ///< True if the OnMouseWheelEvent() callback is required. }; /** @@ -684,7 +708,7 @@ private: // Used by the RelayoutController * @param[in,out] container The container that holds actors that are fed back into the * RelayoutController algorithm. */ - void NegotiateSize( Vector2 size, ActorSizeContainer& container ); + DALI_INTERNAL void NegotiateSize( Vector2 size, ActorSizeContainer& container ); private: @@ -697,7 +721,7 @@ private: * @param[in,out] container The control should add actors to this container that it is not able * to allocate a size for. */ - void Relayout( Vector2 size, ActorSizeContainer& container ); + DALI_INTERNAL void Relayout( Vector2 size, ActorSizeContainer& container ); /** * @brief Used by the KeyInputFocusManager to emit key event signals. @@ -705,13 +729,13 @@ private: * @param[in] event The key event. * @return True if the event was consumed. */ - bool EmitKeyEventSignal(const KeyEvent& event); + DALI_INTERNAL bool EmitKeyEventSignal(const KeyEvent& event); private: // Undefined - Control(const Control&); - Control& operator=(const Control&); + DALI_INTERNAL Control(const Control&); + DALI_INTERNAL Control& operator=(const Control&); class Impl; Impl* mImpl;