public ValueAnimatedDataChange <TValueType> Build(VisualElement element, TValueType oldValue, TValueType newValue) { var valueAnimatedDataChange = new ValueAnimatedDataChange <TValueType>(element, _duration); _actions?.Invoke(oldValue, newValue, valueAnimatedDataChange); return(valueAnimatedDataChange); }
public void Start() { Debug.Assert(_started == false, "Animation can only be started once!"); _started = true; var valueAnimatedDataChange = new ValueAnimatedDataChange <TValueType>(_element, _duration); _actions?.Invoke(_from, _to, valueAnimatedDataChange); valueAnimatedDataChange.Initialize(_accessor, _element, _from, _to); _element.GetOrCreateDataBinding().RegisterAnimation(_accessor, valueAnimatedDataChange); }