public void ParseEmpty() { var format = ""; var r = new FormattedTextRenderer(format, Color.Black, 8.5f, "Arial", TextAlignment.Left); Assert.AreEqual(0, r.Chunks.Count); }
public void ParseOnlyClosing() { var format = "}"; var r = new FormattedTextRenderer(format, Color.Black, 8.5f, "Arial", TextAlignment.Left); Assert.AreEqual(1, r.Chunks.Count); Assert.AreEqual("}", r.Chunks[0].Text); Assert.IsTrue(r.Chunks[0].Type.HasFlag(FormattedTextRenderer.TextFormat.Normal)); }
public void ParseUnclosed() { var format = "{artist"; var r = new FormattedTextRenderer(format, Color.Black, 8.5f, "Arial", CustomLabel.TextAlignment.Left); Assert.AreEqual(1, r.Chunks.Count); Assert.AreEqual("{artist", r.Chunks[0].Text); Assert.IsTrue(r.Chunks[0].Type.HasFlag(FormattedTextRenderer.TextFormat.Normal)); }
public void ParseInvalidFormat() { var format = "{something}"; var r = new FormattedTextRenderer(format, Color.Black, 8.5f, "Arial", TextAlignment.Left); Assert.AreEqual(1, r.Chunks.Count); Assert.AreEqual("! invalid format !", r.Chunks[0].Text); Assert.IsTrue(r.Chunks[0].Type.HasFlag(FormattedTextRenderer.TextFormat.Normal)); }
public void ParseSinglePlaceholder() { var format = "{artist}"; var artist = "123"; var r = new FormattedTextRenderer(format, Color.Black, 8.5f, "Arial", TextAlignment.Left) { Artist = artist }; Assert.AreEqual(1, r.Chunks.Count); Assert.AreEqual(artist, r.Chunks[0].Text); Assert.IsTrue(r.Chunks[0].Type.HasFlag(FormattedTextRenderer.TextFormat.Artist)); }
public void ParseLength() { var format = "{length}"; var time = TimeSpan.FromSeconds(80); var r = new FormattedTextRenderer(format, Color.Black, 8.5f, "Arial", TextAlignment.Left) { SongLength = time, }; Assert.AreEqual(1, r.Chunks.Count); Assert.AreEqual("1:20", r.Chunks[0].Text); Assert.IsTrue(r.Chunks[0].Type.HasFlag(FormattedTextRenderer.TextFormat.SongLength)); }
public void ParseTime() { var format = "{time}"; var time = TimeSpan.FromSeconds(40); var r = new FormattedTextRenderer(format, Color.Black, 8.5f, "Arial", TextAlignment.Left) { SongProgress = time, }; Assert.AreEqual(1, r.Chunks.Count); Assert.AreEqual("0:40", r.Chunks[0].Text); Assert.IsTrue(r.Chunks[0].Type.HasFlag(FormattedTextRenderer.TextFormat.CurrentTime)); }
public void ParseAlbum() { var format = "{album}"; var album = "the album"; var r = new FormattedTextRenderer(format, Color.Black, 8.5f, "Arial", TextAlignment.Left) { AlbumName = album }; Assert.AreEqual(1, r.Chunks.Count); Assert.AreEqual(album, r.Chunks[0].Text); Assert.IsTrue(r.Chunks[0].Type.HasFlag(FormattedTextRenderer.TextFormat.Album)); }
public void ParseSong() { var format = "{song}"; var song = "the song"; var r = new FormattedTextRenderer(format, Color.Black, 8.5f, "Arial", TextAlignment.Left) { SongName = song }; Assert.AreEqual(1, r.Chunks.Count); Assert.AreEqual(song, r.Chunks[0].Text); Assert.IsTrue(r.Chunks[0].Type.HasFlag(FormattedTextRenderer.TextFormat.Song)); }
public static void DrawPlainText(Graphics g, string s, Font font, Color color, int x, int x1, ref int y, int height) { if (s == null) { return; } using (var r = new FormattedTextRenderer()) { r.WordWrapEnabled = false; r.UseGDIRenderer = false; r.DrawPlainText(g, s, font, color, x, x1, ref y, height); } }
public void ParseStyleUnderline() { var format = "{_artist}"; var artist = "123"; var r = new FormattedTextRenderer(format, Color.Black, 8.5f, "Arial", CustomLabel.TextAlignment.Left) { Artist = artist }; Assert.AreEqual(1, r.Chunks.Count); Assert.AreEqual(artist, r.Chunks[0].Text); Assert.IsTrue(r.Chunks[0].Type.HasFlag(FormattedTextRenderer.TextFormat.Artist)); Assert.IsTrue(r.Chunks[0].Type.HasFlag(FormattedTextRenderer.TextFormat.Underline)); }
public void ParseStyleWithColor() { var format = "{_artist:#ff00ff}"; var artist = "123"; var r = new FormattedTextRenderer(format, Color.Black, 8.5f, "Arial", TextAlignment.Left) { Artist = artist }; Assert.AreEqual(1, r.Chunks.Count); Assert.AreEqual(artist, r.Chunks[0].Text); Assert.IsTrue(r.Chunks[0].Type.HasFlag(FormattedTextRenderer.TextFormat.Artist)); Assert.IsTrue(r.Chunks[0].Type.HasFlag(FormattedTextRenderer.TextFormat.Underline)); Assert.AreEqual(ColorTranslator.FromHtml("#ff00ff"), r.Chunks[0].Color); }
public void ParsePlaceholderWithNormal() { var format = "{artist} song"; var artist = "123"; var r = new FormattedTextRenderer(format, Color.Black, 8.5f, "Arial", CustomLabel.TextAlignment.Left) { Artist = artist }; Assert.AreEqual(2, r.Chunks.Count); Assert.AreEqual(artist, r.Chunks[0].Text); Assert.IsTrue(r.Chunks[0].Type.HasFlag(FormattedTextRenderer.TextFormat.Artist)); Assert.AreEqual(" song", r.Chunks[1].Text); Assert.IsTrue(r.Chunks[1].Type.HasFlag(FormattedTextRenderer.TextFormat.Normal)); }
public void ParseComplex() { var format = "this is {artist} and "; var artist = "123"; var r = new FormattedTextRenderer(format, Color.Black, 8.5f, "Arial", TextAlignment.Left) { Artist = artist }; Assert.AreEqual(3, r.Chunks.Count); Assert.AreEqual("this is ", r.Chunks[0].Text); Assert.IsTrue(r.Chunks[0].Type.HasFlag(FormattedTextRenderer.TextFormat.Normal)); Assert.AreEqual(artist, r.Chunks[1].Text); Assert.IsTrue(r.Chunks[1].Type.HasFlag(FormattedTextRenderer.TextFormat.Artist)); Assert.AreEqual(" and ", r.Chunks[2].Text); Assert.IsTrue(r.Chunks[2].Type.HasFlag(FormattedTextRenderer.TextFormat.Normal)); }