2 // Open Service Platform
3 // Copyright (c) 2012-2013 Samsung Electronics Co., Ltd.
5 // Licensed under the Flora License, Version 1.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
9 // http://floralicense.org/license/
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.
18 * @file FUiCtrl_IKeypadEventListener.h
19 * @brief This is the header file for the _IKeypadEventListener interface.
21 * This header file contains the declarations of the _IKeypadEventListener interface.
23 #ifndef _FUI_CTRL_INTERNAL_IKEYPAD_EVENT_LISTENER_H_
24 #define _FUI_CTRL_INTERNAL_IKEYPAD_EVENT_LISTENER_H_
27 #include <FBaseRtIEventListener.h>
28 #include <FUiCtrlEditTypes.h>
30 namespace Tizen { namespace Graphics
35 namespace Tizen { namespace Ui
40 // namespace declaration
41 namespace Tizen { namespace Ui { namespace Controls
46 CORE_KEYPAD_ACTION_ENTER, /**< The enter key */
47 CORE_KEYPAD_ACTION_GO, /**< The Go key */
48 CORE_KEYPAD_ACTION_NEXT, /**< The Next key */
49 CORE_KEYPAD_ACTION_SEND, /**< The Send key */
50 CORE_KEYPAD_ACTION_SEARCH, /**< The Search key */
51 CORE_KEYPAD_ACTION_LOGIN, /**< The Login key */
52 CORE_KEYPAD_ACTION_SIGN_IN, /**< The Sign-In key */
53 CORE_KEYPAD_ACTION_JOIN, /**< The Join key */
54 CORE_KEYPAD_ACTION_DONE /**< The Done key */
57 * @interface _IKeypadEventListener
58 * @brief This interface implements the listener for keypad events.
61 * The _IKeypadEventListener interface enables the implementer to receive the
62 * software keypad related events.
64 class _IKeypadEventListener
65 : virtual public Tizen::Base::Runtime::IEventListener
70 * This is the destructor for this class.
73 virtual ~_IKeypadEventListener(void) {}
79 * Notifies that the keypad is about to be shown on the screen.
82 * @param[in] source The source of the event
83 * @remarks When the software keypad appears on screen, the current Form's
84 * client area is adjusted to account for the space that is taken
85 * up by the software keypad.
86 * @see Tizen::Ui::Controls::Form::GetClientAreaBounds()
88 virtual void OnKeypadWillOpen(void) = 0;
91 * Notifies that the keypad is shown on the screen.
94 * @param[in] source The source of the event
95 * @remarks When the software keypad appears on screen, the current Form's
96 * client area is adjusted to account for the space that is taken
97 * up by the software keypad.
98 * @see Tizen::Ui::Controls::Form::GetClientAreaBounds()
100 virtual void OnKeypadOpened(void) = 0;
103 * Notifies that the keypad is hidden from the screen.
106 * @param[in] source The source of the event
107 * @see Tizen::Ui::Controls::Form::GetClientAreaBounds()
109 virtual void OnKeypadClosed(void) = 0;
112 * Notifies that the keypad bounds is changed, for instance when the predictive text@n
113 * which is located in the upper side of the keypad is shown.
117 * @param[in] source The source of the event
118 * @see Tizen::Ui::Controls::Form::GetClientAreaBounds()
120 virtual void OnKeypadBoundsChanged(void) = 0;
123 * Notifies that the keypad action button is pressed.
126 * @param[in] source The source of the event
127 * @param[in] keypadAction The keypad action
130 virtual void OnKeypadActionPerformed(CoreKeypadAction keypadAction) = 0;
131 }; // _IKeypadEventListener
133 }}} // Tizen::Ui::Controls
135 #endif // _FUI_CTRL_INTERNAL_IKEYPAD_EVENT_LISTENER_H_