Ejemplo n.º 1
0
        private void PostDisplaySetup()
        {
            if (m_Content.childCount != 2)
            {
                return;
            }

            m_LeftPane     = m_Content[0];
            m_MinLeftWidth = m_LeftPane.resolvedStyle.minWidth.value;
            m_MaxLeftWidth = m_LeftPane.resolvedStyle.maxWidth.value;
            if (m_MaxLeftWidth <= m_MinLeftWidth)
            {
                m_MaxLeftWidth = float.MaxValue;
            }

            m_InitialLeftWidth = Mathf.Max(m_InitialLeftWidth, m_MinLeftWidth);
            if (m_LeftWidth == 0)
            {
                m_LeftWidth = m_InitialLeftWidth;
            }

            m_LeftPane.style.flexShrink = 0;
            m_LeftPane.style.width      = m_LeftWidth;

            m_RightPane     = m_Content[1];
            m_MinRightWidth = m_RightPane.resolvedStyle.minWidth.value;

            m_RightPane.style.flexGrow   = 1;
            m_RightPane.style.flexShrink = 0;
            m_RightPane.style.flexBasis  = 0;

            m_DragLineAnchor.style.left = m_LeftWidth;

            m_AnchorManipulator = new AnchorManipulator(this);
            m_DragLineAnchor.AddManipulator(m_AnchorManipulator);

            onSizeChanged?.Invoke(m_LeftWidth);

            UnregisterCallback <GeometryChangedEvent>(OnPostDisplaySetup);
            RegisterCallback <GeometryChangedEvent>(OnSizeChange);
        }
Ejemplo n.º 2
0
        private void Init(float fixedPaneInitialDimension)
        {
            m_MinLeftWidth     = 0;
            m_MaxLeftWidth     = float.MaxValue;
            m_MinRightWidth    = 0;
            m_InitialLeftWidth = fixedPaneInitialDimension;

            style.minWidth = m_InitialLeftWidth;

            if (m_AnchorManipulator != null)
            {
                m_DragLineAnchor.RemoveManipulator(m_AnchorManipulator);
                m_AnchorManipulator = null;
            }

            if (m_Content.childCount != 2)
            {
                RegisterCallback <GeometryChangedEvent>(OnPostDisplaySetup);
            }
            else
            {
                PostDisplaySetup();
            }
        }