Blocking traversaltag setting on KeyRelease: Fix for N_SE-53471
[platform/framework/native/uifw.git] / inc / FUiIActionEventListener.h
1 //
2 // Open Service Platform
3 // Copyright (c) 2012-2013 Samsung Electronics Co., Ltd.
4 //
5 // Licensed under the Apache License, Version 2.0 (the License);
6 // you may not use this file except in compliance with the License.
7 // You may obtain a copy of the License at
8 //
9 //     http://www.apache.org/licenses/LICENSE-2.0/
10 //
11 // Unless required by applicable law or agreed to in writing, software
12 // distributed under the License is distributed on an "AS IS" BASIS,
13 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 // See the License for the specific language governing permissions and
15 // limitations under the License.
16 //
17 /**
18  * @file                FUiIActionEventListener.h
19  * @brief               This is the header file for the %IActionEventListener interface.
20  *
21  * This header file contains the declarations of the IActionEventListener interface. @n
22  * If an action event is generated, a method of this interface is called. @n
23  * So, for tasks related to the action event, use the methods of this interface.
24  *
25  */
26 #ifndef _FUI_IACTION_EVENT_LISTENER_H_
27 #define _FUI_IACTION_EVENT_LISTENER_H_
28
29 #include "FBaseRtIEventListener.h"
30
31 namespace Tizen { namespace Ui
32 {
33 class Control;
34 }} // Tizen::Ui
35
36 namespace Tizen {namespace Ui
37 {
38 /**
39  * @interface   IActionEventListener
40  * @brief               This interface implements the listener for action event.
41  *
42  * @since               2.0
43  *
44  * The %IActionEventListener interface is the listener interface for receiving action events, for example, from Buttons.
45  * The class that processes an action event
46  * implements this interface, and the instance created with that class is registered with a UI control, using the control's
47  * AddActionEventListener() method. When the action event occurs, the OnActionPerformed() method of that instance is invoked.
48  * @n
49  * For more information on the class features, see in individual control topics under <a href="../org.tizen.native.appprogramming/html/guide/ui/controls.htm">UI Controls</a>.
50  */
51 class _OSP_EXPORT_ IActionEventListener
52         : virtual public Tizen::Base::Runtime::IEventListener
53 {
54 public:
55         /**
56          * This polymorphic destructor should be overridden if required. This way, the destructors of the derived classes are called when the destructor of this interface is called.
57          *
58          * @since               2.0
59          */
60         virtual ~IActionEventListener(void) {}
61
62         /**
63          * Called when an action event occurs.
64          *
65          * @since               2.0
66          *
67          * @param[in]   source          The source of the event
68          * @param[in]   actionId        The information about the action event
69          */
70         virtual void OnActionPerformed(const Tizen::Ui::Control& source, int actionId) = 0;
71
72 protected:
73         //
74         // This method is for internal use only. Using this method can cause behavioral, security-related,
75         // and consistency-related issues in the application.
76         //
77         // This method is reserved and may change its name at any time without
78         // prior notice.
79         //
80         // @since 2.0
81         //
82         virtual void IActionEventListener_Reserved1(void) {}
83
84         //
85         // This method is for internal use only. Using this method can cause behavioral, security-related,
86         // and consistency-related issues in the application.
87         //
88         // This method is reserved and may change its name at any time without
89         // prior notice.
90         //
91         // @since 2.0
92         //
93         virtual void IActionEventListener_Reserved2(void) {}
94
95         //
96         // This method is for internal use only. Using this method can cause behavioral, security-related,
97         // and consistency-related issues in the application.
98         //
99         // This method is reserved and may change its name at any time without
100         // prior notice.
101         //
102         // @since 2.0
103         //
104         virtual void IActionEventListener_Reserved3(void) {}
105 }; // IActionEventListener
106
107 }} // Tizen::Ui
108
109 #endif // _FUI_IACTION_EVENT_LISTENER_H_