Ejemplo n.º 1
0
        public CommandJavascriptUiContextUpdater(IJsUpdateHelper jsUpdateHelper, object command)
        {
            _Command        = command;
            _JsUpdateHelper = jsUpdateHelper;

            if (_Command == null)
            {
                return;
            }

            _JsCommandBase = _JsUpdateHelper.GetCached <JsCommandBase>(_Command);
            _UpdateCount   = _JsCommandBase?.NextUpdateCount ?? 0;
        }
Ejemplo n.º 2
0
        internal BidirectionalMapper(object root, HtmlViewEngine contextBuilder, IGlueFactory glueFactory,
                                     IJavascriptObjectBuilderStrategyFactory strategyFactory, JavascriptBindingMode mode, IWebSessionLogger logger)
        {
            _BuilderStrategyFactory = strategyFactory ?? new StandardStrategyFactory();
            Mode    = mode;
            _Logger = logger;
            var javascriptObjectChanges = (mode == JavascriptBindingMode.TwoWay) ? (IJavascriptChangesObserver)this : null;

            Context       = contextBuilder.GetMainContext(javascriptObjectChanges);
            _SessionCache = new SessionCacher();
            var jsUpdateHelper = new JsUpdateHelper(this, Context, () => _BuilderStrategy, _SessionCache);

            _ListenerUpdater = ListenToCSharp ? new ListenerUpdater(jsUpdateHelper) : null;
            glueFactory      = glueFactory ?? GlueFactoryFactory.GetFactory(Context, _SessionCache, this, _ListenerUpdater?.On);
            _JsObjectBuilder = new CSharpToJavascriptConverter(_SessionCache, glueFactory, _Logger);
            jsUpdateHelper.JsObjectBuilder = _JsObjectBuilder;
            _JsUpdateHelper = jsUpdateHelper;
            _RootObject     = root;

            _JsUpdateHelper.CheckUiContext();
            JsValueRoot = _JsObjectBuilder.Map(_RootObject);
            JsValueRoot.AddRef();
        }
 public CSharpUnrootedObjectManager(IJsUpdateHelper jsUpdateHelper, ICSharpToGlueMapper cSharpToGlueMapper)
 {
     _JsUpdateHelper     = jsUpdateHelper;
     _CSharpToGlueMapper = cSharpToGlueMapper;
 }
Ejemplo n.º 4
0
 internal void ComputeGlues(IJsUpdateHelper mapper)
 {
     IndividualChanges.ForEach(change => change.ComputeGlue(mapper));
 }
 public JavascriptToGlueMapper(IJsUpdateHelper jsUpdateHelper, ISessionCache sessionCache)
 {
     _JsUpdateHelper = jsUpdateHelper;
     _SessionCache   = sessionCache;
 }
Ejemplo n.º 6
0
 internal PropertyJavascriptUiContextUpdater(IJsUpdateHelper jsUpdateHelper, object sender, string propertyName)
 {
     _JsUpdateHelper = jsUpdateHelper;
     _Sender         = sender;
     _PropertyName   = propertyName;
 }
Ejemplo n.º 7
0
 public PropertyJsContextUpdater(IJsUpdateHelper jsUpdateHelper, BridgeUpdater bridgeUpdater, IJsCsGlue newJsValue)
 {
     _BridgeUpdater  = bridgeUpdater;
     _NewJsValue     = newJsValue;
     _JsUpdateHelper = jsUpdateHelper;
 }
 public JavascriptListenerCSharpUpdater(ICSharpChangesListener cSharpChangesListener, IJsUpdateHelper jsUpdateHelper, IJavascriptToGlueMapper javascriptToGlueMapper)
 {
     _CSharpChangesListener  = cSharpChangesListener;
     _JsUpdateHelper         = jsUpdateHelper;
     _JavascriptToGlueMapper = javascriptToGlueMapper;
 }
Ejemplo n.º 9
0
 public IJsCsGlue Map(IJsUpdateHelper helper) => _Glue;
 public CollectionsContextUpdater(IJsUpdateHelper jsUpdateHelper, BridgeUpdater bridgeUpdater, List <IJsCsGlue> newJsValues)
 {
     _BridgeUpdater  = bridgeUpdater;
     _NewJsValues    = newJsValues;
     _JsUpdateHelper = jsUpdateHelper;
 }
 public CollectionJavascriptUiContextUpdater(IJsUpdateHelper jsUpdateHelper, object sender, NotifyCollectionChangedEventArgs change)
 {
     _JsUpdateHelper = jsUpdateHelper;
     _Sender         = sender;
     _Change         = change;
 }
Ejemplo n.º 12
0
 internal PropertyJavascriptUpdater(IJsUpdateHelper jsUpdateHelper, object sender, PropertyChangedEventArgs e)
 {
     _JsUpdateHelper = jsUpdateHelper;
     _Sender         = sender;
     _PropertyName   = e.PropertyName;
 }
Ejemplo n.º 13
0
 internal void ComputeGlue(IJsUpdateHelper mapper)
 {
     Glue = Mapable.Map(mapper);
 }
Ejemplo n.º 14
0
 public IJsCsGlue Map(IJsUpdateHelper helper)
 {
     return(helper.MapJavascripObject(Source, _JavascriptObject));
 }