using UnityEditor.U2D.Animation; using UnityEngine.UIElements; namespace UnityEditor.U2D.Layout { internal class LayoutOverlay : VisualElement { public class LayoutOverlayFactory : UxmlFactory {} public class LayoutOverlayUxmlTraits : UxmlTraits {} private ScrollableToolbar m_HorizontalToolbar; private ScrollableToolbar m_VerticalToolbar; private VisualElement m_HorizontalHolder; private VisualElement m_LeftOverlay; private VisualElement m_RightOverlay; private DropdownMenu m_DropdownOverlay; public ScrollableToolbar horizontalToolbar { get { if (m_HorizontalToolbar == null) m_HorizontalToolbar = this.Q("HorizontalToolbar"); return m_HorizontalToolbar; } } public ScrollableToolbar verticalToolbar { get { if (m_VerticalToolbar == null) m_VerticalToolbar = this.Q("VerticalToolbar"); return m_VerticalToolbar; } } public VisualElement horizontalHolder { get { if (m_HorizontalHolder == null) m_HorizontalHolder = this.Q("HorizontalHolder"); return m_HorizontalHolder; } } public VisualElement leftOverlay { get { if (m_LeftOverlay == null) m_LeftOverlay = this.Q("LeftOverlay"); return m_LeftOverlay; } } public VisualElement rightOverlay { get { if (m_RightOverlay == null) m_RightOverlay = this.Q("RightOverlay"); return m_RightOverlay; } } public void VisibilityWindowOn(bool on) { if(on) rightOverlay.AddToClassList("VisibilityWindowOn"); else rightOverlay.RemoveFromClassList("VisibilityWindowOn"); } public DropdownMenu dropdownOverlay { get { if (m_DropdownOverlay == null) m_DropdownOverlay = this.Q("DropdownOverlay"); return m_DropdownOverlay; } } public bool hasScrollbar { get { return this.ClassListContains("HasScrollbar"); } set { if (value) this.AddToClassList("HasScrollbar"); else this.RemoveFromClassList("HasScrollbar"); } } public LayoutOverlay() { this.StretchToParentSize(); styleSheets.Add(ResourceLoader.Load("LayoutOverlay/LayoutOverlayStyle.uss")); } } }