public void process(ModOption option) { if (option.cfgField.getAttr <CustomOrderAttribute>(true) is CustomOrderAttribute customOrder) { option.addHandler(new CustomOrderHandler(customOrder.modIDBefore)); } }
public void process(ModOption option) { if (option.cfgField.getAttr <FieldAttribute>() is FieldAttribute fieldAttr) { if (fieldAttr.tooltipType != null || fieldAttr.tooltip != null) { option.addHandler(new Components.Tooltip.Add(fieldAttr.tooltipType, fieldAttr.tooltip)); } } }
public void process(ModOption option) { if (option.cfgField.getAttr <HideableAttribute>(true) is HideableAttribute hideableAttr) { string groupID = hideableAttr.groupID; if (groupID == null) { option.cfgField.getAttrs <HideableAttribute>(true).forEach(attr => groupID ??= attr.groupID); } option.addHandler(new Components.Hider.Add(hideableAttr.visChecker, groupID)); } }
public void process(ModOption option) { if (processed || !(processed = true)) // process only the first added option { return; } Debug.assert(instance == null); // if this the first option, ModOptions shouldn't be created yet if (option.cfgField.getAttr <NameAttribute>(true) is NameAttribute nameAttr) { if (nameAttr.tooltipType != null || nameAttr.tooltip != null) { option.addHandler(new Components.Tooltip.AddToHeading(nameAttr.tooltipType, nameAttr.tooltip)); } } }