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); }
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(); } }