/// <summary> /// Creates a new instance of the <see cref="LayerPropertyKeyframe{T}" /> class /// </summary> /// <param name="value">The value of the keyframe</param> /// <param name="position">The position of this keyframe in the timeline</param> /// <param name="easingFunction">The easing function applied on the value of the keyframe</param> /// <param name="layerProperty">The layer property this keyframe is applied to</param> public LayerPropertyKeyframe(T value, TimeSpan position, Easings.Functions easingFunction, LayerProperty <T> layerProperty) { _position = position; Value = value; LayerProperty = layerProperty; EasingFunction = easingFunction; }
internal DataBinding(LayerProperty <TLayerProperty> layerProperty, DataBindingEntity entity) { LayerProperty = layerProperty; Entity = entity; // Load will add children so be initialized before that Load(); ApplyDataBindingMode(); }
internal DataBindingRegistration(LayerProperty <TLayerProperty> layerProperty, DataBindingConverter <TLayerProperty, TProperty> converter, Func <TProperty> getter, Action <TProperty> setter, string displayName) { LayerProperty = layerProperty ?? throw new ArgumentNullException(nameof(layerProperty)); Converter = converter ?? throw new ArgumentNullException(nameof(converter)); Getter = getter ?? throw new ArgumentNullException(nameof(getter)); Setter = setter ?? throw new ArgumentNullException(nameof(setter)); DisplayName = displayName ?? throw new ArgumentNullException(nameof(displayName)); }
/// <inheritdoc /> public void ClearDataBinding() { if (DataBinding == null) { return; } // The related entity is left behind, just in case the data binding is added back later LayerProperty.DisableDataBinding(DataBinding); }
internal DataBindingRegistration(LayerProperty <TLayerProperty> layerProperty, DataBindingConverter <TLayerProperty, TProperty> converter, Expression <Func <TLayerProperty, TProperty> > propertyExpression) { LayerProperty = layerProperty ?? throw new ArgumentNullException(nameof(layerProperty)); Converter = converter ?? throw new ArgumentNullException(nameof(converter)); PropertyExpression = propertyExpression ?? throw new ArgumentNullException(nameof(propertyExpression)); if (propertyExpression.Body is MemberExpression memberExpression) { Member = memberExpression.Member; } }
/// <inheritdoc /> public void Load() { if (_disposed) { throw new ObjectDisposedException("DataBinding"); } // General DataBindingRegistration <TLayerProperty, TProperty> registration = LayerProperty.GetDataBindingRegistration <TProperty>(Entity.TargetExpression); if (registration != null) { ApplyRegistration(registration); } EasingTime = Entity.EasingTime; EasingFunction = (Easings.Functions)Entity.EasingFunction; DataBindingMode?.Load(); }
public LayerPropertyEventArgs(LayerProperty <T> layerProperty) { LayerProperty = layerProperty; }