Forge
csharpdeeb25a2
1using System.Text;
2using CascadeIDE.Features.UiChrome;
3
4namespace CascadeIDE.ViewModels;
5
6/// <summary>Документы / dock.</summary>
7public partial class MainWindowViewModel
8{
9 /// <summary>LOC для task cockpit: непустые строки текущего файла на диске (как <c>get_code_metrics</c> <c>loc</c>), при смене документа.</summary>
10 private void RefreshLocBadgeFromCurrentFile()
11 {
12 try
13 {
14 if (string.IsNullOrEmpty(CurrentFilePath) || !File.Exists(CurrentFilePath))
15 {
16 LocBadge = 0;
17 LocTierLabel = "";
18 return;
19 }
20
21 var text = File.ReadAllText(CurrentFilePath, Encoding.UTF8);
22 var n = SourceLineMetrics.CountNonEmptyLines(text);
23 LocBadge = n;
24 LocTierLabel = n > 0 ? LocLimitsRuntime.TierFor(n).ToString() : "";
25 }
26 catch
27 {
28 LocBadge = 0;
29 LocTierLabel = "";
30 }
31 }
32}
33
View only · write via MCP/CIDE