Migrate shared tag to own config, address comments

Migrates the configuration for shared tags to a separate config file, and
addresses CR feedback.
This commit is contained in:
AeAstralis 2024-03-01 21:03:34 -05:00
parent 334be441f8
commit 282f6d4855
No known key found for this signature in database
6 changed files with 143 additions and 77 deletions

View file

@ -36,7 +36,7 @@ public class ModPanelDescriptionTab : ITab
ImGui.Dummy(ImGuiHelpers.ScaledVector2(2));
ImGui.Dummy(ImGuiHelpers.ScaledVector2(2));
var sharedTagsEnabled = _sharedTagManager.SharedTags.Count() > 0;
var sharedTagsEnabled = _sharedTagManager.SharedTags.Count > 0;
var sharedTagButtonOffset = sharedTagsEnabled ? ImGui.GetFrameHeight() + ImGui.GetStyle().FramePadding.X : 0;
var tagIdx = _localTags.Draw("Local Tags: ",
"Custom tags you can set personally that will not be exported to the mod data but only set for you.\n"
@ -48,23 +48,7 @@ public class ModPanelDescriptionTab : ITab
if (sharedTagsEnabled)
{
ImGui.SetCursorPosY(ImGui.GetCursorPosY() - ImGui.GetFrameHeightWithSpacing());
ImGui.SetCursorPosX(ImGui.GetWindowWidth() - ImGui.GetFrameHeight() - ImGui.GetStyle().FramePadding.X);
var sharedTag = _sharedTagManager.DrawAddFromSharedTags(_selector.Selected!.LocalTags, _selector.Selected!.ModTags, true);
if (sharedTag.Length > 0)
{
var index = _selector.Selected!.LocalTags.IndexOf(sharedTag);
if (index < 0)
{
index = _selector.Selected!.LocalTags.Count;
_modManager.DataEditor.ChangeLocalTag(_selector.Selected, index, sharedTag);
}
else
{
_modManager.DataEditor.ChangeLocalTag(_selector.Selected, index, string.Empty);
}
}
_sharedTagManager.DrawAddFromSharedTagsAndUpdateTags(_selector.Selected!.LocalTags, _selector.Selected!.ModTags, true, _selector.Selected!);
}
if (_selector.Selected!.ModTags.Count > 0)

View file

@ -83,7 +83,7 @@ public class ModPanelEditTab : ITab
}
UiHelpers.DefaultLineSpace();
var sharedTagsEnabled = _sharedTagManager.SharedTags.Count() > 0;
var sharedTagsEnabled = _sharedTagManager.SharedTags.Count > 0;
var sharedTagButtonOffset = sharedTagsEnabled ? ImGui.GetFrameHeight() + ImGui.GetStyle().FramePadding.X : 0;
var tagIdx = _modTags.Draw("Mod Tags: ", "Edit tags by clicking them, or add new tags. Empty tags are removed.", _mod.ModTags,
out var editedTag, rightEndOffset: sharedTagButtonOffset);
@ -92,23 +92,7 @@ public class ModPanelEditTab : ITab
if (sharedTagsEnabled)
{
ImGui.SetCursorPosY(ImGui.GetCursorPosY() - ImGui.GetFrameHeightWithSpacing());
ImGui.SetCursorPosX(ImGui.GetWindowWidth() - ImGui.GetFrameHeight() - ImGui.GetStyle().FramePadding.X);
var sharedTag = _sharedTagManager.DrawAddFromSharedTags(_selector.Selected!.LocalTags, _selector.Selected!.ModTags, false);
if (sharedTag.Length > 0)
{
var index = _selector.Selected!.ModTags.IndexOf(sharedTag);
if (index < 0)
{
index = _selector.Selected!.ModTags.Count;
_modManager.DataEditor.ChangeModTag(_selector.Selected, index, sharedTag);
}
else
{
_modManager.DataEditor.ChangeModTag(_selector.Selected, index, string.Empty);
}
}
_sharedTagManager.DrawAddFromSharedTagsAndUpdateTags(_selector.Selected!.LocalTags, _selector.Selected!.ModTags, false, _selector.Selected!);
}
UiHelpers.DefaultLineSpace();