2 // Open Service Platform
\r
3 // Copyright (c) 2012-2013 Samsung Electronics Co., Ltd.
\r
5 // Licensed under the Apache License, Version 2.0 (the License);
\r
6 // you may not use this file except in compliance with the License.
\r
7 // You may obtain a copy of the License at
\r
9 // http://www.apache.org/licenses/LICENSE-2.0
\r
11 // Unless required by applicable law or agreed to in writing, software
\r
12 // distributed under the License is distributed on an "AS IS" BASIS,
\r
13 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
\r
14 // See the License for the specific language governing permissions and
\r
15 // limitations under the License.
\r
19 * @file FUiImeInputMethodInfo.h
\r
20 * @brief This is the header file for the %InputMethodInfo class.
\r
22 * This header file contains the declarations of the %InputMethodInfo class.
\r
25 #ifndef _FUI_IME_INPUT_METHOD_INFO_H_
\r
26 #define _FUI_IME_INPUT_METHOD_INFO_H_
\r
28 #include <FAppTypes.h>
\r
29 #include <FBaseColIList.h>
\r
30 #include <FBaseObject.h>
\r
31 #include <FBaseString.h>
\r
32 #include <FOspConfig.h>
\r
33 #include <FUiImeTypes.h>
\r
35 namespace Tizen { namespace Ui { namespace Ime {
\r
37 class _InputMethodInfoImpl;
\r
40 * @class InputMethodInfo
\r
41 * @brief This class provides a standard implementation of the %InputMethodInfo class.
\r
44 * @final This class is not intended for extension.
\r
45 * @remarks A user can get the general information of the input method.
\r
47 * The %InputMethodInfo class provides a standard implementation of the %InputMethodInfo class.
\r
50 class _OSP_EXPORT_ InputMethodInfo
\r
51 : public Tizen::Base::Object
\r
55 * This destructor overrides Tizen::Base::Object::~Object().
\r
58 * @privlevel platform
\r
59 * @privilege %http://tizen.org/privilege/imemanager
\r
61 virtual ~InputMethodInfo(void);
\r
64 * Gets the application ID of an input method.
\r
67 * @privlevel platform
\r
68 * @privilege %http://tizen.org/privilege/imemanager
\r
70 * @return The application ID
\r
71 * @exception E_SUCCESS The method is successful.
\r
72 * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method.
\r
74 Tizen::App::AppId GetAppId(void) const;
\r
77 * Gets the language list that an input method supports.
\r
80 * @privlevel platform
\r
81 * @privilege %http://tizen.org/privilege/imemanager
\r
83 * @return An instance of the language list that consists of the Tizen::Locales::Locale instances
\r
84 * @exception E_SUCCESS The method is successful.
\r
85 * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method.
\r
86 * @remarks The %InputMethodInfo instance automatically deallocates the memory assigned to the language list when it is destroyed. Therefore, a user must not
\r
87 * manually deallocate the memory assigned to the language list.
\r
89 const Tizen::Base::Collection::IList* GetLanguageList(void) const;
\r
92 * Gets the name of an input method.
\r
95 * @privlevel platform
\r
96 * @privilege %http://tizen.org/privilege/imemanager
\r
98 * @return The name of an input method
\r
99 * @exception E_SUCCESS The method is successful.
\r
100 * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method.
\r
102 Tizen::Base::String GetName(void) const;
\r
105 * Gets the type of an input method.
\r
108 * @privlevel platform
\r
109 * @privilege %http://tizen.org/privilege/imemanager
\r
112 * @exception E_SUCCESS The method is successful.
\r
113 * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method.
\r
115 InputMethodType GetType(void) const;
\r
119 // This Equals() is intentionally declared as private so that only the platform can compare the object received as an input parameter with this object.
\r
123 // @return @c true if the object received as an input parameter equals this object, @n
\r
125 // @param[in] object A reference to the %InputMethodInfo
\r
127 virtual bool Equals(const Object& object) const;
\r
130 // This default constructor is intentionally declared as private so that only the platform can create an instance.
\r
134 InputMethodInfo(void);
\r
137 // This copy constructor is intentionally declared as private so that only the platform can copy objects.
\r
141 // @param[in] info A reference to the %InputMethodInfo
\r
143 InputMethodInfo(const InputMethodInfo& info);
\r
146 // This copy assignment operator is intentionally declared as private so that only the platform can copy objects.
\r
150 // @param[in] info A reference to the %InputMethodInfo
\r
152 InputMethodInfo& operator=(const InputMethodInfo& info);
\r
155 friend class _InputMethodInfoImpl;
\r
156 friend class _InputMethodManagerImpl;
\r
158 _InputMethodInfoImpl* __pInputMethodInfoImpl;
\r
161 }}} // Tizen::Ui::Ime
\r
163 #endif // _FUI_IME_INPUT_METHOD_INFO_H_
\r