internal JavascriptSessionInjector(IWebView iWebView, IJSOBuilder iGlobalBuilder, IJavascriptListener iJavascriptListener) { _IWebView = iWebView; _GlobalBuilder = iGlobalBuilder; _IJavascriptListener = iJavascriptListener; if (_IJavascriptListener != null) { _Listener = _GlobalBuilder.CreateJSO(); _Listener.Bind("TrackChanges", false, (o, e) => _IJavascriptListener.OnJavaScriptObjectChanges((JSObject)e.Arguments[0], (string)e.Arguments[1], e.Arguments[2])); _Listener.Bind("TrackCollectionChanges", false, (o, e) => _IJavascriptListener.OnJavaScriptCollectionChanges((JSObject)e.Arguments[0], (JSValue[])e.Arguments[1], (JSValue[])e.Arguments[2], (JSValue[])e.Arguments[3])); } else _Listener = new JSObject(); }
public JSCommand(IJSOBuilder builder, ICommand icValue) { _Command = icValue; bool canexecute = true; try { canexecute = _Command.CanExecute(null); } catch { } JSObject res = builder.CreateJSO(); res["CanExecuteValue"] = new JSValue(canexecute); res["CanExecuteCount"] = new JSValue(_Count); JSValue = res; }
internal JavascriptSessionInjector(CefV8CompleteContext iWebView, IJSOBuilder iGlobalBuilder, IJavascriptListener iJavascriptListener) { _CefV8Context = iWebView; _GlobalBuilder = iGlobalBuilder; _IJavascriptListener = iJavascriptListener; if (_IJavascriptListener != null) { _Listener = _GlobalBuilder.CreateJSO(); _Listener.Bind("TrackChanges",_CefV8Context, (c, o, e) => _IJavascriptListener.OnJavaScriptObjectChanges(e[0], e[1].GetStringValue(), e[2])); _Listener.Bind("TrackCollectionChanges", _CefV8Context, (c, o, e) => _IJavascriptListener.OnJavaScriptCollectionChanges(e[0], e[1].GetArrayElements(), e[2].GetArrayElements(), e[3].GetArrayElements())); } else _Listener = _GlobalBuilder.CreateJSO(); }
internal BidirectionalMapper(object iRoot, IWebView iwebview, JavascriptBindingMode iMode, object iadd) { _IWebView = iwebview; _LocalBuilder = new LocalBuilder(iwebview); _JSObjectBuilder = new CSharpToJavascriptMapper(_LocalBuilder, this); _JavascriptToCSharpMapper = new JavascriptToCSharpMapper(iwebview); _Root = _JSObjectBuilder.Map(iRoot, iadd); _UnrootedEntities = new List<IJSCSGlue>(); _BindingMode = iMode; IJavascriptListener JavascriptObjecChanges = null; if (iMode == JavascriptBindingMode.TwoWay) JavascriptObjecChanges = this; _GlobalBuilder = new GlobalBuilder(_IWebView, "MVVMGlue"); _SessionInjector = new JavascriptSessionInjector(iwebview, _GlobalBuilder, JavascriptObjecChanges); }
internal JavascriptSessionInjector(IWebView iWebView, IJSOBuilder iGlobalBuilder, IJavascriptListener iJavascriptListener) { _IWebView = iWebView; _GlobalBuilder = iGlobalBuilder; _IJavascriptListener = iJavascriptListener; if (_IJavascriptListener != null) { _Listener = _GlobalBuilder.CreateJSO(); _Listener.Bind("TrackChanges", false, (o, e) => _IJavascriptListener.OnJavaScriptObjectChanges((JSObject)e.Arguments[0], (string)e.Arguments[1], e.Arguments[2])); _Listener.Bind("TrackCollectionChanges", false, (o, e) => _IJavascriptListener.OnJavaScriptCollectionChanges((JSObject)e.Arguments[0], (JSValue[])e.Arguments[1], (JSValue[])e.Arguments[2], (JSValue[])e.Arguments[3])); } else { _Listener = new JSObject(); } }
internal BidirectionalMapper(object iRoot, IWebView iwebview, JavascriptBindingMode iMode, object iadd) { _IWebView = iwebview; _LocalBuilder = new LocalBuilder(iwebview); _JSObjectBuilder = new CSharpToJavascriptMapper(_LocalBuilder, this); _JavascriptToCSharpMapper = new JavascriptToCSharpMapper(iwebview); _Root = _JSObjectBuilder.Map(iRoot, iadd); _UnrootedEntities = new List <IJSCSGlue>(); _BindingMode = iMode; IJavascriptListener JavascriptObjecChanges = null; if (iMode == JavascriptBindingMode.TwoWay) { JavascriptObjecChanges = this; } _GlobalBuilder = new GlobalBuilder(_IWebView, "MVVMGlue"); _SessionInjector = new JavascriptSessionInjector(iwebview, _GlobalBuilder, JavascriptObjecChanges); }
public JSCommand(CefV8CompleteContext iCefV8Context, IJSOBuilder builder, ICommand icValue) { _CefV8Context = iCefV8Context; _Command = icValue; bool canexecute = true; try { canexecute = _Command.CanExecute(null); } catch { } JSValue = _CefV8Context.Evaluate(() => { //_CefV8Context.Enter(); CefV8Value res = builder.CreateJSO(); res.SetValue("CanExecuteValue", CefV8Value.CreateBool(canexecute),CefV8PropertyAttribute.None); res.SetValue("CanExecuteCount", CefV8Value.CreateInt(_Count), CefV8PropertyAttribute.None); //_CefV8Context.Exit(); return res; }); //.Result; }
public JSResultCommand(CefV8CompleteContext ijsobject, IJSOBuilder builder, IResultCommand icValue) { _CefV8Context = ijsobject; _JSResultCommand = icValue; JSValue = builder.CreateJSO(); }
public JSSimpleCommand(IJSOBuilder builder, ISimpleCommand icValue) { _JSSimpleCommand = icValue; JSValue = builder.CreateJSO(); }
public JSSimpleCommand(CefV8CompleteContext iCefV8Context, IJSOBuilder builder, ISimpleCommand icValue) { _CefV8Context = iCefV8Context; _JSSimpleCommand = icValue; JSValue = builder.CreateJSO(); }
public JSResultCommand(IJSOBuilder builder, IResultCommand icValue) { _JSResultCommand = icValue; JSValue = builder.CreateJSO(); }