105 lines
2.6 KiB
C#
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>();
|
|
}
|
|
}
|