示例#1
0
 private static bool IsContained(MusicFile musicFile, string searchText)
 {
     return(MusicTitleHelper.GetTitleText(musicFile.FileName, musicFile.IsMetadataLoaded ? musicFile.Metadata.Artists : null, musicFile.IsMetadataLoaded ? musicFile.Metadata.Title : null)
            .IndexOf(searchText, StringComparison.CurrentCultureIgnoreCase) >= 0 ||
            musicFile.IsMetadataLoaded &&
            (musicFile.Metadata.Artists.Any(y => y.IndexOf(searchText, StringComparison.CurrentCultureIgnoreCase) >= 0)));
 }
示例#2
0
        private static int TitleColumnComparison(MusicFileDataModel x, MusicFileDataModel y)
        {
            var titleX = MusicTitleHelper.GetTitleText(x.MusicFile.FileName,
                                                       x.MusicFile.IsMetadataLoaded ? x.MusicFile.Metadata.Artists : null, x.MusicFile.IsMetadataLoaded ? x.MusicFile.Metadata.Title : null);
            var titleY = MusicTitleHelper.GetTitleText(y.MusicFile.FileName,
                                                       y.MusicFile.IsMetadataLoaded ? y.MusicFile.Metadata.Artists : null, y.MusicFile.IsMetadataLoaded ? y.MusicFile.Metadata.Title : null);

            return(string.Compare(titleX, titleY, StringComparison.CurrentCulture));
        }
示例#3
0
        public void GetTitleTextTest()
        {
            var fileName = @"C:\Users\Public\Music\Dancefloor\Culture Beat - Serenity.mp3";

            Assert.AreEqual("Culture Beat - Serenity", MusicTitleHelper.GetTitleText(fileName, new string[0], null));
            Assert.AreEqual("Culture Beat - Serenity", MusicTitleHelper.GetTitleText(fileName, new string[0], ""));

            Assert.AreEqual("", MusicTitleHelper.GetTitleText(fileName, new[] { "Culture Beat" }, null));
            Assert.AreEqual("", MusicTitleHelper.GetTitleText(fileName, new[] { "Culture Beat" }, ""));

            Assert.AreEqual("Serenity (Epilog)", MusicTitleHelper.GetTitleText(fileName, new[] { "Culture Beat" }, "Serenity (Epilog)"));
        }
示例#4
0
        public object Convert(object[] values, Type targetType, object parameter, CultureInfo culture)
        {
            if (values.First() == DependencyProperty.UnsetValue)
            {
                return(DependencyProperty.UnsetValue);
            }

            var fileName = (string)values[0];
            var artists  = values[1] as IEnumerable <string>;
            var title    = values[2] as string;

            return(MusicTitleHelper.GetTitleText(fileName, artists, title));
        }