2 // Open Service Platform
3 // Copyright (c) 2012 Samsung Electronics Co., Ltd.
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
9 // http://www.apache.org/licenses/LICENSE-2.0
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.
19 * @file FApp_ImeAppImpl.h
20 * @brief This is the header file for the %_ImeAppImpl class.
23 #ifndef _FAPP_INTERNAL_IME_APP_IMPL_H_
24 #define _FAPP_INTERNAL_IME_APP_IMPL_H_
28 #include <FAppUiApp.h>
29 #include <FBaseRtIEventListener.h>
31 #include "FApp_UiAppImpl.h"
33 namespace Tizen { namespace Base { namespace Collection { class IList; } } }
34 namespace Tizen { namespace Ui {namespace Controls { class Frame; } } }
36 namespace Tizen { namespace App
44 * @brief This class is the Impl class of a IME application.
47 * This class is the Impl class of a IME application.
50 : public Tizen::App::_UiAppImpl
54 * Returns the _ImeAppImpl's instance pointer.
57 * @return A pointer to the %_ImeAppImpl instance, @n
58 * else @c null if it fails
60 static _ImeAppImpl* GetInstance(void);
63 * Returns the UiApp's instance pointer.
66 * @return A pointer to the %UiApp instance, @n
67 * else @c null if it fails
69 UiApp* GetUiAppInstance(void);
72 * Called when the application is started
75 * @return @c true if the method is successful, @n
77 * @param[in] user_data The user data passed from the callback registration function
78 * @remarks This is a system dependent callback function
80 virtual bool OnCreate(void);
83 * Called when other application send the launch request to the application
86 * @param[in] service The handle to the service
87 * @param[in] user_data The user data passed from the callback registration function
88 * @remarks This is a system dependent callback function
90 virtual void OnService(service_s* service);
93 * Called when the application is completely obscured by another application and becomes invisible
96 * @param[in] user_data The user data passed from the callback registration function
97 * @remarks This is a system dependent callback function
99 virtual void OnPause(void);
102 * Called when the application becomes visible
105 * @param[in] user_data The user data passed from the callback registration function
106 * @remarks This is a system dependent callback function
108 virtual void OnResume(void);
111 * Called once after the main loop of application exits
114 * @param[in] user_data The user data passed from the callback registration function
115 * @remarks This is a system dependent callback function
117 virtual void OnTerminate(void);
120 * Called when an orintation event occurs.
123 * @param[in] orientation The information about the orientation event
125 virtual void OnDeviceOrientationChanged(app_device_orientation_e orientation);
128 * Called when the application's state changes to Tizen::App::AppState::INITIALIZING. @n
131 * @return @c true if the method is successful, @n
134 virtual bool OnAppInitializing(void);
137 * Called when the application's INITIALIZING state is finished
140 * @return @c true if the method is successful, @n
143 virtual bool OnAppInitialized(void);
147 * Called when the internal window handle is required.
151 virtual long OnWindowHandleRequest(void);
154 * Called when the application's state change to Tizen::App::AppState::TERMINATING. @n
157 * @param[in] forcedTermination @c true if the application terminate by system or other application, else @c false.
158 * @return @c true if the method is successful, @n
161 bool OnImeAppImplTerminating(void);
165 * This is the default constructor for this class.
172 * This is the constructor for this class.
176 _ImeAppImpl(UiApp* pUiApp);
179 * This is the copy constructor for the this class.
181 _ImeAppImpl(const _ImeAppImpl& source);
184 * This is the assignment operator for this class.
186 _ImeAppImpl& operator =(const _ImeAppImpl& source);
189 * This is the destructor for this class.
193 virtual ~_ImeAppImpl(void);
196 * Gets the UI state of the IME application.
199 * @return The UI state of the IME application
201 AppUiState GetAppUiState(void) const;
203 void OnForeground(void);
205 void OnBackground(void);
208 static _ImeAppImpl* __pImeAppImpl;
210 _AppImpl* __pAppImpl;
212 AppUiState __appUiState;
221 #endif // _FAPP_INTERNAL_IME_APP_IMPL_H_