X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali-toolkit%2Fpublic-api%2Fcontrols%2Fcontrol.h;h=410d638e36891ce0117e82af0e5632a08e5df34b;hb=refs%2Fchanges%2F40%2F272040%2F6;hp=7d7194866f8736035dce7c110ca41096af180b3c;hpb=debd4ef5b35507bac4579dfbb8983b743872c70b;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/dali-toolkit/public-api/controls/control.h b/dali-toolkit/public-api/controls/control.h index 7d71948..410d638 100644 --- a/dali-toolkit/public-api/controls/control.h +++ b/dali-toolkit/public-api/controls/control.h @@ -2,7 +2,7 @@ #define DALI_TOOLKIT_CONTROL_H /* - * Copyright (c) 2020 Samsung Electronics Co., Ltd. + * Copyright (c) 2022 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. @@ -147,12 +147,16 @@ public: */ enum Direction { - LEFT, ///< Move keyboard focus towards the left direction @SINCE_1_0.0 - RIGHT, ///< Move keyboard focus towards the right direction @SINCE_1_0.0 - UP, ///< Move keyboard focus towards the up direction @SINCE_1_0.0 - DOWN, ///< Move keyboard focus towards the down direction @SINCE_1_0.0 - PAGE_UP, ///< Move keyboard focus towards the previous page direction @SINCE_1_2.14 - PAGE_DOWN ///< Move keyboard focus towards the next page direction @SINCE_1_2.14 + LEFT, ///< Move keyboard focus towards the left direction @SINCE_1_0.0 + RIGHT, ///< Move keyboard focus towards the right direction @SINCE_1_0.0 + UP, ///< Move keyboard focus towards the up direction @SINCE_1_0.0 + DOWN, ///< Move keyboard focus towards the down direction @SINCE_1_0.0 + PAGE_UP, ///< Move keyboard focus towards the previous page direction @SINCE_1_2.14 + PAGE_DOWN, ///< Move keyboard focus towards the next page direction @SINCE_1_2.14 + FORWARD, ///< Move keyboard focus towards the forward direction @SINCE_2_1.10 + BACKWARD, ///< Move keyboard focus towards the backward direction @SINCE_2_1.10 + CLOCKWISE, ///< Move keyboard focus towards the clockwise direction @SINCE_2_1.14 + COUNTER_CLOCKWISE, ///< Move keyboard focus towards the counter clockwise direction @SINCE_2_1.14 }; }; @@ -168,6 +172,21 @@ public: typedef Signal ResourceReadySignalType; public: // Creation & Destruction + + /** + * @brief Additional control behaviour flags for the control constructor. + * @note TODO : Currunt code is hard-coded. We Should sync type values as + * CustomActorImpl::ActorFlag and Internal::Control::ControlBehaviour in future. + * @SINCE_2_1.8 + */ + enum ControlBehaviour + { + CONTROL_BEHAVIOUR_DEFAULT = 0, ///< Default behaviour: Size negotiation is enabled & listens to Style Change signal, but doesn't receive event callbacks. @SINCE_1_2_10 + DISABLE_SIZE_NEGOTIATION = 1 << (0 + 0), ///< True if control does not need size negotiation, i.e. it can be skipped in the algorithm @SINCE_1_0.0 + REQUIRES_KEYBOARD_NAVIGATION_SUPPORT = 1 << (4 + 1), ///< True if needs to support keyboard navigation @SINCE_1_0.0 + DISABLE_STYLE_CHANGE_SIGNALS = 1 << (4 + 2), ///< True if control should not monitor style change signals @SINCE_1_2_10 + }; + /** * @brief Creates a new instance of a Control. * @@ -177,6 +196,15 @@ public: // Creation & Destruction static Control New(); /** + * @brief Creates a new instance of a Control with additional behaviour. + * + * @SINCE_2_1.8 + * @param[in] additionalBehaviour Additional control behaviour + * @return A handle to a new Control + */ + static Control New(ControlBehaviour additionalBehaviour); + + /** * @brief Creates an uninitialized Control handle. * * Only derived versions can be instantiated. Calling member @@ -463,7 +491,6 @@ public: // Intended for control developers * * @SINCE_1_0.0 * @param[in] implementation The implementation for this control - * @return A handle to a newly allocated Dali resource * @note Should NOT be called to create a handle from the implementation. As stated, this allocates a NEW Dali resource. */ explicit Control(Internal::Control& implementation);