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_PublicKeypadEvent.h
19 * @brief This is the header file for _PublicKeypadEvent class.
21 * This header file contains declaration of _PublicKeypadEvent class.
24 #ifndef _FUI_CTRL_INTERNAL_PUBLIC_KEYPAD_EVENT_H_
25 #define _FUI_CTRL_INTERNAL_PUBLIC_KEYPAD_EVENT_H_
27 #include <FBaseResult.h>
28 #include <FBaseRt_Event.h>
29 #include <FOspConfig.h>
30 #include <FUiIKeypadEventListener.h>
32 namespace Tizen { namespace Ui
37 namespace Tizen { namespace Ui { namespace Controls
40 enum KeypadEventStatus
42 KEYPAD_EVENT_STATUS_CREATED,
43 KEYPAD_EVENT_STATUS_OPEN,
44 KEYPAD_EVENT_STATUS_CLOSE,
45 KEYPAD_EVENT_STATUS_BOUNDS_CHANGED,
46 KEYPAD_EVENT_STATUS_ENTERACTION
50 * @class _PublicKeypadEvent
51 * @brief This class handles a keypad event event. It is inherited from Event class.
54 class _PublicKeypadEvent
55 : public Tizen::Base::Runtime::_Event
60 * This is the default class destructor.
63 virtual ~_PublicKeypadEvent(void);
65 static _PublicKeypadEvent* CreateInstanceN(const Tizen::Ui::Control& source);
69 * This method returns the owner of this event.
71 * @return See the comment above.
73 const Tizen::Ui::Control* GetSource(void) const;
75 static Tizen::Base::Runtime::IEventArg* CreateKeypadEventArgN(const Tizen::Ui::Control& source, Tizen::Ui::KeypadAction actionId, Tizen::Ui::Controls::KeypadEventStatus status);
80 * This is the default class constructor.
82 * @remarks After creating an instance of this class, you must explicitly call one of
83 * construction methods to initialize the instance.
86 _PublicKeypadEvent(const Tizen::Ui::Control& source);
89 * This method checks the arg and finds out the type of event. After that this method calls appopriate
92 * @param[in] listener It is a event listener related to this item event.
93 * @param[in] arg It is an argument-like instance of item event retransmitted to the listener's method
95 * @exception E_SUCCESS - The method is successful.
96 * @exception E_ARG_NULL - The listener is null.
97 * @exception E_INVALID_ARG - The argument passed to a method contains an invalid value.@n
98 * The pListener is not the instance of IItemEventListener class or
99 * the pItemEventArg is not the instance of _CustomItemEventArg class.
102 virtual void FireImpl(Tizen::Base::Runtime::IEventListener& listener, const Tizen::Base::Runtime::IEventArg& arg);
106 const Tizen::Ui::Control* __pSource;
107 }; // _PublicKeypadEvent
109 }}} // Tizen::Ui::Controls
111 #endif // _FUI_CTRL_INTERNAL_PUBLIC_KEYPAD_EVENT_H_