private BridgeUpdater GetBridgeUpdater(JsArray array) { switch (_Change.Action) { case NotifyCollectionChangedAction.Add: _NewJsValue = _JsUpdateHelper.Map(_Change.NewItems[0]); if (_NewJsValue == null) { return(null); } return(array.GetAddUpdater(_NewJsValue, _Change.NewStartingIndex)); case NotifyCollectionChangedAction.Replace: _NewJsValue = _JsUpdateHelper.Map(_Change.NewItems[0]); if (_NewJsValue == null) { return(null); } return(array.GetReplaceUpdater(_NewJsValue, _Change.NewStartingIndex)); case NotifyCollectionChangedAction.Remove: return(array.GetRemoveUpdater(_Change.OldStartingIndex)); case NotifyCollectionChangedAction.Reset: return(array.GetResetUpdater());; case NotifyCollectionChangedAction.Move: return(array.GetMoveUpdater(_Change.OldStartingIndex, _Change.NewStartingIndex)); default: return(null); } }
private Tuple <BridgeUpdater, List <IJsCsGlue> > GetBridgeUpdater(JsArray array) { switch (_Change.Action) { case NotifyCollectionChangedAction.Add: return(GetUpdater(array.GetAddUpdater, array.GetAddUpdater)); case NotifyCollectionChangedAction.Replace: return(GetUpdater(array.GetReplaceUpdater, array.GetReplaceUpdater)); case NotifyCollectionChangedAction.Remove: return(FromBridge(array.GetRemoveUpdater(_Change.OldStartingIndex, _Change.OldItems.Count))); case NotifyCollectionChangedAction.Reset: return(FromBridge(array.GetResetUpdater())); case NotifyCollectionChangedAction.Move: return(FromBridge(array.GetMoveUpdater(_Change.OldStartingIndex, _Change.NewStartingIndex))); default: return(null); } }