X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=capi%2Fdali-toolkit%2Fpublic-api%2Fcontrols%2Fcontrol-impl.h;h=b2b687fd1b023efc148038f3fffe7acc08611993;hp=ff9e2c374e6cbdc67ae6b4ee6ad0a74b17b01517;hb=d72610dbc3930e073808fce04bd5c9a37ef9666d;hpb=cf229fa2e4f00e5fe727eab2d215868bf79ac524 diff --git a/capi/dali-toolkit/public-api/controls/control-impl.h b/capi/dali-toolkit/public-api/controls/control-impl.h index ff9e2c3..b2b687f 100644 --- a/capi/dali-toolkit/public-api/controls/control-impl.h +++ b/capi/dali-toolkit/public-api/controls/control-impl.h @@ -31,9 +31,10 @@ namespace Dali DALI_IMPORT_API namespace Toolkit { +class StyleManager; + namespace Internal DALI_INTERNAL { -class StyleChangeProcessor; class RelayoutControllerImpl; class KeyInputFocusManager; } @@ -289,12 +290,9 @@ private: // For derived classes to override virtual void OnInitialize() { } /** - * @brief This method should be overridden by deriving classes when - * they wish to be notified when the style changes. - * - * @param[in] change Information denoting what has changed. + * @brief Callback for when the theme changes. */ - virtual void OnStyleChange(StyleChange change) { } + virtual void OnThemeChange( Toolkit::StyleManager styleManager ); /** * @brief Called whenever a pinch gesture is detected on this control. @@ -513,13 +511,29 @@ private: protected: // Construction + // Flags for the constructor + enum ControlBehaviour + { + CONTROL_BEHAVIOUR_NONE = 0x0, + REQUIRES_TOUCH_EVENTS = 0x1, ///< True if the OnTouchEvent() callback is required. + REQUIRES_THEME_CHANGE_SIGNALS = 0x2 ///< True if this control should listen to theme change signals + }; + /** + * @deprecated Use the constructor taking flags instead * @brief Create a Control. * * @param[in] requiresTouchEvents True if the OnTouchEvent() callback is required. */ Control(bool requiresTouchEvents); + /** + * @brief Create a Control. + * + * @param[in] behaviourFlags Behavioural flags from ControlBehaviour enum + */ + Control(ControlBehaviour behaviourFlags); + public: // Size negotiation @@ -695,7 +709,6 @@ private: class Impl; Impl *mImpl; - friend class Internal::StyleChangeProcessor; friend class Internal::RelayoutControllerImpl; ///< Relayout controller needs to call Relayout() which is private. friend class Internal::KeyInputFocusManager; ///< KeyInputFocusManager needs to call which is private. };