using System.Numerics; using System.Runtime.CompilerServices; using Dalamud.Bindings.ImGui; using Dalamud.Configuration; using Dalamud.Interface.Windowing; using Dalamud.Plugin; using LLib.ImGui; using Questionable.Model.Questing; using Questionable.Windows.QuestComponents; namespace Questionable.Windows; internal sealed class QuestSequenceWindow : ThemedWindow, IPersistableWindowConfig { private readonly IDalamudPluginInterface _pluginInterface; private readonly Configuration _configuration; private readonly QuestSequenceComponent _questSequenceComponent; private bool _selectLookupTabNextFrame; private int _selectedTab; public WindowConfig WindowConfig => _configuration.QuestSequenceWindowConfig; [MethodImpl(MethodImplOptions.NoInlining)] public QuestSequenceWindow(IDalamudPluginInterface pluginInterface, Configuration configuration, QuestSequenceComponent questSequenceComponent) : base(global::_003CModule_003E._200B_206B_206B_200E_200B_206A_206D_206B_206E_200F_206A_206F_206E_202B_200F_206C_202B_206D_206E_200F_200C_200E_206F_200D_200F_200B_202B_202B_202B_202B_206D_202C_206A_206D_200B_206E_200D_206A_206F_200F_202E(1855335709), ImGuiWindowFlags.NoTitleBar) { _pluginInterface = pluginInterface; _configuration = configuration; _questSequenceComponent = questSequenceComponent; _200F_202E_206B_202A_206E_206E_206C_206D_206F_206F_206E_202A_202D_200C_202C_200B_202E_206D_206F_206E_202D_206A_200C_202A_200E_202C_206A_206F_206C_200E_200C_206E_202D_202C_206B_206E_206D_200D_202B_202C_202E((Vector2?)new Vector2(950f, 700f)); _200E_206D_200B_200F_206D_202B_202A_202C_202B_202D_202A_202A_200F_200E_200D_200E_202B_200C_206B_206F_206E_200E_200E_202A_200B_200E_200E_202A_200C_202A_202A_206A_202C_206F_202D_206A_202A_206E_200D_206A_202E(ImGuiCond.FirstUseEver); _202B_206E_200E_206B_200D_206D_202A_202E_206F_202C_206B_200F_206A_206E_206C_202D_200E_202D_202E_206A_206E_202D_202C_200E_200E_206C_206E_206E_202D_202E_200D_200B_206C_202A_202B_200D_202A_200F_200F_200E_202E((WindowSizeConstraints?)new WindowSizeConstraints { MinimumSize = new Vector2(750f, 550f), MaximumSize = new Vector2(float.MaxValue, float.MaxValue) }); } public void SaveWindowConfig() { _206F_202A_206B_206F_202E_202C_200C_200F_202D_206C_202E_206B_200F_202D_202A_206A_200F_206F_206C_200C_206C_200F_206D_202B_200C_206A_206B_206F_202A_206E_206C_202E_200D_206C_206A_202D_200E_202C_206F_206A_202E(_pluginInterface, (IPluginConfiguration)_configuration); } void IPersistableWindowConfig.SaveWindowConfig() { //ILSpy generated this explicit interface implementation from .override directive in SaveWindowConfig this.SaveWindowConfig(); } public void OpenForQuest(ElementId questId) { _questSequenceComponent.SetLookedUpQuest(questId); _selectLookupTabNextFrame = true; _200B_206E_200C_200D_200F_206A_206C_206E_202B_206C_202E_200B_200B_206B_202A_202A_202B_202A_200C_200E_200B_200E_202D_202B_202A_200F_206A_206C_200C_202C_206C_202C_200B_206D_202E_206D_206E_202D_202B_206F_202E((LWindow)this, true); } [MethodImpl(MethodImplOptions.NoInlining)] public override void DrawContent() { bool isOpen = true; QuestSequenceComponent.DrawCustomHeader(ref isOpen); int num = (isOpen ? 614806055 : 614806050); int selectedTab = default(int); while (true) { int num2 = num; int num3 = 614806053; int num4 = num2; switch ((num4 | num3) - (num4 & num3)) { case 5: QuestSequenceComponent.DrawWindowBorder(); return; case 6: _206D_202B_200B_206D_202E_206E_200F_200C_206D_206E_206D_202D_200F_206D_202E_200E_206C_202D_202B_202E_206D_206B_200C_200B_202A_206A_206E_202E_206F_202D_200C_200B_206D_202B_202E_200F_202C_202A_200C_206D_202E(); _questSequenceComponent.DrawCurrentQuestTab(); num = 614806048; break; case 8: { InlineArray2 buffer = default(InlineArray2); global::_003CPrivateImplementationDetails_003E.InlineArrayElementRef, string>(ref buffer, 0) = global::_003CModule_003E._206C_202A_206D_206A_206E_202A_202B_206F_206D_200F_202D_200F_202D_206A_202C_202B_206D_206A_200E_200E_202D_202D_200D_200C_200D_200D_206D_206E_202A_200F_206E_206C_206D_206A_206D_202B_200F_200D_206E_200C_202E(-917877245); global::_003CPrivateImplementationDetails_003E.InlineArrayElementRef, string>(ref buffer, 1) = global::_003CModule_003E._200B_206B_206B_200E_200B_206A_206D_206B_206E_200F_206A_206F_206E_202B_200F_206C_202B_206D_206E_200F_200C_200E_206F_200D_200F_200B_202B_202B_202B_202B_206D_202C_206A_206D_200B_206E_200D_206A_206F_200F_202E(478358345); _selectedTab = UiThemeUtils.DrawTabBar(global::_003CPrivateImplementationDetails_003E.InlineArrayAsReadOnlySpan, string>(in buffer, 2), _selectedTab); selectedTab = _selectedTab; num = ((selectedTab == 0) ? 614806051 : 614806060); break; } case 3: _206D_202B_200B_206D_202E_206E_200F_200C_206D_206E_206D_202D_200F_206D_202E_200E_206C_202D_202B_202E_206D_206B_200C_200B_202A_206A_206E_202E_206F_202D_200C_200B_206D_202B_202E_200F_202C_202A_200C_206D_202E(); _questSequenceComponent.DrawQuestLookupTab(); num = 614806048; break; case 7: RequestClose(); num = 614806055; break; case 0: num = 614806050; break; case 2: _206D_202B_200B_206D_202E_206E_200F_200C_206D_206E_206D_202D_200F_206D_202E_200E_206C_202D_202B_202E_206D_206B_200C_200B_202A_206A_206E_202E_206F_202D_200C_200B_206D_202B_202E_200F_202C_202A_200C_206D_202E(); _206D_202B_200B_206D_202E_206E_200F_200C_206D_206E_206D_202D_200F_206D_202E_200E_206C_202D_202B_202E_206D_206B_200C_200B_202A_206A_206E_202E_206F_202D_200C_200B_206D_202B_202E_200F_202C_202A_200C_206D_202E(); num = ((!_selectLookupTabNextFrame) ? 614806061 : 614806049); break; case 1: num = 614806048; break; case 4: _selectedTab = 1; _selectLookupTabNextFrame = false; num = 614806061; break; case 9: num = ((selectedTab == 1) ? 614806054 : 614806052); break; } } } void _200F_202E_206B_202A_206E_206E_206C_206D_206F_206F_206E_202A_202D_200C_202C_200B_202E_206D_206F_206E_202D_206A_200C_202A_200E_202C_206A_206F_206C_200E_200C_206E_202D_202C_206B_206E_206D_200D_202B_202C_202E(Vector2? P_0) { base.Size = P_0; } void _200E_206D_200B_200F_206D_202B_202A_202C_202B_202D_202A_202A_200F_200E_200D_200E_202B_200C_206B_206F_206E_200E_200E_202A_200B_200E_200E_202A_200C_202A_202A_206A_202C_206F_202D_206A_202A_206E_200D_206A_202E(ImGuiCond P_0) { base.SizeCondition = P_0; } void _202B_206E_200E_206B_200D_206D_202A_202E_206F_202C_206B_200F_206A_206E_206C_202D_200E_202D_202E_206A_206E_202D_202C_200E_200E_206C_206E_206E_202D_202E_200D_200B_206C_202A_202B_200D_202A_200F_200F_200E_202E(WindowSizeConstraints? P_0) { base.SizeConstraints = P_0; } static void _206F_202A_206B_206F_202E_202C_200C_200F_202D_206C_202E_206B_200F_202D_202A_206A_200F_206F_206C_200C_206C_200F_206D_202B_200C_206A_206B_206F_202A_206E_206C_202E_200D_206C_206A_202D_200E_202C_206F_206A_202E(IDalamudPluginInterface P_0, IPluginConfiguration P_1) { P_0.SavePluginConfig(P_1); } static void _200B_206E_200C_200D_200F_206A_206C_206E_202B_206C_202E_200B_200B_206B_202A_202A_202B_202A_200C_200E_200B_200E_202D_202B_202A_200F_206A_206C_200C_202C_206C_202C_200B_206D_202E_206D_206E_202D_202B_206F_202E(LWindow P_0, bool P_1) { P_0.IsOpenAndUncollapsed = P_1; } static void _206D_202B_200B_206D_202E_206E_200F_200C_206D_206E_206D_202D_200F_206D_202E_200E_206C_202D_202B_202E_206D_206B_200C_200B_202A_206A_206E_202E_206F_202D_200C_200B_206D_202B_202E_200F_202C_202A_200C_206D_202E() { ImGui.Spacing(); } }