Skip to content

Commit

Permalink
Improved diff results, fixed codes not being re-enabled
Browse files Browse the repository at this point in the history
  • Loading branch information
hyperbx committed Nov 7, 2023
1 parent 5f46896 commit b229b60
Show file tree
Hide file tree
Showing 11 changed files with 80 additions and 64 deletions.
2 changes: 1 addition & 1 deletion HedgeModManager/HedgeModManager.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@
<PackageReference Include="gong-wpf-dragdrop">
<Version>2.3.2</Version>
</PackageReference>
<PackageReference Include="HedgeModManager.CodeCompiler" Version="0.2.33" />
<PackageReference Include="HedgeModManager.CodeCompiler" Version="0.2.34" />
<PackageReference Include="Markdig">
<Version>0.25.0</Version>
</PackageReference>
Expand Down
9 changes: 5 additions & 4 deletions HedgeModManager/Languages/en-AU.xaml
Original file line number Diff line number Diff line change
Expand Up @@ -80,10 +80,11 @@

<!-- Diff UI Strings -->
<system:String x:Key="DiffUITitle" >Changelog</system:String>
<system:String x:Key="DiffUIAdded" >Added: {0}</system:String>
<system:String x:Key="DiffUIModified">Modified: {0}</system:String>
<system:String x:Key="DiffUIRemoved" >Removed: {0}</system:String>
<system:String x:Key="DiffUIRenamed" >Renamed: {0}</system:String>
<system:String x:Key="DiffUIAdded" >Added</system:String>
<system:String x:Key="DiffUIModified">Modified</system:String>
<system:String x:Key="DiffUIRemoved" >Removed</system:String>
<system:String x:Key="DiffUIRenamed" >Renamed</system:String>
<system:String x:Key="DiffUIMoved" >Moved</system:String>

<!-- Settings UI Strings -->
<!-- Game & Mod Loader -->
Expand Down
9 changes: 5 additions & 4 deletions HedgeModManager/Languages/en-US.xaml
Original file line number Diff line number Diff line change
Expand Up @@ -80,10 +80,11 @@

<!-- Diff UI Strings -->
<system:String x:Key="DiffUITitle" >Changelog</system:String>
<system:String x:Key="DiffUIAdded" >Added: {0}</system:String>
<system:String x:Key="DiffUIModified">Modified: {0}</system:String>
<system:String x:Key="DiffUIRemoved" >Removed: {0}</system:String>
<system:String x:Key="DiffUIRenamed" >Renamed: {0}</system:String>
<system:String x:Key="DiffUIAdded" >Added</system:String>
<system:String x:Key="DiffUIModified">Modified</system:String>
<system:String x:Key="DiffUIRemoved" >Removed</system:String>
<system:String x:Key="DiffUIRenamed" >Renamed</system:String>
<system:String x:Key="DiffUIMoved" >Moved</system:String>

<!-- Settings UI Strings -->
<!-- Game & Mod Loader -->
Expand Down
8 changes: 4 additions & 4 deletions HedgeModManager/Languages/en-UW.xaml
Original file line number Diff line number Diff line change
Expand Up @@ -80,10 +80,10 @@

<!-- Diff UI Strings -->
<system:String x:Key="DiffUITitle" >changewog</system:String>
<system:String x:Key="DiffUIAdded" >added: {0}</system:String>
<system:String x:Key="DiffUIModified">modified: {0}</system:String>
<system:String x:Key="DiffUIRemoved" >wemoved: {0}</system:String>
<system:String x:Key="DiffUIRenamed" >wenamed: {0}</system:String>
<system:String x:Key="DiffUIAdded" >added</system:String>
<system:String x:Key="DiffUIModified">modified</system:String>
<system:String x:Key="DiffUIRemoved" >wemoved</system:String>
<system:String x:Key="DiffUIRenamed" >wenamed</system:String>

<!-- Settings UI Strings -->
<!-- Game & Mod Loader -->
Expand Down
8 changes: 4 additions & 4 deletions HedgeModManager/Languages/ja-JP.xaml
Original file line number Diff line number Diff line change
Expand Up @@ -78,10 +78,10 @@

<!-- Diff UI Strings -->
<system:String x:Key="DiffUITitle" >変更履歴</system:String>
<system:String x:Key="DiffUIAdded" >追加: {0}</system:String>
<system:String x:Key="DiffUIModified">変更: {0}</system:String>
<system:String x:Key="DiffUIRemoved" >削除: {0}</system:String>
<system:String x:Key="DiffUIRenamed" >改名: {0}</system:String>
<system:String x:Key="DiffUIAdded" >追加</system:String>
<system:String x:Key="DiffUIModified">変更</system:String>
<system:String x:Key="DiffUIRemoved" >削除</system:String>
<system:String x:Key="DiffUIRenamed" >改名</system:String>

<!-- Settings UI Strings -->
<!-- Game & Mod Loader -->
Expand Down
8 changes: 4 additions & 4 deletions HedgeModManager/Languages/ko-KR.xaml
Original file line number Diff line number Diff line change
Expand Up @@ -78,10 +78,10 @@

<!-- Diff UI Strings -->
<system:String x:Key="DiffUITitle" >변경점</system:String>
<system:String x:Key="DiffUIAdded" >추가됨: {0}</system:String>
<system:String x:Key="DiffUIModified">변경됨: {0}</system:String>
<system:String x:Key="DiffUIRemoved" >제거됨: {0}</system:String>
<system:String x:Key="DiffUIRenamed" >이름 변경됨: {0}</system:String>
<system:String x:Key="DiffUIAdded" >추가됨</system:String>
<system:String x:Key="DiffUIModified">변경됨</system:String>
<system:String x:Key="DiffUIRemoved" >제거됨</system:String>
<system:String x:Key="DiffUIRenamed" >이름 변경됨</system:String>

<!-- Settings UI Strings -->
<!-- Game & Mod Loader -->
Expand Down
8 changes: 4 additions & 4 deletions HedgeModManager/Languages/uk-UA.xaml
Original file line number Diff line number Diff line change
Expand Up @@ -78,10 +78,10 @@

<!-- Diff UI Strings -->
<system:String x:Key="DiffUITitle" >Список змін</system:String>
<system:String x:Key="DiffUIAdded" >Додано: {0}</system:String>
<system:String x:Key="DiffUIModified">Змінено: {0}</system:String>
<system:String x:Key="DiffUIRemoved" >Видалено: {0}</system:String>
<system:String x:Key="DiffUIRenamed" >Перейменовано: {0}</system:String>
<system:String x:Key="DiffUIAdded" >Додано</system:String>
<system:String x:Key="DiffUIModified">Змінено</system:String>
<system:String x:Key="DiffUIRemoved" >Видалено</system:String>
<system:String x:Key="DiffUIRenamed" >Перейменовано</system:String>

<!-- Settings UI Strings -->
<!-- Game & Mod Loader -->
Expand Down
8 changes: 4 additions & 4 deletions HedgeModManager/Languages/zh-CN.xaml
Original file line number Diff line number Diff line change
Expand Up @@ -78,10 +78,10 @@

<!-- Diff UI Strings -->
<system:String x:Key="DiffUITitle" >更新日志</system:String>
<system:String x:Key="DiffUIAdded" >新增: {0}</system:String>
<system:String x:Key="DiffUIRemoved" >修改: {0}</system:String>
<system:String x:Key="DiffUIRenamed" >移除: {0}</system:String>
<system:String x:Key="DiffUIModified" >重命名: {0}</system:String>
<system:String x:Key="DiffUIAdded" >新增</system:String>
<system:String x:Key="DiffUIRemoved" >修改</system:String>
<system:String x:Key="DiffUIRenamed" >移除</system:String>
<system:String x:Key="DiffUIModified" >重命名</system:String>

<!-- Settings UI Strings -->
<!-- Game & Mod Loader -->
Expand Down
8 changes: 4 additions & 4 deletions HedgeModManager/Languages/zh-TW.xaml
Original file line number Diff line number Diff line change
Expand Up @@ -78,10 +78,10 @@

<!-- Diff UI Strings -->
<system:String x:Key="DiffUITitle" >更新日誌</system:String>
<system:String x:Key="DiffUIAdded" >新增: {0}</system:String>
<system:String x:Key="DiffUIModified">修改: {0}</system:String>
<system:String x:Key="DiffUIRemoved" >刪除: {0}</system:String>
<system:String x:Key="DiffUIRenamed" >重新命名: {0}</system:String>
<system:String x:Key="DiffUIAdded" >新增</system:String>
<system:String x:Key="DiffUIModified">修改</system:String>
<system:String x:Key="DiffUIRemoved" >刪除</system:String>
<system:String x:Key="DiffUIRenamed" >重新命名</system:String>

<!-- Settings UI Strings -->
<!-- Game & Mod Loader -->
Expand Down
4 changes: 2 additions & 2 deletions HedgeModManager/Properties/AssemblyInfo.cs
Original file line number Diff line number Diff line change
Expand Up @@ -51,5 +51,5 @@
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("7.12.0.1")]
[assembly: AssemblyFileVersion("7.12.0.1")]
[assembly: AssemblyVersion("7.12.0.2")]
[assembly: AssemblyFileVersion("7.12.0.2")]
72 changes: 43 additions & 29 deletions HedgeModManager/UI/MainWindow.xaml.cs
Original file line number Diff line number Diff line change
Expand Up @@ -1591,18 +1591,15 @@ is contaminated with codes from ExtraCodes.hmm */
{
DownloadCompleted = () =>
{
Refresh();

CodesOutdated = false;

UpdateStatus(Localise("StatusUIDownloadFinished"));
Button_DownloadCodes.SetResourceReference(ContentProperty, "CodesUIDownload");

Refresh();
CodesOutdated = false;

// Don't display diff for initial download.
if (oldCodes == null)
return;

DisplayDiff(new CodeFile(codesFilePath).CalculateDiff(oldCodes).ToList());
if (oldCodes != null)
DisplayDiff(new CodeFile(codesFilePath).CalculateDiff(oldCodes).ToList());
}
};

Expand All @@ -1628,35 +1625,51 @@ void DisplayDiff(List<DiffBlock> blocks)
{
sb.AppendLine($"- {DiffBlockToString(block)}");

if (block.Type == DiffType.Renamed)
{
// Restore enabled state of renamed code.
var code = ViewModel.ModsDB.CodesDatabase.Codes.Find
(
x =>
bool isCodeEnabled = ModsDatabase.Codes.Find
(
x =>
{
if (block.Data.Key is CSharpCode cc)
{
if (block.Data.Value is CSharpCode cc)
{
if (x.Name == cc.Name && x.Category == cc.Category)
return true;
}
if (x.EndsWith(cc.Name))
return true;
}

return false;
return false;
}
)
!= null;

var code = ViewModel.ModsDB.CodesDatabase.Codes.Find
(
x =>
{
if (block.Data.Value is CSharpCode cc)
{
if (x.Name == cc.Name && x.Category == cc.Category)
return true;
}
);

if (code != null)
code.Enabled = true;
}
return false;
}
);

if (code != null)
code.Enabled = isCodeEnabled;
}

SaveConfig();

if (!string.IsNullOrEmpty(sb.ToString()))
{
var box = new HedgeMessageBox(Localise("DiffUITitle"), sb.ToString(), textAlignment: TextAlignment.Left, type: InputType.MarkDown);
var box = new HedgeMessageBox(Localise("DiffUITitle"), sb.ToString(), type: InputType.MarkDown)
{
box.AddButton(Localise("CommonUIOK"), () => box.Close());
box.ShowDialog();
}
MaxHeight = 550,
MaxWidth = 800
};

box.AddButton(Localise("CommonUIOK"), box.Close);
box.ShowDialog();
}
}
}
Expand All @@ -1668,10 +1681,11 @@ private static string DiffBlockToString(DiffBlock block)
DiffType.Added => "DiffUIAdded",
DiffType.Removed => "DiffUIRemoved",
DiffType.Renamed => "DiffUIRenamed",
DiffType.Moved => "DiffUIMoved",
_ => "DiffUIModified",
};

return LocaliseFormat(key, block.Description);
return $"**{Localise(key)}** - {block.Description}";
}

private void UI_Download_Codes(object sender, RoutedEventArgs e)
Expand Down

0 comments on commit b229b60

Please sign in to comment.