From 6ef9a2ccb792993008c26cba120d6883ebcbec2b Mon Sep 17 00:00:00 2001 From: John Maxwell Date: Wed, 22 Jul 2026 11:39:26 -0700 Subject: [PATCH 1/4] Fix LT-22632: Show # of changed analyses in Run Tests report --- .../ParserCoreTests/ParserReportTests.cs | 23 ++++---- Src/LexText/ParserCore/ParserReport.cs | 56 ++++++++++++++++++- Src/LexText/ParserUI/ParserReportDialog.xaml | 11 ++++ Src/LexText/ParserUI/ParserUI.csproj | 2 +- .../ParserUI/ParserUIStrings.Designer.cs | 36 ++++++++++++ Src/LexText/ParserUI/ParserUIStrings.resx | 12 ++++ 6 files changed, 128 insertions(+), 12 deletions(-) diff --git a/Src/LexText/ParserCore/ParserCoreTests/ParserReportTests.cs b/Src/LexText/ParserCore/ParserCoreTests/ParserReportTests.cs index 5489a0e92e..27cb4c6b61 100644 --- a/Src/LexText/ParserCore/ParserCoreTests/ParserReportTests.cs +++ b/Src/LexText/ParserCore/ParserCoreTests/ParserReportTests.cs @@ -52,10 +52,11 @@ private IWfiAnalysis CreateIWfiAnalysis(IWfiWordform wordform, List return newAnal; } - private void CheckParseReport(ParseReport report, int numAnalyses = 0, int numApprovedMissing = 0, + private void CheckParseReport(ParseReport report, int numAnalyses = 0, int numChangedAnalyses = 0, int numApprovedMissing = 0, int numDisapproved = 0, int numNoOpinion = 0, int parseTime = 0, string errorMessage = null) { Assert.That(report.NumAnalyses, Is.EqualTo(numAnalyses)); + Assert.That(report.NumChangedAnalyses, Is.EqualTo(numChangedAnalyses)); Assert.That(report.NumUserDisapprovedAnalyses, Is.EqualTo(numDisapproved)); Assert.That(report.NumUserApprovedAnalysesMissing, Is.EqualTo(numApprovedMissing)); Assert.That(report.NumUserNoOpinionAnalyses, Is.EqualTo(numNoOpinion)); @@ -64,10 +65,11 @@ private void CheckParseReport(ParseReport report, int numAnalyses = 0, int numAp } private void CheckParserReport(ParserReport report, int numParseErrors = 0, int numWords = 0, - int numZeroParses = 0, int totalAnalyses = 0, int totalApprovedMissing = 0, + int numZeroParses = 0, int totalAnalyses = 0, int totalChangedAnalyses = 0, int totalApprovedMissing = 0, int totalDisapproved = 0, int totalNoOpinion = 0,int totalParseTime = 0) { Assert.That(report.TotalAnalyses, Is.EqualTo(totalAnalyses)); + Assert.That(report.TotalChangedAnalyses, Is.EqualTo(totalChangedAnalyses)); Assert.That(report.TotalUserDisapprovedAnalyses, Is.EqualTo(totalDisapproved)); Assert.That(report.TotalUserApprovedAnalysesMissing, Is.EqualTo(totalApprovedMissing)); Assert.That(report.TotalUserNoOpinionAnalyses, Is.EqualTo(totalNoOpinion)); @@ -164,6 +166,7 @@ public void TestAddParseResult() }); var analysis = CreateIWfiAnalysis(catWordform, new List {parseMorph}); analysis.SetAgentOpinion(Cache.LanguageProject.DefaultUserAgent, Opinions.approves); + analysis.SetAgentOpinion(Cache.LanguageProject.DefaultParserAgent, Opinions.approves); var analysisX = CreateIWfiAnalysis(catWordform, new List { parseMorph3 }); analysisX.SetAgentOpinion(Cache.LanguageProject.DefaultUserAgent, Opinions.disapproves); // Missing approved analyses. @@ -177,17 +180,17 @@ public void TestAddParseResult() }); var parseReport = new ParseReport(catWordform, result); - CheckParseReport(parseReport, numAnalyses: 4, numApprovedMissing: 3, numDisapproved: 1, numNoOpinion: 2, parseTime: 10); + CheckParseReport(parseReport, numAnalyses: 4, numChangedAnalyses: 2, numApprovedMissing: 3, numDisapproved: 1, numNoOpinion: 2, parseTime: 10); var errorResult = new ParseResult("error"){ ParseTime = 1 }; var errorReport = new ParseReport(catWordform, errorResult); - CheckParseReport(errorReport, numApprovedMissing: 4, parseTime: 1, errorMessage: "error"); + CheckParseReport(errorReport, numApprovedMissing: 4, numChangedAnalyses: 1, parseTime: 1, errorMessage: "error"); errorReport = new ParseReport(errorWordform, errorResult); CheckParseReport(errorReport, parseTime: 1, errorMessage: "error"); var zeroResult = new ParseResult(Enumerable.Empty()){ ParseTime = 2 }; var zeroReport = new ParseReport(catWordform, zeroResult); - CheckParseReport(zeroReport, numApprovedMissing: 4, parseTime: 2); + CheckParseReport(zeroReport, numApprovedMissing: 4, numChangedAnalyses: 1, parseTime: 2); zeroReport = new ParseReport(zeroWordform, zeroResult); CheckParseReport(zeroReport, parseTime: 2); @@ -198,7 +201,7 @@ public void TestAddParseResult() parserReport.AddParseReport("zero", zeroReport); Assert.That(parserReport.ParseReports.ContainsKey("cat"), Is.True); CheckParserReport(parserReport, numParseErrors: 1, numWords: 3, - numZeroParses: 2, totalAnalyses: 4, totalApprovedMissing: 3, + numZeroParses: 2, totalAnalyses: 4, totalChangedAnalyses: 2, totalApprovedMissing: 3, totalDisapproved: 1, totalNoOpinion: 2, totalParseTime: 13); // Check SubtractParseReport. @@ -206,28 +209,28 @@ public void TestAddParseResult() CheckParseReport(eeReport); var epReport = parseReport.DiffParseReport(errorReport); - CheckParseReport(epReport, numAnalyses: 4, numApprovedMissing: 3, + CheckParseReport(epReport, numAnalyses: 4, numChangedAnalyses: 2, numApprovedMissing: 3, numDisapproved: 1, numNoOpinion: 2, parseTime: 9, errorMessage: "error => "); var ezReport = errorReport.DiffParseReport(zeroReport); CheckParseReport(ezReport, parseTime: -1, errorMessage: " => error"); var peReport = errorReport.DiffParseReport(parseReport); - CheckParseReport(peReport, numAnalyses: -4, numApprovedMissing: -3, + CheckParseReport(peReport, numAnalyses: -4, numChangedAnalyses: -2, numApprovedMissing: -3, numDisapproved: -1, numNoOpinion: -2, parseTime: -9, errorMessage: " => error"); var ppReport = parseReport.DiffParseReport(parseReport); CheckParseReport(ppReport); var pzReport = zeroReport.DiffParseReport(parseReport); - CheckParseReport(pzReport, numAnalyses: -4, numApprovedMissing: -3, + CheckParseReport(pzReport, numAnalyses: -4, numChangedAnalyses: -2, numApprovedMissing: -3, numDisapproved: -1, numNoOpinion: -2, parseTime: -8); var zeReport = errorReport.DiffParseReport(zeroReport); CheckParseReport(zeReport, parseTime: -1, errorMessage: " => error"); var zpReport = parseReport.DiffParseReport(zeroReport); - CheckParseReport(zpReport, numAnalyses: 4, numApprovedMissing: 3, + CheckParseReport(zpReport, numAnalyses: 4, numChangedAnalyses: 2, numApprovedMissing: 3, numDisapproved: 1, numNoOpinion: 2, parseTime: 8); var zzReport = zeroReport.DiffParseReport(zeroReport); diff --git a/Src/LexText/ParserCore/ParserReport.cs b/Src/LexText/ParserCore/ParserReport.cs index a933a39e97..d51d9cffc5 100644 --- a/Src/LexText/ParserCore/ParserReport.cs +++ b/Src/LexText/ParserCore/ParserReport.cs @@ -85,6 +85,11 @@ public class ParserReport: IEquatable /// public int TotalUserNoOpinionAnalyses { get; set; } + /// + /// Total number of parse analyses that changed since the last parse + /// + public int TotalChangedAnalyses { get; set; } + /// /// Parse reports for each word /// @@ -132,6 +137,7 @@ public void AddParseReport(string word, ParseReport report) NumWords += 1; TotalParseTime += report.ParseTime; TotalAnalyses += report.NumAnalyses; + TotalChangedAnalyses += report.NumChangedAnalyses; TotalUserApprovedAnalysesMissing += report.NumUserApprovedAnalysesMissing; TotalUserDisapprovedAnalyses += report.NumUserDisapprovedAnalyses; TotalUserNoOpinionAnalyses += report.NumUserNoOpinionAnalyses; @@ -245,6 +251,7 @@ public ParserReport DiffParserReports(ParserReport other) diff.NumZeroParses = NumZeroParses - other.NumZeroParses; diff.TotalParseTime = TotalParseTime - other.TotalParseTime; diff.TotalAnalyses = TotalAnalyses - other.TotalAnalyses; + diff.TotalChangedAnalyses = TotalChangedAnalyses - other.TotalChangedAnalyses; diff.TotalUserApprovedAnalysesMissing = TotalUserApprovedAnalysesMissing - other.TotalUserApprovedAnalysesMissing; diff.TotalUserDisapprovedAnalyses = TotalUserDisapprovedAnalyses - other.TotalUserDisapprovedAnalyses; diff.TotalUserNoOpinionAnalyses = TotalUserNoOpinionAnalyses - other.TotalUserNoOpinionAnalyses; @@ -296,6 +303,8 @@ public bool Equals(ParserReport other) if (TotalAnalyses != other.TotalAnalyses) return false; + if (TotalChangedAnalyses != other.TotalChangedAnalyses) return false; + if (TotalUserApprovedAnalysesMissing != other.TotalUserApprovedAnalysesMissing) return false; if (TotalUserDisapprovedAnalyses != other.TotalUserDisapprovedAnalyses) return false; @@ -358,6 +367,11 @@ public class ParseReport : IEquatable /// public int NumUserNoOpinionAnalyses { get; set; } + /// + /// Number of analyses that changed since the last parse + /// + public int NumChangedAnalyses { get; set; } + public ParseReport() { } /// @@ -409,7 +423,44 @@ public ParseReport(IWfiWordform wordform, ParseResult result) NumUserNoOpinionAnalyses++; } - + // Count changed analyses. + var parserAgent = wordform.Cache.LanguageProject.DefaultParserAgent; + foreach (IWfiAnalysis wfAnalysis in wordform.AnalysesOC) + { + var opinion = wfAnalysis.GetAgentOpinion(parserAgent); + if (opinion == Opinions.approves) + { + var found = false; + foreach (ParseAnalysis pAnalysis in result.Analyses) + { + if (pAnalysis.MatchesIWfiAnalysis(wfAnalysis)) + { + found = true; + break; + } + } + if (!found) + { + NumChangedAnalyses++; + } + } + } + foreach (ParseAnalysis pAnalysis in result.Analyses) + { + var found = false; + foreach (IWfiAnalysis wfAnalysis in wordform.AnalysesOC) + { + if (pAnalysis.MatchesIWfiAnalysis(wfAnalysis)) + { + found = true; + break; + } + } + if (!found) + { + NumChangedAnalyses++; + } + } } /// @@ -420,6 +471,7 @@ public ParseReport DiffParseReport(ParseReport oldReport) ParseReport diffReport = new ParseReport { NumAnalyses = NumAnalyses - oldReport.NumAnalyses, + NumChangedAnalyses = NumChangedAnalyses - oldReport.NumChangedAnalyses, NoParse = NoParse - oldReport.NoParse, NumUserApprovedAnalysesMissing = NumUserApprovedAnalysesMissing - oldReport.NumUserApprovedAnalysesMissing, NumUserDisapprovedAnalyses = NumUserDisapprovedAnalyses - oldReport.NumUserDisapprovedAnalyses, @@ -452,6 +504,8 @@ public bool Equals(ParseReport other) if (NumAnalyses != other.NumAnalyses) return false; + if (NumChangedAnalyses != other.NumChangedAnalyses) return false; + if (NumUserApprovedAnalysesMissing != other.NumUserApprovedAnalysesMissing) return false; if (NumUserDisapprovedAnalyses != other.NumUserDisapprovedAnalyses) return false; diff --git a/Src/LexText/ParserUI/ParserReportDialog.xaml b/Src/LexText/ParserUI/ParserReportDialog.xaml index 2407087c09..9a687a2caa 100644 --- a/Src/LexText/ParserUI/ParserReportDialog.xaml +++ b/Src/LexText/ParserUI/ParserReportDialog.xaml @@ -169,6 +169,17 @@ + + + + + + diff --git a/Src/LexText/ParserUI/ParserUI.csproj b/Src/LexText/ParserUI/ParserUI.csproj index 7e2bfe1b9a..cf56aaee5b 100644 --- a/Src/LexText/ParserUI/ParserUI.csproj +++ b/Src/LexText/ParserUI/ParserUI.csproj @@ -80,7 +80,7 @@ - ResXFileCodeGenerator + PublicResXFileCodeGenerator ParserUIStrings.Designer.cs diff --git a/Src/LexText/ParserUI/ParserUIStrings.Designer.cs b/Src/LexText/ParserUI/ParserUIStrings.Designer.cs index b3bd7f4fd0..c94daa688a 100644 --- a/Src/LexText/ParserUI/ParserUIStrings.Designer.cs +++ b/Src/LexText/ParserUI/ParserUIStrings.Designer.cs @@ -303,6 +303,24 @@ public static string ksNumAnalysesToolTip { } } + /// + /// Looks up a localized string similar to Num Changed Analyses. + /// + public static string ksNumChangedAnalyses { + get { + return ResourceManager.GetString("ksNumChangedAnalyses", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to The number of analyses that have changed since the last parse. + /// + public static string ksNumChangedAnalysesToolTip { + get { + return ResourceManager.GetString("ksNumChangedAnalysesToolTip", resourceCulture); + } + } + /// /// Looks up a localized string similar to Disapproved Analyses. /// @@ -627,6 +645,24 @@ public static string ksTotalAnalysesToolTip { } } + /// + /// Looks up a localized string similar to Num Changed Analyses. + /// + public static string ksTotalChangedAnalyses { + get { + return ResourceManager.GetString("ksTotalChangedAnalyses", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to The total number of changed analyses since the last parse. + /// + public static string ksTotalChangedAnalysesToolTip { + get { + return ResourceManager.GetString("ksTotalChangedAnalysesToolTip", resourceCulture); + } + } + /// /// Looks up a localized string similar to Disapproved Analyses. /// diff --git a/Src/LexText/ParserUI/ParserUIStrings.resx b/Src/LexText/ParserUI/ParserUIStrings.resx index ce1ddee45e..97bf99af3d 100644 --- a/Src/LexText/ParserUI/ParserUIStrings.resx +++ b/Src/LexText/ParserUI/ParserUIStrings.resx @@ -205,6 +205,12 @@ The number of analyses produced by the parser + + Num Changed Analyses + + + The number of analyses that have changed since the last parse + Disapproved Analyses @@ -286,6 +292,12 @@ The total number of analyses in the words parsed + + Num Changed Analyses + + + The total number of changed analyses since the last parse + Disapproved Analyses From dfac02b9a600a6f70883cf9e4cba66d24a81e350 Mon Sep 17 00:00:00 2001 From: John Maxwell Date: Thu, 23 Jul 2026 08:45:27 -0700 Subject: [PATCH 2/4] Fix bug counting changed analyses; hide changed analyses when updating --- .../ParserCore/ParserCoreTests/ParserReportTests.cs | 12 ++++++------ Src/LexText/ParserCore/ParserReport.cs | 3 ++- Src/LexText/ParserUI/ParserReportDialog.xaml | 2 +- Src/LexText/ParserUI/ParserReportDialog.xaml.cs | 5 +++++ Src/LexText/ParserUI/ParserReportsDialog.xaml | 5 +++++ Src/LexText/ParserUI/ParserReportsDialog.xaml.cs | 5 +++++ 6 files changed, 24 insertions(+), 8 deletions(-) diff --git a/Src/LexText/ParserCore/ParserCoreTests/ParserReportTests.cs b/Src/LexText/ParserCore/ParserCoreTests/ParserReportTests.cs index 27cb4c6b61..7254ecb072 100644 --- a/Src/LexText/ParserCore/ParserCoreTests/ParserReportTests.cs +++ b/Src/LexText/ParserCore/ParserCoreTests/ParserReportTests.cs @@ -180,7 +180,7 @@ public void TestAddParseResult() }); var parseReport = new ParseReport(catWordform, result); - CheckParseReport(parseReport, numAnalyses: 4, numChangedAnalyses: 2, numApprovedMissing: 3, numDisapproved: 1, numNoOpinion: 2, parseTime: 10); + CheckParseReport(parseReport, numAnalyses: 4, numChangedAnalyses: 3, numApprovedMissing: 3, numDisapproved: 1, numNoOpinion: 2, parseTime: 10); var errorResult = new ParseResult("error"){ ParseTime = 1 }; var errorReport = new ParseReport(catWordform, errorResult); @@ -201,7 +201,7 @@ public void TestAddParseResult() parserReport.AddParseReport("zero", zeroReport); Assert.That(parserReport.ParseReports.ContainsKey("cat"), Is.True); CheckParserReport(parserReport, numParseErrors: 1, numWords: 3, - numZeroParses: 2, totalAnalyses: 4, totalChangedAnalyses: 2, totalApprovedMissing: 3, + numZeroParses: 2, totalAnalyses: 4, totalChangedAnalyses: 3, totalApprovedMissing: 3, totalDisapproved: 1, totalNoOpinion: 2, totalParseTime: 13); // Check SubtractParseReport. @@ -209,28 +209,28 @@ public void TestAddParseResult() CheckParseReport(eeReport); var epReport = parseReport.DiffParseReport(errorReport); - CheckParseReport(epReport, numAnalyses: 4, numChangedAnalyses: 2, numApprovedMissing: 3, + CheckParseReport(epReport, numAnalyses: 4, numChangedAnalyses: 3, numApprovedMissing: 3, numDisapproved: 1, numNoOpinion: 2, parseTime: 9, errorMessage: "error => "); var ezReport = errorReport.DiffParseReport(zeroReport); CheckParseReport(ezReport, parseTime: -1, errorMessage: " => error"); var peReport = errorReport.DiffParseReport(parseReport); - CheckParseReport(peReport, numAnalyses: -4, numChangedAnalyses: -2, numApprovedMissing: -3, + CheckParseReport(peReport, numAnalyses: -4, numChangedAnalyses: -3, numApprovedMissing: -3, numDisapproved: -1, numNoOpinion: -2, parseTime: -9, errorMessage: " => error"); var ppReport = parseReport.DiffParseReport(parseReport); CheckParseReport(ppReport); var pzReport = zeroReport.DiffParseReport(parseReport); - CheckParseReport(pzReport, numAnalyses: -4, numChangedAnalyses: -2, numApprovedMissing: -3, + CheckParseReport(pzReport, numAnalyses: -4, numChangedAnalyses: -3, numApprovedMissing: -3, numDisapproved: -1, numNoOpinion: -2, parseTime: -8); var zeReport = errorReport.DiffParseReport(zeroReport); CheckParseReport(zeReport, parseTime: -1, errorMessage: " => error"); var zpReport = parseReport.DiffParseReport(zeroReport); - CheckParseReport(zpReport, numAnalyses: 4, numChangedAnalyses: 2, numApprovedMissing: 3, + CheckParseReport(zpReport, numAnalyses: 4, numChangedAnalyses: 3, numApprovedMissing: 3, numDisapproved: 1, numNoOpinion: 2, parseTime: 8); var zzReport = zeroReport.DiffParseReport(zeroReport); diff --git a/Src/LexText/ParserCore/ParserReport.cs b/Src/LexText/ParserCore/ParserReport.cs index d51d9cffc5..26fb3efc4a 100644 --- a/Src/LexText/ParserCore/ParserReport.cs +++ b/Src/LexText/ParserCore/ParserReport.cs @@ -450,7 +450,8 @@ public ParseReport(IWfiWordform wordform, ParseResult result) var found = false; foreach (IWfiAnalysis wfAnalysis in wordform.AnalysesOC) { - if (pAnalysis.MatchesIWfiAnalysis(wfAnalysis)) + var opinion = wfAnalysis.GetAgentOpinion(parserAgent); + if (opinion == Opinions.approves && pAnalysis.MatchesIWfiAnalysis(wfAnalysis)) { found = true; break; diff --git a/Src/LexText/ParserUI/ParserReportDialog.xaml b/Src/LexText/ParserUI/ParserReportDialog.xaml index 9a687a2caa..84b2f4d053 100644 --- a/Src/LexText/ParserUI/ParserReportDialog.xaml +++ b/Src/LexText/ParserUI/ParserReportDialog.xaml @@ -169,7 +169,7 @@ - + + + + + public int TotalChangedAnalyses { get; set; } + /// + /// Whether changes were recorded in ChangedAnalyses. + /// + public bool ChangesRecorded { get; set; } + /// /// Parse reports for each word /// @@ -118,12 +124,14 @@ public ParserReport() ParseReports = new Dictionary(); } - public ParserReport(LcmCache cache) + public ParserReport(LcmCache cache, PropertyTable propertyTable) { ProjectName = cache.LanguageProject.ShortName; MachineName = Environment.MachineName; Timestamp = DateTime.UtcNow.ToFileTime(); ParseReports = new Dictionary(); + bool updatesAnalyses = propertyTable == null ? true : propertyTable.GetBoolProperty("CheckParserUpdatesAnalyses", true); + ChangesRecorded = !updatesAnalyses; } /// diff --git a/Src/LexText/ParserUI/ParserListener.cs b/Src/LexText/ParserUI/ParserListener.cs index 7658879ab0..fd1036d718 100644 --- a/Src/LexText/ParserUI/ParserListener.cs +++ b/Src/LexText/ParserUI/ParserListener.cs @@ -764,7 +764,7 @@ private bool ParserResultsHasUppercase(IWfiWordform wordform) /// ParserReport CreateParserReport() { - var parserReport = new ParserReport(m_cache) + var parserReport = new ParserReport(m_cache, m_propertyTable) { SourceText = m_sourceText }; diff --git a/Src/LexText/ParserUI/ParserReportDialog.xaml.cs b/Src/LexText/ParserUI/ParserReportDialog.xaml.cs index 4b3253021e..c0ffb33026 100644 --- a/Src/LexText/ParserUI/ParserReportDialog.xaml.cs +++ b/Src/LexText/ParserUI/ParserReportDialog.xaml.cs @@ -31,9 +31,9 @@ public ParserReportDialog() public ParserReportDialog(ParserReportViewModel parserReport, ParserListener parserListener, Mediator mediator, LcmCache cache, PropertyTable propertyTable) { InitializeComponent(); - bool updatesAnalyses = propertyTable == null ? true : propertyTable.GetBoolProperty("CheckParserUpdatesAnalyses", true); - if (updatesAnalyses) + if (!parserReport.ParserReport.ChangesRecorded) { + // Showing NumChangedAnalyses would be misleading. NumChangedAnalyses.Visibility = Visibility.Collapsed; } ParserListener = parserListener; diff --git a/Src/LexText/ParserUI/ParserReportsDialog.xaml.cs b/Src/LexText/ParserUI/ParserReportsDialog.xaml.cs index dbdb214dff..b023636ac8 100644 --- a/Src/LexText/ParserUI/ParserReportsDialog.xaml.cs +++ b/Src/LexText/ParserUI/ParserReportsDialog.xaml.cs @@ -42,11 +42,6 @@ public ParserReportsDialog() public ParserReportsDialog(ObservableCollection parserReports, ParserListener listener, Mediator mediator, LcmCache cache, PropertyTable propertyTable, string defaultComment) { InitializeComponent(); - bool updatesAnalyses = propertyTable == null ? true : propertyTable.GetBoolProperty("CheckParserUpdatesAnalyses", true); - if (updatesAnalyses) - { - TotalChangedAnalyses.Visibility = Visibility.Collapsed; - } parserReports.Sort((x, y) => y.Timestamp.CompareTo(x.Timestamp)); ParserReports = parserReports; Listener = listener; From 603eba23de1a205c725307dccf1abb87e7ce838a Mon Sep 17 00:00:00 2001 From: John Maxwell Date: Tue, 28 Jul 2026 15:21:01 -0700 Subject: [PATCH 4/4] Fix nit as requested by Hasso --- Src/LexText/ParserUI/ParserUIStrings.Designer.cs | 2 +- Src/LexText/ParserUI/ParserUIStrings.resx | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Src/LexText/ParserUI/ParserUIStrings.Designer.cs b/Src/LexText/ParserUI/ParserUIStrings.Designer.cs index c94daa688a..9ce6c9dd81 100644 --- a/Src/LexText/ParserUI/ParserUIStrings.Designer.cs +++ b/Src/LexText/ParserUI/ParserUIStrings.Designer.cs @@ -655,7 +655,7 @@ public static string ksTotalChangedAnalyses { } /// - /// Looks up a localized string similar to The total number of changed analyses since the last parse. + /// Looks up a localized string similar to The total number of analyses that have changed since the last parse. /// public static string ksTotalChangedAnalysesToolTip { get { diff --git a/Src/LexText/ParserUI/ParserUIStrings.resx b/Src/LexText/ParserUI/ParserUIStrings.resx index 97bf99af3d..1db45a0f6f 100644 --- a/Src/LexText/ParserUI/ParserUIStrings.resx +++ b/Src/LexText/ParserUI/ParserUIStrings.resx @@ -296,7 +296,7 @@ Num Changed Analyses - The total number of changed analyses since the last parse + The total number of analyses that have changed since the last parse Disapproved Analyses