private object GetSimpleValue(Awesomium_Core.JSValue ijsvalue, Type iTargetType = null) { if (ijsvalue.IsString) return (string) ijsvalue; if (ijsvalue.IsBoolean) return (bool) ijsvalue; object res = null; if (ijsvalue.IsNumber) { if (ijsvalue.IsInteger) res = (int) ijsvalue; else if (ijsvalue.IsDouble) res = (double) ijsvalue; return (iTargetType == null) ? res : Convert.ChangeType(res, iTargetType); } var resdate = GetDate(ijsvalue); if (resdate.HasValue) return resdate.Value; return null; }
private bool IsObjectNullorUndefined(Awesomium_Core.JSValue value) { if ((value.IsNull) || (value.IsUndefined)) return true; var extractor = GetExtractor(); return ((bool) extractor.Invoke("isNull", value) == true); }
private DateTime? GetDate(Awesomium_Core.JSValue iJSValue) { if (!iJSValue.IsObject) return null; Awesomium_Core.JSObject ob = iJSValue; Awesomium_Core.JSObject extractor = GetExtractor(); if ((bool) extractor.Invoke("isDate", iJSValue) == false) return null; int year = (int) ob.Invoke("getFullYear", null); int month = (int) ob.Invoke("getMonth", null) + 1; int day = (int) ob.Invoke("getDate", null); int hour = (int) ob.Invoke("getHours", null); int minute = (int) ob.Invoke("getMinutes", null); int second = (int) ob.Invoke("getSeconds", null); int millisecond = (int) ob.Invoke("getMilliseconds", null); return new DateTime(year, month, day, hour, minute, second, millisecond); }
private DateTime? GetDate(Awesomium_Core.JSValue iJSValue) { if (!iJSValue.IsObject) return null; Awesomium_Core.JSObject ob = iJSValue; if (ob == null) return null; Awesomium_Core.JSObject ko = _IWebView.ExecuteJavascriptWithResult("ko"); if ((bool)ko.Invoke("isDate", iJSValue) == false) return null; int year = (int)ob.Invoke("getFullYear", null); int month = (int)ob.Invoke("getMonth", null) + 1; int day = (int)ob.Invoke("getDate", null); int hour = (int)ob.Invoke("getHours",null); int minute = (int)ob.Invoke("getMinutes",null); int second = (int)ob.Invoke("getSeconds",null); int millisecond = (int)ob.Invoke("getMilliseconds",null); return new DateTime(year, month, day, hour, minute, second, millisecond); }
public AwesomiumJavascriptObjectConverter(Awesomium_Core.IWebView webView) { _WebView = webView; }