2 * Copyright (c) 2016 Samsung Electronics Co., Ltd All Rights Reserved
4 * Licensed under the Apache License, Version 2.0 (the License);
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an AS IS BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
20 using static Interop.InputMethod;
22 namespace Tizen.Uix.InputMethod
25 /// The editor window class.
27 /// <since_tizen> 4 </since_tizen>
28 public class EditorWindow : Window
30 internal static IntPtr _handle = IntPtr.Zero;
31 private IntPtr _realHandle = IntPtr.Zero;
33 internal EditorWindow():base("Edit")
35 _realHandle = _handle;
39 /// This API creates a handle for the editor window.
41 /// <param name="parent">Parent EvasObject.</param>
42 /// <returns>Handle IntPtr.</returns>
43 /// <since_tizen> 4 </since_tizen>
44 protected override IntPtr CreateHandle(EvasObject parent)
50 /// This API gets a handle for the editor window.
52 /// <returns>Handle IntPtr.</returns>
53 /// <since_tizen> 4 </since_tizen>
54 public IntPtr GetHandle()
60 /// This API updates the input panel window's size information.
63 /// http://tizen.org/privilege/ime
65 /// <param name="portraitWidth">The width in the portrait mode.</param>
66 /// <param name="portraitHeight">The height in the portrait mode.</param>
67 /// <param name="landscapeWidth">The width in the landscape mode.</param>
68 /// <param name="landscapeHeight">The height in the landscape mode.</param>
69 /// <exception cref="InvalidOperationException">
70 /// This can occur due to the following reasons:
71 /// 1) The application does not have the privilege to call this function.
72 /// 2) The IME main loop has not started yet.
74 /// <since_tizen> 4 </since_tizen>
75 public static void SetSize(int portraitWidth, int portraitHeight, int landscapeWidth, int landscapeHeight)
77 ErrorCode error = ImeSetSize(portraitWidth, portraitHeight, landscapeWidth, landscapeHeight);
78 if (error != ErrorCode.None)
80 Log.Error(LogTag, "SetSize Failed with error " + error);
81 throw InputMethodExceptionFactory.CreateException(error);