From 6134ac0c551c783c03bdd2c87a6d574dea0697ba Mon Sep 17 00:00:00 2001 From: Anna Date: Sun, 17 Apr 2022 01:46:22 -0400 Subject: [PATCH] fix: make table work properly --- TheHeartOfTheParty/PluginUi.cs | 55 ++++++++++---------- TheHeartOfTheParty/TheHeartOfTheParty.csproj | 4 +- 2 files changed, 29 insertions(+), 30 deletions(-) diff --git a/TheHeartOfTheParty/PluginUi.cs b/TheHeartOfTheParty/PluginUi.cs index 1499a8b..c3da745 100755 --- a/TheHeartOfTheParty/PluginUi.cs +++ b/TheHeartOfTheParty/PluginUi.cs @@ -1,4 +1,5 @@ -using ImGuiNET; +using System.Numerics; +using ImGuiNET; using Lumina.Excel.GeneratedSheets; using Lumina.Text; @@ -39,6 +40,8 @@ internal class PluginUi : IDisposable { return; } + ImGui.SetNextWindowSize(new Vector2(780, 450), ImGuiCond.FirstUseEver); + if (!ImGui.Begin(this.Plugin.Name, ref this._visible)) { ImGui.End(); return; @@ -75,41 +78,37 @@ internal class PluginUi : IDisposable { ImGui.SetNextItemWidth(-1); ImGui.InputTextWithHint("##search", hint, ref this._searchText, 64); - if (ImGui.BeginChild("##titles")) { - if (ImGui.BeginTable("##titles-table", 3)) { - ImGui.TableSetupColumn("Title", ImGuiTableColumnFlags.WidthFixed); - ImGui.TableSetupColumn("Achievement", ImGuiTableColumnFlags.WidthFixed); - ImGui.TableSetupColumn("Category", ImGuiTableColumnFlags.WidthStretch); - ImGui.TableSetupScrollFreeze(0, 1); + if (ImGui.BeginTable("##titles-table", 3, ImGuiTableFlags.ScrollY, ImGui.GetContentRegionAvail())) { + ImGui.TableSetupColumn("Title", ImGuiTableColumnFlags.WidthFixed); + ImGui.TableSetupColumn("Achievement", ImGuiTableColumnFlags.WidthFixed); + ImGui.TableSetupColumn("Category", ImGuiTableColumnFlags.WidthStretch); + ImGui.TableSetupScrollFreeze(0, 1); - ImGui.TableHeadersRow(); + ImGui.TableHeadersRow(); - foreach (var title in titles) { - ImGui.TableNextRow(); - ImGui.TableNextColumn(); + foreach (var title in titles) { + ImGui.TableNextRow(); + ImGui.TableNextColumn(); - if (title.Unlocked) { - const ImGuiSelectableFlags flags = ImGuiSelectableFlags.SpanAllColumns - | ImGuiSelectableFlags.AllowItemOverlap; - // TODO: detect current title? - if (ImGui.Selectable(title.Text, false, flags)) { - this.Plugin.Functions.SetTitle(title.Row.RowId); - } - } else { - ImGui.TextDisabled(title.Text); + if (title.Unlocked) { + const ImGuiSelectableFlags flags = ImGuiSelectableFlags.SpanAllColumns + | ImGuiSelectableFlags.AllowItemOverlap; + // TODO: detect current title? + if (ImGui.Selectable(title.Text, false, flags)) { + this.Plugin.Functions.SetTitle(title.Row.RowId); } - - ImGui.TableNextColumn(); - ImGui.TextUnformatted(title.Achievement?.Name?.RawString ?? "???"); - - ImGui.TableNextColumn(); - ImGui.TextUnformatted(title.Achievement?.AchievementCategory.Value?.AchievementKind.Value?.Name?.RawString ?? "???"); + } else { + ImGui.TextDisabled(title.Text); } - ImGui.EndTable(); + ImGui.TableNextColumn(); + ImGui.TextUnformatted(title.Achievement?.Name?.RawString ?? "???"); + + ImGui.TableNextColumn(); + ImGui.TextUnformatted(title.Achievement?.AchievementCategory.Value?.AchievementKind.Value?.Name?.RawString ?? "???"); } - ImGui.EndChild(); + ImGui.EndTable(); } ImGui.End(); diff --git a/TheHeartOfTheParty/TheHeartOfTheParty.csproj b/TheHeartOfTheParty/TheHeartOfTheParty.csproj index 581d127..9d5cc2e 100755 --- a/TheHeartOfTheParty/TheHeartOfTheParty.csproj +++ b/TheHeartOfTheParty/TheHeartOfTheParty.csproj @@ -9,8 +9,8 @@ - - /home/ascclemens/dalamud + $(AppData)\XIVLauncher\addon\Hooks\dev +