private static void DrawModCompatSettings(Rect region) { var listing = new Listing_Standard(); listing.Begin(region); listing.ModGroupHeader("Humanoid Alien Races", HarModId, false); listing.CheckboxLabeled("TKUtils.HAR.PawnKinds.Label".TranslateSimple(), ref TkSettings.PurchasePawnKinds); listing.DrawDescription("TKUtils.HAR.PawnKinds.Description".TranslateSimple()); listing.ModGroupHeader("A RimWorld of Magic", MagicModId); listing.CheckboxLabeled("TKUtils.TMagic.Classes.Label".TranslateSimple(), ref TkSettings.ClassChanges); listing.DrawDescription("TKUtils.TMagic.Classes.Description".TranslateSimple()); listing.DrawExperimentalNotice(); if (TkSettings.ClassChanges) { listing.CheckboxLabeled("TKUtils.TMagic.ResetClass.Label".TranslateSimple(), ref TkSettings.ResetClass); listing.DrawDescription("TKUtils.TMagic.ResetClass.Description".TranslateSimple()); listing.DrawExperimentalNotice(); } listing.ModGroupHeader("Visual Exceptions", VisualExceptionsModId); listing.CheckboxLabeled("TKUtils.VisualExceptions.SendErrors.Label".TranslateSimple(), ref TkSettings.VisualExceptions); listing.DrawDescription("TKUtils.VisualExceptions.SendErrors.Description".TranslateSimple()); listing.DrawExperimentalNotice(); listing.End(); }
private void DrawCommandTweakSettings(Rect region) { var listing = new Listing_Standard(); var viewPort = new Rect(0f, 0f, region.width - 16f, Text.LineHeight * 48f); GUI.BeginGroup(region); Widgets.BeginScrollView(region.AtZero(), ref _commandTweakPos, viewPort); listing.Begin(viewPort); listing.GroupHeader(_balanceGroupHeader, false); listing.CheckboxLabeled(_coinRateLabel, ref TkSettings.ShowCoinRate); listing.DrawDescription(_coinRateDescription); listing.GroupHeader(_commandHandlerGroupHeader); if (TkSettings.Commands) { (Rect prefixLabel, Rect prefixField) = listing.Split(); UiHelper.Label(prefixLabel, _commandPrefixLabel); listing.DrawDescription(_commandPrefixDescription); TkSettings.Prefix = CommandHelper.ValidatePrefix(Widgets.TextField(prefixField, TkSettings.Prefix)); (Rect buyPrefixLabel, Rect buyPrefixField) = listing.Split(); UiHelper.Label(buyPrefixLabel, _purchasePrefixLabel); listing.DrawDescription(_purchasePrefixDescription); TkSettings.BuyPrefix = CommandHelper.ValidatePrefix(Widgets.TextField(buyPrefixField, TkSettings.BuyPrefix)); } listing.CheckboxLabeled(_commandParserLabel, ref TkSettings.Commands); listing.DrawDescription(_commandParserDescription); if (TkSettings.Commands) { listing.CheckboxLabeled(_toolkitStyleLabel, ref TkSettings.ToolkitStyleCommands); listing.DrawDescription(_toolkitStyleDescription); } if (UiHelper.LabeledPaintableCheckbox(listing.GetRect(Text.LineHeight), _commandRouterLabel, ref TkSettings.CommandRouter)) { RuntimeChecker.ValidateTicker(); } listing.DrawDescription(_commandRouterDescription); listing.DrawExperimentalNotice(); listing.GroupHeader(_installedModsGroupHeader); listing.CheckboxLabeled(_decorateUtilsLabel, ref TkSettings.DecorateMods); listing.DrawDescription(_decorateUtilsDescription); listing.CheckboxLabeled(_versionedModListLabel, ref TkSettings.VersionedModList); listing.DrawDescription(_versionedModListDescription); listing.GroupHeader(_buyItemGroupHeader); listing.CheckboxLabeled(_buyItemBalanceLabel, ref TkSettings.BuyItemBalance); listing.DrawDescription(_buyItemBalanceDescription); listing.CheckboxLabeled(_itemSyntaxLabel, ref TkSettings.ForceFullItem); listing.DrawDescription(_itemSyntaxDescription); listing.GroupHeader(_lookupGroupHeader); (Rect limitLabel, Rect limitField) = listing.Split(); var buffer = TkSettings.LookupLimit.ToString(); UiHelper.Label(limitLabel, _lookupLimitLabel); Widgets.TextFieldNumeric(limitField, ref TkSettings.LookupLimit, ref buffer); listing.DrawDescription(_lookupLimitDescription); GUI.EndGroup(); Widgets.EndScrollView(); listing.End(); }
private void DrawDataSettings(Rect region) { var view = new Rect(0f, 0f, region.width - 16f, Text.LineHeight * 32f); var listing = new Listing_Standard(); GUI.BeginGroup(region); Widgets.BeginScrollView(region.AtZero(), ref _dataScrollPos, view); listing.Begin(view); listing.GroupHeader(_filesGroupHeader, false); (Rect dumpLabel, Rect dumpBtn) = listing.Split(); UiHelper.Label(dumpLabel, _dumpStyleLabel); listing.DrawDescription(_dumpStyleDescription); if (Widgets.ButtonText(dumpBtn, $"TKUtils.DumpStyle.{TkSettings.DumpStyle}".Translate())) { Find.WindowStack.Add(_dumpStyleMenu); } listing.CheckboxLabeled(_minifyDataLabel, ref TkSettings.MinifyData); listing.DrawDescription(_minifyDataDescription); listing.CheckboxLabeled(_offloadShopLabel, ref TkSettings.Offload); listing.DrawDescription(_offloadShopDescription); listing.DrawExperimentalNotice(); listing.CheckboxLabeled(_asapPurchasesLabel, ref TkSettings.AsapPurchases); listing.DrawDescription(_asapPurchasesDescription); listing.DrawExperimentalNotice(); listing.CheckboxLabeled(_trueNeutralLabel, ref TkSettings.TrueNeutral); listing.DrawDescription(_trueNeutralDescription); listing.DrawExperimentalNotice(); (Rect coinTypeLabel, Rect coinTypeField) = listing.Split(); UiHelper.Label(coinTypeLabel, _broadcasterTypeLabel); listing.DrawDescription(_broadcasterTypeDescription); listing.DrawExperimentalNotice(); if (Widgets.ButtonText(coinTypeField, $"TKUtils.BroadcasterUserType.{TkSettings.BroadcasterCoinType}".Translate())) { Find.WindowStack.Add(_broadcasterUserTypeMenu); } listing.GroupHeader(_lazyProcessGroupHeader); (Rect storeLabel, Rect storeField) = listing.Split(); UiHelper.Label(storeLabel, _storeRateLabel); listing.DrawDescription(_storeRateDescription); if (UiHelper.NumberField(storeField, out int value, ref _buildRateBuffer, ref _buildRateBufferValid)) { TkSettings.StoreBuildRate = value; } listing.End(); Widgets.EndScrollView(); GUI.EndGroup(); }