public void AddFilter(FilterBase filter) { if (AppliedFilters.Contains(filter)) { return; } filter.IsFilterEnabled = true; AppliedFilters.Add(filter); if (FilterAdded != null) { var evt = new AddFilterEventArgs(); evt.Filter = filter; FilterAdded(this, evt); } if (FilterCountChanged != null) { FilterCountChanged(this, null); } }
public void DeleteFilter(FilterBase filter) { if (!AppliedFilters.Contains(filter)) { return; } AppliedFilters.Remove(filter); if (FilterCountChanged != null) { FilterCountChanged(this, null); } PerformInvalidatePreview(); }
private void ShowFilterOSD(FilterBase filter) { FilterContainerView.Filter = filter; TranslateTransform tf = (TranslateTransform)FilterGalleryView.RenderTransform; tf.Y = FilterContainerView.Height; FilterContainerView.Visibility = Visibility.Visible; Storyboard sb = new Storyboard(); sb.Duration = new Duration(TimeSpan.FromSeconds(0.3)); DoubleAnimation yAnimation = new DoubleAnimation(); yAnimation.Duration = sb.Duration; yAnimation.To = 0; yAnimation.EasingFunction = new CubicEase() { EasingMode = EasingMode.EaseOut }; Storyboard.SetTarget(yAnimation, FilterContainerView); Storyboard.SetTargetProperty(yAnimation, new PropertyPath("(UIElement.RenderTransform).(TranslateTransform.Y)")); sb.Children.Add(yAnimation); sb.Begin(); sb.Completed += (sender, e) => { filter.OnFilterUIAdded(); }; }