// -------------------------------------------------------------------------------------------------------------------- // // This file is part of the HandBrake source code - It may be used under the terms of the GNU General Public License. // // // Subtitle Queue Display Converter // // -------------------------------------------------------------------------------------------------------------------- namespace HandBrakeWPF.Converters.Subtitles { using System; using System.Collections.ObjectModel; using System.Globalization; using System.Text; using System.Windows.Data; using SubtitleTrack = HandBrakeWPF.Services.Encode.Model.Models.SubtitleTrack; /// /// Subtitle Queue Display Converter /// public class SubtitlesQueueDisplayConverter : 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) { ObservableCollection tracks = value as ObservableCollection; StringBuilder sutitleTracks = new StringBuilder(); if (tracks != null) { foreach (SubtitleTrack track in tracks) { string text = track.SourceTrack != null ? track.SourceTrack.ToString() : (track.SrtFileName + ".srt"); sutitleTracks.AppendLine(text); } } return string.IsNullOrEmpty(sutitleTracks.ToString()) ? "None" : sutitleTracks.ToString().Trim(); } /// /// 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(); } } }