Exemple #1
0
        [TestCase(3081, "hello", null)]               // English
        public void TestCreateTimeTag(int lcid, string text, string[] actualTimeTag)
        {
            var lyric = new Lyric
            {
                Language = new CultureInfo(lcid),
                Text     = text,
            };
            var selector          = new TimeTagGeneratorSelector();
            var generatedTimeTags = selector.GenerateTimeTags(lyric);

            TimeTagAssert.AreEqual(generatedTimeTags, TestCaseTagHelper.ParseTimeTags(actualTimeTag));
        }
Exemple #2
0
        /// <summary>
        /// Will auto-detect each <see cref="Lyric"/> 's <see cref="Lyric.TimeTags"/> and apply on them.
        /// </summary>
        public void AutoGenerateTimeTags()
        {
            var lyrics = beatmap.HitObjects.OfType <Lyric>().ToList();

            if (!lyrics.Any())
            {
                return;
            }

            changeHandler?.BeginChange();

            var selector = new TimeTagGeneratorSelector();

            foreach (var lyric in lyrics)
            {
                var timeTags = selector.GenerateTimeTags(lyric);
                lyric.TimeTags = timeTags;
            }

            changeHandler?.EndChange();
        }