Merge pull request #272 from Caraxi/master

Fix copy buttons in data window not working due to conflicting Ids
This commit is contained in:
goaaats 2021-03-25 17:26:36 +01:00 committed by GitHub
commit b04ffd2352
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -42,6 +42,8 @@ namespace Dalamud.Interface
private UIDebug UIDebug = null; private UIDebug UIDebug = null;
private uint copyButtonIndex = 0;
public DalamudDataWindow(Dalamud dalamud) { public DalamudDataWindow(Dalamud dalamud) {
this.dalamud = dalamud; this.dalamud = dalamud;
@ -57,6 +59,7 @@ namespace Dalamud.Interface
} }
public bool Draw() { public bool Draw() {
this.copyButtonIndex = 0;
ImGui.SetNextWindowSize(new Vector2(500, 500), ImGuiCond.FirstUseEver); ImGui.SetNextWindowSize(new Vector2(500, 500), ImGuiCond.FirstUseEver);
var isOpen = true; var isOpen = true;
@ -101,7 +104,7 @@ namespace Dalamud.Interface
} }
ImGui.Text($"Result: {this.sigResult.ToInt64():X}"); ImGui.Text($"Result: {this.sigResult.ToInt64():X}");
ImGui.SameLine(); ImGui.SameLine();
if (ImGui.Button("C")) { if (ImGui.Button($"C{this.copyButtonIndex++}")) {
ImGui.SetClipboardText(this.sigResult.ToInt64().ToString("x")); ImGui.SetClipboardText(this.sigResult.ToInt64().ToString("x"));
} }
@ -112,7 +115,7 @@ namespace Dalamud.Interface
$" {valueTuple.Item1} - 0x{valueTuple.Item2.ToInt64():x}"); $" {valueTuple.Item1} - 0x{valueTuple.Item2.ToInt64():x}");
ImGui.SameLine(); ImGui.SameLine();
if (ImGui.Button("C")) { if (ImGui.Button($"C##copyAddress{copyButtonIndex++}")) {
ImGui.SetClipboardText(valueTuple.Item2.ToInt64().ToString("x")); ImGui.SetClipboardText(valueTuple.Item2.ToInt64().ToString("x"));
} }
} }
@ -427,7 +430,7 @@ namespace Dalamud.Interface
ImGui.TextUnformatted(actorString); ImGui.TextUnformatted(actorString);
ImGui.SameLine(); ImGui.SameLine();
if (ImGui.Button("C")) { if (ImGui.Button($"C##{this.copyButtonIndex++}")) {
ImGui.SetClipboardText(actor.Address.ToInt64().ToString("X")); ImGui.SetClipboardText(actor.Address.ToInt64().ToString("X"));
} }