23 instantiations of TextCommand
Aspire.Tray.Tests (23)
src\Aspire.Tray\Common\TrayPanel.cs (23)
883sink.Add(new TextCommand(headerBounds, general ? "GENERAL" : "ABOUT", PanelFontRole.Section, palette.TextTertiary)); 1076commands.Add(new TextCommand(title, "Aspire", PanelFontRole.Title, palette.TextPrimary)); 1085commands.Add(new TextCommand(statusBounds, status, PanelFontRole.Body, palette.TextSecondary, ExplicitBaseline: HeaderBaseline)); 1102? new TextCommand(text, notice, PanelFontRole.Body, palette.BannerText) 1103: new TextCommand(text, notice, PanelFontRole.Body, palette.BannerText, MaxLines: 2)); 1125commands.Add(new TextCommand(titleBounds, title, PanelFontRole.Name, palette.TextPrimary, PanelTextAlignment.Center)); 1126commands.Add(new TextCommand(hintBounds, hint, PanelFontRole.Body, palette.TextSecondary, 1144commands.Add(new TextCommand(labelBounds, label, PanelFontRole.Section, palette.TextTertiary)); 1154commands.Add(new TextCommand(labelBounds, label, PanelFontRole.Section, palette.TextTertiary)); 1165commands.Add(new TextCommand(clear, "Clear", PanelFontRole.Body, palette.Accent, PanelTextAlignment.Center)); 1192commands.Add(new TextCommand(new(TextLeft, top + 8, textRight - TextLeft, 18), host.DisplayName, PanelFontRole.Name, palette.TextPrimary)); 1193commands.Add(new TextCommand(new(TextLeft, top + 27, textRight - TextLeft, 16), detail, PanelFontRole.Body, 1308commands.Add(new TextCommand(new(NestedTextLeft, item.Y, item.Right - 8 - NestedTextLeft, item.Height), label, 1323commands.Add(new TextCommand(new(TextLeft, item.Y, labelRight - TextLeft, item.Height), label, PanelFontRole.Body, palette.TextPrimary)); 1376commands.Add(new TextCommand(questionBounds, question, PanelFontRole.Name, palette.TextPrimary)); 1377commands.Add(new TextCommand(detailBounds, detail, PanelFontRole.Body, palette.TextSecondary, 1396commands.Add(new TextCommand(cancelBounds, "Cancel", PanelFontRole.Button, palette.TextPrimary, PanelTextAlignment.Center)); 1410commands.Add(new TextCommand(acceptBounds, accept, PanelFontRole.Button, palette.OnColor, PanelTextAlignment.Center)); 1423commands.Add(new TextCommand(title, TraySettingsText.PanelTitle, PanelFontRole.Title, palette.TextPrimary)); 1446commands.Add(new TextCommand(new(20, top + 8, textWidth, 20), title, PanelFontRole.Name, 1448commands.Add(new TextCommand(new(20, top + 28, textWidth, 30), description, PanelFontRole.Body, 1457commands.Add(new TextCommand(name, "Aspire Tray", PanelFontRole.Name, palette.TextPrimary)); 1467commands.Add(new TextCommand(bounds, line, PanelFontRole.Body, palette.TextSecondary, Truncation: PanelTruncation.Middle));
31 references to TextCommand
Aspire.Tray.Tests (31)
Helpers\TrayPanelSvgRenderer.cs (4)
60case TextCommand text: 148foreach (var text in scene.Commands.OfType<TextCommand>().Where(text => text.MaxLines == 1)) 170private static XElement RenderText(TextCommand text)
src\Aspire.Tray\Common\TrayPanelSceneJson.cs (2)
49foreach (var text in scene.Commands.OfType<TextCommand>())
src\Aspire.Tray\Linux\LinuxTrayPanel.cs (2)
650case TextCommand text: 679private void RenderText(nint context, TextCommand text)
TrayPanelTests.cs (23)
114var texts = scene.Commands.OfType<TextCommand>().ToList(); 136Assert.Contains(scene.Commands.OfType<TextCommand>(), text => text.Text == "RECENT · 2"); 160Assert.Contains(panel.Scene.Commands.OfType<TextCommand>(), text => text.Text == "No AppHosts running"); 206panel.Scene.Commands.OfType<TextCommand>().Where(text => text.Bounds.Y >= items[0].Bounds.Y && text.Bounds.Bottom <= items[^1].Bounds.Bottom) 238Assert.Contains(panel.Scene.Commands.OfType<TextCommand>(), text => text.Text == "Show in File Explorer"); 636var texts = panel.Scene.Commands.OfType<TextCommand>().Select(text => text.Text).ToList(); 657Assert.Contains(panel.Scene.Commands.OfType<TextCommand>(), text => text.Text == missing.Id.AppHostPath); 683var texts = panel.Scene.Commands.OfType<TextCommand>().Select(text => text.Text).ToList(); 701Assert.Contains(panel.Scene.Commands.OfType<TextCommand>(), text => text.Text == TraySettingsText.StableNativeInstallationRequired); 713Assert.Contains(panel.Scene.Commands.OfType<TextCommand>(), 831Assert.Contains(scene.Commands.OfType<TextCommand>(), text => text.Text == $"Unhealthy · {location} · PID 48213"); 864foreach (var text in scene.Commands.OfType<TextCommand>().Where(text => text.MaxLines == 1)) 944var title = scene.Commands.OfType<TextCommand>().Single(text => text.Text == "Aspire"); 945var status = scene.Commands.OfType<TextCommand>().Single(text => text.ExplicitBaseline is not null); 985var header = scene.Commands.OfType<TextCommand>().Where(text => text.Bounds.Bottom <= TrayPanel.HeaderHeight).ToList(); 1015Assert.Contains(withNotice.Scene.Commands.OfType<TextCommand>(), text => text.Text.StartsWith("Unable to save", StringComparison.Ordinal)); 1131var label = Assert.Single(panel.Scene.Commands.OfType<TextCommand>(), text => text.Bounds == accept.Bounds); 1239Assert.All(scene.Commands.OfType<TextCommand>().Where(text => text.Color != palette.Accent), 1456Assert.DoesNotContain(scene.Commands.OfType<TextCommand>(), text => text.Text == "Documentation");