using System.Collections.Generic; using Dalamud.Bindings.ImGui; using Questionable.Controller; namespace Questionable.Windows.QuestComponents; internal sealed class RemainingTasksComponent { private readonly QuestController _questController; private readonly GatheringController _gatheringController; private readonly FateController _fateController; private readonly SeasonalDutyController _seasonalDutyController; public RemainingTasksComponent(QuestController questController, GatheringController gatheringController, FateController fateController, SeasonalDutyController seasonalDutyController) { _questController = questController; _gatheringController = gatheringController; _fateController = fateController; _seasonalDutyController = seasonalDutyController; } public void Draw() { IList remainingTaskNames = _seasonalDutyController.GetRemainingTaskNames(); if (remainingTaskNames.Count > 0) { ImGui.Separator(); ImGui.BeginDisabled(); foreach (string item in remainingTaskNames) { ImU8String text = new ImU8String(3, 1); text.AppendLiteral("D: "); text.AppendFormatted(item); ImGui.TextUnformatted(text); } ImGui.EndDisabled(); return; } IList remainingTaskNames2 = _fateController.GetRemainingTaskNames(); if (remainingTaskNames2.Count > 0) { ImGui.Separator(); ImGui.BeginDisabled(); foreach (string item2 in remainingTaskNames2) { ImU8String text2 = new ImU8String(3, 1); text2.AppendLiteral("F: "); text2.AppendFormatted(item2); ImGui.TextUnformatted(text2); } ImGui.EndDisabled(); return; } IList remainingTaskNames3 = _gatheringController.GetRemainingTaskNames(); if (remainingTaskNames3.Count > 0) { ImGui.Separator(); ImGui.BeginDisabled(); foreach (string item3 in remainingTaskNames3) { ImU8String text3 = new ImU8String(3, 1); text3.AppendLiteral("G: "); text3.AppendFormatted(item3); ImGui.TextUnformatted(text3); } ImGui.EndDisabled(); return; } IList remainingTaskNames4 = _questController.GetRemainingTaskNames(); if (remainingTaskNames4.Count <= 0) { return; } ImGui.Separator(); ImGui.BeginDisabled(); foreach (string item4 in remainingTaskNames4) { ImGui.TextUnformatted(item4); } ImGui.EndDisabled(); } }