Files
2026-06-04 11:42:34 +02:00

105 lines
2.6 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using UnityEngine.EventSystems;
namespace UnityEngine.UI
{
// Token: 0x02000081 RID: 129
[AddComponentMenu("UI/Toggle Group", 32)]
[DisallowMultipleComponent]
public class ToggleGroup : UIBehaviour
{
// Token: 0x060004DD RID: 1245 RVA: 0x0001A35C File Offset: 0x0001875C
protected ToggleGroup()
{
}
// Token: 0x17000156 RID: 342
// (get) Token: 0x060004DE RID: 1246 RVA: 0x0001A378 File Offset: 0x00018778
// (set) Token: 0x060004DF RID: 1247 RVA: 0x0001A393 File Offset: 0x00018793
public bool allowSwitchOff
{
get
{
return this.m_AllowSwitchOff;
}
set
{
this.m_AllowSwitchOff = value;
}
}
// Token: 0x060004E0 RID: 1248 RVA: 0x0001A39D File Offset: 0x0001879D
private void ValidateToggleIsInGroup(Toggle toggle)
{
if (toggle == null || !this.m_Toggles.Contains(toggle))
{
throw new ArgumentException(string.Format("Toggle {0} is not part of ToggleGroup {1}", new object[] { toggle, this }));
}
}
// Token: 0x060004E1 RID: 1249 RVA: 0x0001A3DC File Offset: 0x000187DC
public void NotifyToggleOn(Toggle toggle)
{
this.ValidateToggleIsInGroup(toggle);
for (int i = 0; i < this.m_Toggles.Count; i++)
{
if (!(this.m_Toggles[i] == toggle))
{
this.m_Toggles[i].isOn = false;
}
}
}
// Token: 0x060004E2 RID: 1250 RVA: 0x0001A43D File Offset: 0x0001883D
public void UnregisterToggle(Toggle toggle)
{
if (this.m_Toggles.Contains(toggle))
{
this.m_Toggles.Remove(toggle);
}
}
// Token: 0x060004E3 RID: 1251 RVA: 0x0001A45E File Offset: 0x0001885E
public void RegisterToggle(Toggle toggle)
{
if (!this.m_Toggles.Contains(toggle))
{
this.m_Toggles.Add(toggle);
}
}
// Token: 0x060004E4 RID: 1252 RVA: 0x0001A480 File Offset: 0x00018880
public bool AnyTogglesOn()
{
return this.m_Toggles.Find((Toggle x) => x.isOn) != null;
}
// Token: 0x060004E5 RID: 1253 RVA: 0x0001A4C4 File Offset: 0x000188C4
public IEnumerable<Toggle> ActiveToggles()
{
return this.m_Toggles.Where((Toggle x) => x.isOn);
}
// Token: 0x060004E6 RID: 1254 RVA: 0x0001A504 File Offset: 0x00018904
public void SetAllTogglesOff()
{
bool allowSwitchOff = this.m_AllowSwitchOff;
this.m_AllowSwitchOff = true;
for (int i = 0; i < this.m_Toggles.Count; i++)
{
this.m_Toggles[i].isOn = false;
}
this.m_AllowSwitchOff = allowSwitchOff;
}
// Token: 0x04000251 RID: 593
[SerializeField]
private bool m_AllowSwitchOff = false;
// Token: 0x04000252 RID: 594
private List<Toggle> m_Toggles = new List<Toggle>();
}
}