X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=dali-toolkit%2Fpublic-api%2Fcontrols%2Fcontrol.h;h=e7511a11f9c374f32d995fb70c94c7c29842a9c6;hp=f0f216b6d3af3cd30aaddbcf2a756cfb320b50a4;hb=a78bb823aebc305823855ac35b3413aaff7bc684;hpb=68106e2cbb8541c18a77f39770ea7759f44e02a0 diff --git a/dali-toolkit/public-api/controls/control.h b/dali-toolkit/public-api/controls/control.h index f0f216b..e7511a1 100644 --- a/dali-toolkit/public-api/controls/control.h +++ b/dali-toolkit/public-api/controls/control.h @@ -48,13 +48,15 @@ class Control; * @see Internal::Control * * Signals - * | %Signal Name | Method | - * |-------------------|-----------------------------------------------------| - * | key-event | @ref KeyEventSignal() | - * | tapped | @ref GetTapGestureDetector().DetectedSignal() | - * | panned | @ref GetPanGestureDetector().DetectedSignal() | - * | pinched | @ref GetPinchGestureDetector().DetectedSignal() | - * | long-pressed | @ref GetLongPressGestureDetector().DetectedSignal() | + * | %Signal Name | Method | + * |------------------------|-----------------------------------------------------| + * | key-event | @ref KeyEventSignal() | + * | key-input-focus-gained | @ref KeyInputFocusGainedSignal() | + * | key-input-focus-lost | @ref KeyInputFocusLostSignal() | + * | tapped | @ref GetTapGestureDetector().DetectedSignal() | + * | panned | @ref GetPanGestureDetector().DetectedSignal() | + * | pinched | @ref GetPinchGestureDetector().DetectedSignal() | + * | long-pressed | @ref GetLongPressGestureDetector().DetectedSignal() | * * Actions * | %Action Name | %Control method called | @@ -92,12 +94,15 @@ public: /** * @brief Describes the direction to move the keyboard focus towards. */ - enum KeyboardFocusNavigationDirection + struct KeyboardFocus { - Left, ///< Move keyboard focus towards the left direction - Right, ///< Move keyboard focus towards the right direction - Up, ///< Move keyboard focus towards the up direction - Down ///< Move keyboard focus towards the down direction + enum Direction + { + LEFT, ///< Move keyboard focus towards the left direction + RIGHT, ///< Move keyboard focus towards the right direction + UP, ///< Move keyboard focus towards the up direction + DOWN ///< Move keyboard focus towards the down direction + }; }; // Typedefs @@ -105,6 +110,9 @@ public: /// @brief Key Event signal type; typedef Signal KeyEventSignalType; + /// @brief Key InputFocusType signal type; + typedef Signal KeyInputFocusSignalType; + public: // Creation & Destruction /** @@ -161,20 +169,6 @@ public: */ static Control DownCast( BaseHandle handle ); - /** - * @brief Retrieve the Control implementation. - * - * @return The implementation. - */ - Internal::Control& GetImplementation(); - - /** - * @brief Retrieve the Control implementation. - * - * @return The implementation. - */ - const Internal::Control& GetImplementation() const; - // Key Input /** @@ -243,7 +237,7 @@ public: */ LongPressGestureDetector GetLongPressGestureDetector() const; - // Background + // Styling /** * @brief Sets the name of the style to be applied to the control. @@ -291,13 +285,6 @@ public: */ void ClearBackground(); - /** - * @brief Retrieves the actor used as the background for this control. - * - * @return The actor that used as the background for this control. - */ - Actor GetBackgroundActor() const; - // Signals /** @@ -307,13 +294,43 @@ public: * @code * bool YourCallbackName(Control control, const KeyEvent& event); * @endcode - * The return value of True, indicates that the touch event should be consumed. - * Otherwise the signal will be emitted on the next sensitive parent of the actor. + * The return value of True, indicates that the event should be consumed. + * Otherwise the signal will be emitted on the next parent of the actor. * @pre The Control has been initialized. * @return The signal to connect to. */ KeyEventSignalType& KeyEventSignal(); + /** + * @brief This signal is emitted when the control gets Key Input Focus + * + * A callback of the following type may be connected: + * @code + * bool YourCallbackName( Control control ); + * @endcode + * The return value of True, indicates that the event should be consumed. + * Otherwise the signal will be emitted on the next parent of the actor. + * @pre The Control has been initialized. + * @return The signal to connect to. + */ + KeyInputFocusSignalType& KeyInputFocusGainedSignal(); + + /** + * @brief This signal is emitted when the control loses Key Input Focus + * which could be due to it being gained by another Control or Actor or just cleared from + * this control as no longer required. + * + * A callback of the following type may be connected: + * @code + * bool YourCallbackName( Control control ); + * @endcode + * The return value of True, indicates that the event should be consumed. + * Otherwise the signal will be emitted on the next parent of the actor. + * @pre The Control has been initialized. + * @return The signal to connect to. + */ + KeyInputFocusSignalType& KeyInputFocusLostSignal(); + public: // Intended for control developers /**