Disallow linking of invalid items.

This commit is contained in:
Cara 2020-05-17 14:10:27 +09:30
parent aa58d9258b
commit 94c6546461

View file

@ -161,11 +161,13 @@ namespace Dalamud.Interface
if (ImGui.IsMouseDoubleClicked(0))
{
OnItemChosen?.Invoke(this, this.searchTask.Result[i]);
if (this.closeOnChoose)
{
this.selectedItemTex?.Dispose();
isOpen = false;
if (this.selectedItemTex != null){
OnItemChosen?.Invoke(this, this.searchTask.Result[i]);
if (this.closeOnChoose)
{
this.selectedItemTex?.Dispose();
isOpen = false;
}
}
}
}
@ -189,14 +191,16 @@ namespace Dalamud.Interface
ImGui.EndChild();
// Darken choose button if it shouldn't be clickable
ImGui.PushStyleVar(ImGuiStyleVar.Alpha, this.selectedItemIndex < 0 ? 0.25f : 1);
ImGui.PushStyleVar(ImGuiStyleVar.Alpha, this.selectedItemIndex < 0 || this.selectedItemTex == null ? 0.25f : 1);
if (ImGui.Button(Loc.Localize("Choose", "Choose"))) {
try {
OnItemChosen?.Invoke(this, this.searchTask.Result[this.selectedItemIndex]);
if (this.closeOnChoose) {
this.selectedItemTex?.Dispose();
isOpen = false;
if (this.selectedItemTex != null) {
OnItemChosen?.Invoke(this, this.searchTask.Result[this.selectedItemIndex]);
if (this.closeOnChoose) {
this.selectedItemTex?.Dispose();
isOpen = false;
}
}
} catch (Exception ex) {
Log.Error($"Exception in Choose: {ex.Message}");
@ -214,6 +218,11 @@ namespace Dalamud.Interface
}
}
if (this.selectedItemIndex >= 0 && this.selectedItemTex == null) {
ImGui.SameLine();
ImGui.Text(Loc.Localize("DalamudItemNotLinkable", "This item is not linkable."));
}
ImGui.End();
return isOpen;