// -------------------------------------------------------------------------------------------------------------------- // // This file is part of the HandBrake source code - It may be used under the terms of the GNU General Public License. // // // Defines the AdvancedVisibilityConverter type. // // -------------------------------------------------------------------------------------------------------------------- namespace HandBrakeWPF.Converters { using System; using System.Globalization; using System.Windows; using System.Windows.Data; /// /// The advanced visibility converter. /// [Obsolete("This will be refactored out soon! Don't use.")] public class AdvancedVisibilityConverter : IValueConverter { #region Implemented Interfaces #region IValueConverter /// /// The convert. /// /// /// The value. /// /// /// The target type. /// /// /// The parameter. /// /// /// The culture. /// /// /// The Visibility Result /// public object Convert(object value, Type targetType, object parameter, CultureInfo culture) { bool visibility = (bool)value; // If we are given a parameter, reverse it if (parameter != null) { visibility = !visibility; } return visibility ? Visibility.Visible : Visibility.Collapsed; } /// /// The convert back. /// /// /// The value. /// /// /// The target type. /// /// /// The parameter. /// /// /// The culture. /// /// /// The Visibility Result /// public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) { Visibility visibility = (Visibility)value; bool result = visibility == Visibility.Visible; if (parameter != null) { result = !result; } return result; } #endregion #endregion } }