public override CustomListTableData.CustomCellInfo CellInfoForIdx(int idx) { var model = flowCoordinator.Value.AllConfigModels[idx]; var customCellInfo = new CountersPlusListTableCell(idx, model.DisplayName); if (model is CustomConfigModel customConfig) { customCellInfo.text = customConfig.AttachedCustomCounter.Name; if (customConfig.AttachedCustomCounter.BSML != null && !string.IsNullOrEmpty(customConfig.AttachedCustomCounter.BSML.Icon)) { try { customCellInfo.icon = ImagesUtility.LoadSpriteFromExternalAssemblyResources( customConfig.AttachedCustomCounter.CounterType.Assembly, customConfig.AttachedCustomCounter.BSML.Icon); } catch { customCellInfo.icon = LoadSprite("Counters.Custom"); customCellInfo.subtext = "\n<i>(Failed to load custom icon.)</i>"; } } else { customCellInfo.icon = LoadSprite("Counters.Custom"); } } else { customCellInfo.icon = LoadSprite($"Counters.{model.DisplayName}"); } return(customCellInfo); }