qstbak/Questionable/Questionable.Windows.ConfigComponents/DebugConfigComponent.cs
2026-08-17 20:27:25 +10:00

356 lines
18 KiB
C#

using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.Immutable;
using System.Linq;
using System.Numerics;
using System.Runtime.CompilerServices;
using Dalamud.Bindings.ImGui;
using Dalamud.Interface;
using Dalamud.Interface.Utility.Raii;
using Dalamud.Plugin;
using Questionable.External;
namespace Questionable.Windows.ConfigComponents;
internal sealed class DebugConfigComponent : ConfigComponent
{
private readonly Dictionary<string, bool> _featurePausingOpenState = new Dictionary<string, bool>();
public DebugConfigComponent(IDalamudPluginInterface pluginInterface, Configuration configuration)
: base(pluginInterface, configuration)
{
}
[MethodImpl(MethodImplOptions.NoInlining)]
public override void DrawTab()
{
UiThemeUtils.SectionHeader(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<string>(1486717885));
(Vector2 ContentStartPos, float AvailableWidth, ImDrawListPtr DrawList) tuple = UiThemeUtils.BeginCard();
Vector2 item = tuple.ContentStartPos;
float item2 = tuple.AvailableWidth;
ImDrawListPtr item3 = tuple.DrawList;
int value = base.Configuration.Advanced.InteractionRetryLimit;
int num = ((!UiThemeUtils.AccentSliderInt(global::_003CModule_003E._202A_206B_206D_200C_206B_200E_200E_202A_200B_202E_206A_206F_206A_206B_200E_200D_200F_206D_206E_206A_206F_200C_206C_202C_202A_206E_202C_200B_206E_202A_206E_202B_206B_202E_202E_206A_206D_206D_202C_200F_202E<string>(459770457), ref value, 1, 10, 260f)) ? (-1001972389) : (-1001972390));
bool value4 = default(bool);
Vector2 item4 = default(Vector2);
float item5 = default(float);
ImDrawListPtr item6 = default(ImDrawListPtr);
Vector2 contentStartPos = default(Vector2);
float availableWidth = default(float);
ImDrawListPtr drawList = default(ImDrawListPtr);
bool value3 = default(bool);
float value2 = default(float);
while (true)
{
int num2 = num;
int num3 = -1001972389;
int num4 = num2;
int num5 = num4 + num3;
int num6 = num4 & num3;
switch (num5 - (num6 + num6))
{
case 8:
base.Configuration.Advanced.ShowWigglyNavShimProvider = value4;
Save();
num = -1001972391;
break;
case 2:
UiThemeUtils.EndCard(item4, item5, item6);
UiThemeUtils.SectionSpacing();
UiThemeUtils.SectionHeader(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<string>(1322354699));
(contentStartPos, availableWidth, drawList) = UiThemeUtils.BeginCard();
UiThemeUtils.WrappedTextColored(UiThemeUtils.StatusLocked, global::_003CModule_003E._202D_206D_206A_206E_202C_202B_200C_206C_200E_206A_206D_200E_206A_202A_200C_202E_206E_202C_206F_200B_206D_206F_200C_202C_200B_202B_200F_200B_206A_206F_200F_202E_206B_200E_202B_202A_200F_200B_202A_200E_202E<string>(-1990367668));
value3 = base.Configuration.Advanced.DisablePartyWatchdog;
num = ((!UiThemeUtils.WrappedCheckbox(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<string>(-1956217498), ref value3, global::_003CModule_003E._202E_206C_200F_206B_206A_202A_202C_206F_200C_206C_202B_206B_206D_206D_206D_202D_206E_202E_206C_206E_206D_202C_206F_200D_202D_202E_206A_206D_202A_206A_202B_200D_200C_206D_202B_200B_200D_200C_206E_206B_202E<string>(1278554970))) ? (-1001972386) : (-1001972388));
break;
case 1:
base.Configuration.Advanced.InteractionRetryLimit = value;
Save();
num = -1001972389;
break;
case 7:
base.Configuration.Advanced.DisablePartyWatchdog = value3;
Save();
num = -1001972386;
break;
case 4:
num = -1001972390;
break;
case 3:
{
_200D_202C_200F_200F_206B_206B_200C_206F_206C_202A_206D_206C_202D_202A_200D_202A_202C_206D_206A_202A_200F_200B_202B_200F_202D_202E_206D_202D_206F_206D_200E_206C_200D_200F_206C_206D_206B_206B_202E_200E_202E();
UiThemeUtils.InfoIcon(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<string>(626167100));
UiThemeUtils.EndCard(item, item2, item3);
UiThemeUtils.SectionSpacing();
UiThemeUtils.SectionHeader(global::_003CModule_003E._202E_206C_200F_206B_206A_202A_202C_206F_200C_206C_202B_206B_206D_206D_206D_202D_206E_202E_206C_206E_206D_202C_206F_200D_202D_202E_206A_206D_202A_206A_202B_200D_200C_206D_202B_200B_200D_200C_206E_206B_202E<string>(-1927198459));
(Vector2 ContentStartPos, float AvailableWidth, ImDrawListPtr DrawList) tuple2 = UiThemeUtils.BeginCard();
item4 = tuple2.ContentStartPos;
item5 = tuple2.AvailableWidth;
item6 = tuple2.DrawList;
value4 = base.Configuration.Advanced.ShowWigglyNavShimProvider;
num = ((!UiThemeUtils.WrappedCheckbox(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<string>(967670354), ref value4, 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<string>(-1491500076))) ? (-1001972391) : (-1001972397));
break;
}
case 5:
DrawFeaturePausingSection(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<string>(-1202049138), PandorasBoxIpc.ConflictingFeatures, global::_003CModule_003E._202D_206D_206A_206E_202C_202B_200C_206C_200E_206A_206D_200E_206A_202A_200C_202E_206E_202C_206F_200B_206D_206F_200C_202C_200B_202B_200F_200B_206A_206F_200F_202E_206B_200E_202B_202A_200F_200B_202A_200E_202E<string>(611154130), 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<string>(207768065), base.Configuration.Advanced.PandoraFeatureExclusions);
DrawFeaturePausingSection(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<string>(11057013), AutomatonIpc.ConflictingTweaks, 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<string>(899890205), 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<string>(-1169537281), base.Configuration.Advanced.AutomatonTweakExclusions);
UiThemeUtils.EndCard(contentStartPos, availableWidth, drawList);
return;
case 6:
base.Configuration.Advanced.InteractionTimeoutSeconds = value2;
Save();
num = -1001972392;
break;
case 0:
_200D_202C_200F_200F_206B_206B_200C_206F_206C_202A_206D_206C_202D_202A_200D_202A_202C_206D_206A_202A_200F_200B_202B_200F_202D_202E_206D_202D_206F_206D_200E_206C_200D_200F_206C_206D_206B_206B_202E_200E_202E();
UiThemeUtils.InfoIcon(global::_003CModule_003E._202E_206C_200F_206B_206A_202A_202C_206F_200C_206C_202B_206B_206D_206D_206D_202D_206E_202E_206C_206E_206D_202C_206F_200D_202D_202E_206A_206D_202A_206A_202B_200D_200C_206D_202B_200B_200D_200C_206E_206B_202E<string>(368373226));
value2 = base.Configuration.Advanced.InteractionTimeoutSeconds;
num = ((!UiThemeUtils.AccentSliderFloat(global::_003CModule_003E._202A_206B_206D_200C_206B_200E_200E_202A_200B_202E_206A_206F_206A_206B_200E_200D_200F_206D_206E_206A_206F_200C_206C_202C_202A_206E_202C_200B_206E_202A_206E_202B_206B_202E_202E_206A_206D_206D_202C_200F_202E<string>(-1280982003), ref value2, 5f, 30f, 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<string>(-1562631403), 260f)) ? (-1001972392) : (-1001972387));
break;
}
}
}
[MethodImpl(MethodImplOptions.NoInlining)]
private void DrawFeaturePausingSection(string header, ImmutableHashSet<string> features, string conditionalFeature, string conditionalHelpText, HashSet<string> exclusions)
{
bool open = _featurePausingOpenState.GetValueOrDefault(header);
UiThemeUtils.ThemedAccordion(header, header, null, ref open);
_featurePausingOpenState[header] = open;
int num = (open ? (-1750707235) : (-1750707234));
string current = default(string);
bool value = default(bool);
while (true)
{
int num2 = num;
int num3 = -1750707236;
int num4 = num2;
int num5 = num4 + num3;
int num6 = num4 & num3;
switch (num5 - (num6 + num6))
{
case 0:
goto IL_0072;
case 2:
return;
case 1:
{
ImRaii.IdDisposable idDisposable = _206B_206F_206E_202A_206A_202C_206A_206E_200F_200F_206E_200B_206F_202A_200F_206C_200F_200C_202D_202C_206F_202E_202C_206C_202E_206E_206D_200C_200F_206A_202D_202A_206B_200D_200F_202B_200E_202A_206B_202B_202E((ImU8String)header, true);
try
{
ImRaii.IndentDisposable indentDisposable = _206B_200F_206D_200B_206B_202B_202B_206E_200C_206B_202D_200B_206A_206A_202D_202D_202E_206F_200E_206F_206B_206A_206E_206F_202C_200D_200D_200C_202A_202E_206A_206A_206E_200C_200B_206F_200E_200F_200C_206A_202E(1, true);
try
{
IEnumerator<string> enumerator = features.Order().GetEnumerator();
try
{
num = 405090622;
while (true)
{
int num7 = num;
num3 = 405090622;
num4 = num7;
switch ((num4 | num3) - (num4 & num3))
{
case 7:
num = 405090622;
break;
case 5:
exclusions.Add(current);
num = 405090623;
break;
case 3:
num = ((!value) ? 405090619 : 405090616);
break;
case 1:
Save();
num = 405090622;
break;
case 6:
exclusions.Remove(current);
num = 405090623;
break;
case 0:
num = (_200F_200E_200C_206D_202B_206D_200F_202E_202D_206E_202D_200D_206B_206C_206C_206E_206C_202E_202E_202D_206E_200B_202E_200D_202B_206F_200F_206F_202B_202D_202E_202C_200E_206A_200F_206B_206F_206B_206E_200C_202E((IEnumerator)enumerator) ? 405090618 : 405090620);
break;
case 4:
current = enumerator.Current;
value = !exclusions.Contains(current);
num = ((!UiThemeUtils.WrappedCheckbox(_200E_206B_202D_206C_200F_200E_206E_206D_200B_200E_200E_202B_206C_200B_202A_200C_202B_200D_202B_206F_206B_200D_202D_206D_202E_200D_200F_206F_202C_202A_206E_200F_200C_206E_200C_200C_200F_200B_200F_206D_202E(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<string>(1770810253), current), ref value)) ? 405090622 : 405090621);
break;
case 2:
goto end_IL_00ad;
}
continue;
end_IL_00ad:
break;
}
}
finally
{
num = ((enumerator == null) ? 1271604246 : 1271604247);
while (true)
{
int num8 = num;
num3 = 1271604246;
num4 = num8;
int num9 = num4 + num3;
int num10 = num4 & num3;
switch (num9 - (num10 + num10))
{
case 2:
num = 1271604247;
break;
case 0:
goto end_IL_01eb;
case 1:
_206A_206C_200B_200F_202E_200C_200B_200F_206A_206D_206E_202B_206F_202E_202C_206F_202A_200F_200D_200F_206B_202B_206F_200C_200E_200D_200D_202B_200F_206B_200F_202D_206E_206A_202E_200C_202A_202C_206E_206D_202E((IDisposable)enumerator);
num = 1271604246;
break;
}
continue;
end_IL_01eb:
break;
}
}
_202A_200D_200C_206D_202E_206B_202A_206A_202D_206F_202B_206A_206A_200B_206F_200B_200D_206E_206F_200B_200D_206D_202E_200E_206E_206F_202D_202C_206E_200F_202A_200E_202A_202E_202E_200E_200F_200F_200D_200E_202E();
bool value2 = !exclusions.Contains(conditionalFeature);
num = ((!UiThemeUtils.WrappedCheckbox(_200E_206B_202D_206C_200F_200E_206E_206D_200B_200E_200E_202B_206C_200B_202A_200C_202B_200D_202B_206F_206B_200D_202D_206D_202E_200D_200F_206F_202C_202A_206E_200F_200C_206E_200C_200C_200F_200B_200F_206D_202E(global::_003CModule_003E._202E_206C_200F_206B_206A_202A_202C_206F_200C_206C_202B_206B_206D_206D_206D_202D_206E_202E_206C_206E_206D_202C_206F_200D_202D_202E_206A_206D_202A_206A_202B_200D_200C_206D_202B_200B_200D_200C_206E_206B_202E<string>(-1740411969), conditionalFeature), ref value2, conditionalHelpText)) ? (-1644162037) : (-1644162034));
while (true)
{
int num11 = num;
num3 = -1644162038;
num4 = num11;
int num12 = num4 + num3;
int num13 = num4 & num3;
switch (num12 - (num13 + num13))
{
case 6:
Save();
num = -1644162037;
break;
case 5:
exclusions.Clear();
Save();
num = -1644162040;
break;
case 3:
exclusions.Remove(conditionalFeature);
num = -1644162036;
break;
case 7:
num = -1644162034;
break;
case 1:
_202A_200D_200C_206D_202E_206B_202A_206A_202D_206F_202B_206A_206A_200B_206F_200B_200D_206E_206F_200B_200D_206D_202E_200E_206E_206F_202D_202C_206E_200F_202A_200E_202A_202E_202E_200E_200F_200F_200D_200E_202E();
num = ((!UiThemeUtils.DestructiveButton(FontAwesomeIcon.Undo, 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<string>(105765014))) ? (-1644162040) : (-1644162033));
break;
case 0:
exclusions.Add(conditionalFeature);
num = -1644162036;
break;
case 4:
num = ((!value2) ? (-1644162038) : (-1644162039));
break;
case 2:
return;
}
}
}
finally
{
num = ((indentDisposable == null) ? 1350036527 : 1350036526);
while (true)
{
int num14 = num;
num3 = 1350036527;
num4 = num14;
int num15 = num4 + num3;
int num16 = num4 & num3;
switch (num15 - (num16 + num16))
{
case 0:
goto end_IL_039a;
case 1:
_206A_206C_200B_200F_202E_200C_200B_200F_206A_206D_206E_202B_206F_202E_202C_206F_202A_200F_200D_200F_206B_202B_206F_200C_200E_200D_200D_202B_200F_206B_200F_202D_206E_206A_202E_200C_202A_202C_206E_206D_202E((IDisposable)indentDisposable);
num = 1350036527;
break;
case 2:
num = 1350036526;
break;
}
continue;
end_IL_039a:
break;
}
}
}
finally
{
num = ((idDisposable == null) ? (-687515506) : (-687515507));
while (true)
{
int num17 = num;
num3 = -687515508;
num4 = num17;
switch ((num4 | num3) - (num4 & num3))
{
case 2:
goto end_IL_0405;
case 1:
_206A_206C_200B_200F_202E_200C_200B_200F_206A_206D_206E_202B_206F_202E_202C_206F_202A_200F_200D_200F_206B_202B_206F_200C_200E_200D_200D_202B_200F_206B_200F_202D_206E_206A_202E_200C_202A_202C_206E_206D_202E((IDisposable)idDisposable);
num = -687515506;
break;
case 0:
num = -687515507;
break;
}
continue;
end_IL_0405:
break;
}
}
}
}
continue;
IL_0072:
num = -1750707234;
}
}
static void _200D_202C_200F_200F_206B_206B_200C_206F_206C_202A_206D_206C_202D_202A_200D_202A_202C_206D_206A_202A_200F_200B_202B_200F_202D_202E_206D_202D_206F_206D_200E_206C_200D_200F_206C_206D_206B_206B_202E_200E_202E()
{
ImGui.SameLine();
}
static ImRaii.IdDisposable _206B_206F_206E_202A_206A_202C_206A_206E_200F_200F_206E_200B_206F_202A_200F_206C_200F_200C_202D_202C_206F_202E_202C_206C_202E_206E_206D_200C_200F_206A_202D_202A_206B_200D_200F_202B_200E_202A_206B_202B_202E(ImU8String P_0, bool P_1)
{
return ImRaii.PushId(P_0, P_1);
}
static ImRaii.IndentDisposable _206B_200F_206D_200B_206B_202B_202B_206E_200C_206B_202D_200B_206A_206A_202D_202D_202E_206F_200E_206F_206B_206A_206E_206F_202C_200D_200D_200C_202A_202E_206A_206A_206E_200C_200B_206F_200E_200F_200C_206A_202E(int P_0, bool P_1)
{
return ImRaii.PushIndent(P_0, P_1);
}
static string _200E_206B_202D_206C_200F_200E_206E_206D_200B_200E_200E_202B_206C_200B_202A_200C_202B_200D_202B_206F_206B_200D_202D_206D_202E_200D_200F_206F_202C_202A_206E_200F_200C_206E_200C_200C_200F_200B_200F_206D_202E(string P_0, string P_1)
{
return P_0 + P_1;
}
static bool _200F_200E_200C_206D_202B_206D_200F_202E_202D_206E_202D_200D_206B_206C_206C_206E_206C_202E_202E_202D_206E_200B_202E_200D_202B_206F_200F_206F_202B_202D_202E_202C_200E_206A_200F_206B_206F_206B_206E_200C_202E(IEnumerator P_0)
{
return P_0.MoveNext();
}
static void _206A_206C_200B_200F_202E_200C_200B_200F_206A_206D_206E_202B_206F_202E_202C_206F_202A_200F_200D_200F_206B_202B_206F_200C_200E_200D_200D_202B_200F_206B_200F_202D_206E_206A_202E_200C_202A_202C_206E_206D_202E(IDisposable P_0)
{
P_0.Dispose();
}
static void _202A_200D_200C_206D_202E_206B_202A_206A_202D_206F_202B_206A_206A_200B_206F_200B_200D_206E_206F_200B_200D_206D_202E_200E_206E_206F_202D_202C_206E_200F_202A_200E_202A_202E_202E_200E_200F_200F_200D_200E_202E()
{
ImGui.Spacing();
}
}