namespace UnityEngine.Rendering.UI { /// /// DebugUIHandler for vertical layoyut widget. /// public class DebugUIHandlerVBox : DebugUIHandlerWidget { DebugUIHandlerContainer m_Container; internal override void SetWidget(DebugUI.Widget widget) { base.SetWidget(widget); m_Container = GetComponent(); } /// /// OnSelection implementation. /// /// True if the selection wrapped around. /// Previous widget. /// True if the selection is allowed. public override bool OnSelection(bool fromNext, DebugUIHandlerWidget previous) { if (!fromNext && !m_Container.IsDirectChild(previous)) { var lastItem = m_Container.GetLastItem(); DebugManager.instance.ChangeSelection(lastItem, false); return true; } return false; } /// /// Next implementation. /// /// Next widget UI handler, parent if there is none. public override DebugUIHandlerWidget Next() { if (m_Container == null) return base.Next(); var firstChild = m_Container.GetFirstItem(); if (firstChild == null) return base.Next(); return firstChild; } } }