Skip to content

Commit

Permalink
update feature TranslationUpdateCheck
Browse files Browse the repository at this point in the history
  • Loading branch information
SadPencil committed Dec 4, 2021
1 parent 4e01516 commit 3846de3
Showing 1 changed file with 11 additions and 41 deletions.
52 changes: 11 additions & 41 deletions Ra2CsfToolsGUI/MainWindow.xaml.cs
Original file line number Diff line number Diff line change
Expand Up @@ -718,7 +718,7 @@ private void TranslationUpdateCheck_SaveIniFile_Click(object sender, RoutedEvent
// add upstream info to .ini
var ini = GetNewIniFileFromCsfFile(newCsf);
foreach (var labelName in upstreamLabelKeys)
foreach (var labelName in allLabelKeys)
{
bool translationExist = ini.Sections.ContainsSection(labelName);
if (!translationExist)
Expand Down Expand Up @@ -748,51 +748,21 @@ private void TranslationUpdateCheck_SaveIniFile_Click(object sender, RoutedEvent
}
}
if (diffDict.ContainsKey(labelName))
if (transOld.ContainsKey(labelName))
{
bool oldTransExist = oldTransDict.TryGetValue(labelName, out var oldTransValue);
bool newTransExist = newTransDict.TryGetValue(labelName, out var newTransValue);
if (newUpstreamDict.Keys.Contains(labelName))
Debug.Assert(transOld.ContainsKey(labelName));
foreach ((var iLine, var value) in transOld[labelName])
{
if ((!newTransExist) || (!(((oldTransExist && oldTransValue != newTransValue) || (!oldTransExist)))))
{
Debug.Assert(newCsf.Labels.ContainsKey(labelName));
Debug.Assert(newCsf.Labels[labelName] == TranslationNeededPlaceholder);
if (oldTransExist)
{
Debug.Assert(transOld.ContainsKey(labelName));
foreach ((var iLine, var value) in transOld[labelName])
{
_ = labelSection.AddKey(GetIniLabelCustomKeyName("TranslationOld", iLine), value);
}
}
if (newTransExist)
{
foreach ((var iLine, var value) in transNew[labelName])
{
_ = labelSection.AddKey(GetIniLabelCustomKeyName("TranslationNew", iLine), value);
}
}
}
_ = labelSection.AddKey(GetIniLabelCustomKeyName("TranslationOld", iLine), value);
}
else
{
if (newTransExist)
{
Debug.Assert(newCsf.Labels.ContainsKey(labelName));
Debug.Assert(newCsf.Labels[labelName] == TranslationDeleteNeededPlaceholder);
}
Debug.Assert(transNew.ContainsKey(labelName));
foreach ((var iLine, var value) in transNew[labelName])
{
_ = labelSection.AddKey(GetIniLabelCustomKeyName("TranslationNew", iLine), value);
}
}
if (transNew.ContainsKey(labelName))
{
foreach ((var iLine, var value) in transNew[labelName])
{
_ = labelSection.AddKey(GetIniLabelCustomKeyName("TranslationNew", iLine), value);
}
}
}
Expand Down

0 comments on commit 3846de3

Please sign in to comment.