show OverlayRegion when FormActivated
[platform/framework/native/uifw.git] / inc / FUiCtrlISearchBarEventListener.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 /**
19  * @file                FUiCtrlISearchBarEventListener.h
20  * @brief               This is the header file for the %ISearchBarEventListener interface.
21  *
22  * This header file contains the declarations of the %ISearchBarEventListener interface.
23  */
24 #ifndef _FUI_CTRL_ISEARCH_BAR_EVENT_LISTENER_H_
25 #define _FUI_CTRL_ISEARCH_BAR_EVENT_LISTENER_H_
26
27 // Includes
28 #include <FBaseRtIEventListener.h>
29 #include <FUiCtrlSearchBar.h>
30
31 // Namespace declaration
32 namespace Tizen { namespace Ui { namespace Controls
33 {
34 /**
35  * @interface   ISearchBarEventListener
36  * @brief           This interface implements the listener for the %SearchBar events.
37  *
38  * @since           2.0
39  *
40  * The %ISearchBarEventListener interface is the listener interface for receiving SearchBar events.
41  * The class that processes a search bar event implements this interface, and the instance created with that class is registered
42  *  with a UI control, using the control's AddSearchBarEventListener() method. When the search bar event occurs, the
43  *  OnSearchBarModeChanged() method of that instance is invoked.
44  *
45  * For more information on the class features, see <a href="../org.tizen.native.appprogramming/html/guide/ui/implementing_searchbar.htm">SearchBar</a>.
46  */
47 class _OSP_EXPORT_ ISearchBarEventListener
48         : public Tizen::Base::Runtime::IEventListener
49 {
50 // Lifecycle
51 public:
52         /**
53          * This is the destructor for this class.
54          *
55          * @since       2.0
56          */
57         virtual ~ISearchBarEventListener(void) {}
58
59
60 // Operation
61 public:
62         /**
63          * Called when the mode of the SearchBar is changed.
64          *
65          * @if OSPCOMPAT
66          * @brief <i> [Compatibility] </i>
67          * @endif
68          * @since               2.0
69          * @if OSPCOMPAT
70          * @compatibility This method has compatibility issues with OSP compatible applications. @n
71          *                                              For more information, see @ref CompSearchModeChangedPage "here"
72          * @endif
73          * @param[in]   source  The source of the event
74          * @param[in]   mode    The current search bar mode.
75          */
76         virtual void OnSearchBarModeChanged(Tizen::Ui::Controls::SearchBar& source, SearchBarMode mode) = 0;
77         /**
78          * @page               CompSearchModeChangedPage        Compatibility for OnSearchBarModeChanged()
79          * @section            CompSearchModeChangedPage IssueSection          Issues
80          * Implementing this method in OSP compatible applications has following issue: @n
81          * OnSearchBarModeChanged() method modifies the visibility of the current Form's Header in OSP,
82          * whereas current Form's header visibility is not modified in Tizen.
83          *
84          * @section            CompSearchModeChangedPage SolutionSection               Resolutions
85          * It is recommended to use %Tizen API. @n
86          */
87
88 // Reserves
89 protected:
90         //
91         //This method is for internal use only. Using this method can cause behavioral, security-related,
92         //and consistency-related issues in the application.
93         //
94         //This method is reserved and may change its name at any time without prior notice.
95         //
96         //@since      2.0
97         //
98         virtual void ISearchBarEventListener_Reserved1(void) { }
99
100         //
101         //This method is for internal use only. Using this method can cause behavioral, security-related,
102         //and consistency-related issues in the application.
103         //
104         //This method is reserved and may change its name at any time without prior notice.
105         //
106         //@since      2.0
107         //
108         virtual void ISearchBarEventListener_Reserved2(void) { }
109
110         //
111         //This method is for internal use only. Using this method can cause behavioral, security-related,
112         //and consistency-related issues in the application.
113         //
114         //This method is reserved and may change its name at any time without prior notice.
115         //
116         //@since      2.0
117         //
118         virtual void ISearchBarEventListener_Reserved3(void) { }
119
120         //
121         //This method is for internal use only. Using this method can cause behavioral, security-related,
122         //and consistency-related issues in the application.
123         //
124         //This method is reserved and may change its name at any time without prior notice.
125         //
126         //@since      2.0
127         //
128         virtual void ISearchBarEventListener_Reserved4(void) { }
129
130         //
131         //This method is for internal use only. Using this method can cause behavioral, security-related,
132         //and consistency-related issues in the application.
133         //
134         //This method is reserved and may change its name at any time without prior notice.
135         //
136         //@since      2.0
137         //
138         virtual void ISearchBarEventListener_Reserved5(void) { }
139
140 }; // ISearchBarEventListener
141
142 }}} // Tizen::Ui::Controls
143
144 #endif // _FUI_CTRL_ISEARCH_BAR_EVENT_LISTENER_H_