From 8263edd59284aba390aca011d25b79efecef4c48 Mon Sep 17 00:00:00 2001 From: pryazha Date: Wed, 2 Jul 2025 08:46:23 -0700 Subject: init --- .../Scripts/ToggleGraphicToggler.cs | 55 ++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 Assets/Samples/XR Interaction Toolkit/3.1.2/Hands Interaction Demo/HandsDemoSceneAssets/Scripts/ToggleGraphicToggler.cs (limited to 'Assets/Samples/XR Interaction Toolkit/3.1.2/Hands Interaction Demo/HandsDemoSceneAssets/Scripts/ToggleGraphicToggler.cs') diff --git a/Assets/Samples/XR Interaction Toolkit/3.1.2/Hands Interaction Demo/HandsDemoSceneAssets/Scripts/ToggleGraphicToggler.cs b/Assets/Samples/XR Interaction Toolkit/3.1.2/Hands Interaction Demo/HandsDemoSceneAssets/Scripts/ToggleGraphicToggler.cs new file mode 100644 index 0000000..3fb0acc --- /dev/null +++ b/Assets/Samples/XR Interaction Toolkit/3.1.2/Hands Interaction Demo/HandsDemoSceneAssets/Scripts/ToggleGraphicToggler.cs @@ -0,0 +1,55 @@ +using UnityEngine.UI; + +namespace UnityEngine.XR.Interaction.Toolkit.Samples.Hands +{ + /// + /// Toggles between two graphic objects based on the state of a toggle. + /// + [RequireComponent(typeof(Toggle))] + public class ToggleGraphicToggler : MonoBehaviour + { + [SerializeField] + [Tooltip("Graphic object representing the toggle on position.")] + Graphic m_ToggleOnGraphic; + + [SerializeField] + [Tooltip("Graphic object representing the toggle off position.")] + Graphic m_ToggleOffGraphic; + + Toggle m_TargetToggle; + + /// + /// See . + /// + void Awake() + { + m_TargetToggle = GetComponent(); + } + + /// + /// See . + /// + void OnEnable() + { + m_TargetToggle.onValueChanged.AddListener(OnToggleValueChanged); + } + + /// + /// See . + /// + void OnDisable() + { + m_TargetToggle.onValueChanged.RemoveListener(OnToggleValueChanged); + } + + void OnToggleValueChanged(bool isOn) + { + if (isOn) + m_TargetToggle.targetGraphic = m_ToggleOnGraphic; + else + m_TargetToggle.targetGraphic = m_ToggleOffGraphic; + + m_ToggleOnGraphic.gameObject.SetActive(isOn); + } + } +} -- cgit v1.2.3-70-g09d2