diff options
author | yh106.jung <yh106.jung@samsung.com> | 2017-02-17 13:12:56 +0900 |
---|---|---|
committer | yh106.jung <yh106.jung@samsung.com> | 2017-03-17 14:39:14 +0900 |
commit | aca675d31f77ab8373bc5487cd0ef8fc882cf831 (patch) | |
tree | 54a0f4146b2421c636c89fadfadc033d3a802bf5 /Tizen.WebView/Tizen.WebView/SmartCallbackArgs.cs | |
parent | cea70b4434ca284d84beda6ecfc9639de441f499 (diff) | |
download | webview-aca675d31f77ab8373bc5487cd0ef8fc882cf831.tar.gz webview-aca675d31f77ab8373bc5487cd0ef8fc882cf831.tar.bz2 webview-aca675d31f77ab8373bc5487cd0ef8fc882cf831.zip |
Introduce Tizen.WebViewtizen_4.0.m1_releasesubmit/tizen/20170317.084116submit/tizen/20170317.045203accepted/tizen/unified/20170317.085515accepted/tizen/unified/20170317.083347accepted/tizen/tv/20170317.085443accepted/tizen/mobile/20170317.085426accepted/tizen/ivi/20170317.085500accepted/tizen/common/20170317.163940accepted/tizen_tvaccepted/tizen_mobileaccepted/tizen_iviaccepted/tizen_common
This patch introduces Tizen.WebView project.
Plus, Tizen.WebView.Test project is included in order to test basic
functionality of Tizen.WebView.
Change-Id: I79b01c2c18817f399f83a3e56cc5cd8ceae3322f
Signed-off-by: yh106.jung <yh106.jung@samsung.com>
Diffstat (limited to 'Tizen.WebView/Tizen.WebView/SmartCallbackArgs.cs')
-rw-r--r-- | Tizen.WebView/Tizen.WebView/SmartCallbackArgs.cs | 93 |
1 files changed, 93 insertions, 0 deletions
diff --git a/Tizen.WebView/Tizen.WebView/SmartCallbackArgs.cs b/Tizen.WebView/Tizen.WebView/SmartCallbackArgs.cs new file mode 100644 index 0000000..9da498f --- /dev/null +++ b/Tizen.WebView/Tizen.WebView/SmartCallbackArgs.cs @@ -0,0 +1,93 @@ +/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * Licensed under the Apache License, Version 2.0 (the License);
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an AS IS BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+using System;
+using System.Runtime.InteropServices;
+
+namespace Tizen.WebView
+{
+ /// <summary>
+ /// Argument from the SmartCallback.
+ /// </summary>
+ public class SmartCallbackArgs : EventArgs
+ {
+ private IntPtr _arg;
+
+ internal SmartCallbackArgs(IntPtr arg)
+ {
+ _arg = arg;
+ }
+
+ /// <summary>
+ /// Gets argument as integer type.
+ /// </summary>
+ /// <returns>Argument as integer type</returns>
+ public int GetAsInteger()
+ {
+ if (_arg == IntPtr.Zero)
+ {
+ return 0;
+ }
+ return Marshal.ReadInt32(_arg, 0);
+ }
+
+ /// <summary>
+ /// Gets argument as double type.
+ /// </summary>
+ /// <returns>Argument as double type</returns>
+ public double GetAsDouble()
+ {
+ if (_arg == IntPtr.Zero)
+ {
+ return 0d;
+ }
+ double[] ret = new double[1];
+ Marshal.Copy(_arg, ret, 0, 1);
+ return ret[0];
+ }
+
+ /// <summary>
+ /// Gets argument as boolean type.
+ /// </summary>
+ /// <returns>Argument as boolean type</returns>
+ public bool GetAsBoolean()
+ {
+ if (_arg == IntPtr.Zero)
+ {
+ return false;
+ }
+ return Marshal.ReadByte(_arg) != (byte)0;
+ }
+
+ /// <summary>
+ /// Gets argument as string type.
+ /// </summary>
+ /// <returns>Argument as string type</returns>
+ public string GetAsString()
+ {
+ if (_arg == IntPtr.Zero)
+ {
+ return string.Empty;
+ }
+ return Marshal.PtrToStringAnsi(_arg);
+ }
+
+ internal static SmartCallbackArgs CreateFromSmartEvent(IntPtr data, IntPtr obj, IntPtr info)
+ {
+ return new SmartCallbackArgs(info);
+ }
+ }
+}
|