// -------------------------------------------------------------------------------------------------------------------- // // This file is part of the HandBrake source code - It may be used under the terms of the GNU General Public License. // // // The Options Tab Converter. Controls which tab is dispalyed. // // -------------------------------------------------------------------------------------------------------------------- namespace HandBrakeWPF.Converters.Options { using System; using System.Globalization; using System.Windows; using System.Windows.Data; using HandBrakeWPF.Model; /// /// The Options Tab Converter. Controls which tab is dispalyed. /// class OptionsTabConverter : IValueConverter { /// /// Converts a value. /// /// /// A converted value. If the method returns null, the valid null value is used. /// /// The value produced by the binding source.The type of the binding target property.The converter parameter to use.The culture to use in the converter. public object Convert(object value, Type targetType, object parameter, CultureInfo culture) { if (value != null && parameter != null) { switch ((OptionsTab)value) { case OptionsTab.General: if ((OptionsTab)parameter == OptionsTab.General) return Visibility.Visible; break; case OptionsTab.OutputFiles: if ((OptionsTab)parameter == OptionsTab.OutputFiles) return Visibility.Visible; break; case OptionsTab.Advanced: if ((OptionsTab)parameter == OptionsTab.Advanced) return Visibility.Visible; break; case OptionsTab.Updates: if ((OptionsTab)parameter == OptionsTab.Updates) return Visibility.Visible; break; case OptionsTab.About: if ((OptionsTab)parameter == OptionsTab.About) return Visibility.Visible; break; case OptionsTab.Video: if ((OptionsTab)parameter == OptionsTab.Video) return Visibility.Visible; break; } } return Visibility.Collapsed; } /// /// Converts a value. /// /// /// A converted value. If the method returns null, the valid null value is used. /// /// The value that is produced by the binding target.The type to convert to.The converter parameter to use.The culture to use in the converter. public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) { throw new NotImplementedException(); } } }