コード例 #1
0
        internal void EndLayout()
        {
            if (EntriesCount > 0)
            {
                PreLayoutRequest();

                ++Parent.EntriesCount;
                Parent.RegisterEntry(RequestedSize.x, RequestedSize.y);
            }

            LayoutState = LayoutStateOptions.Cached;
        }
コード例 #2
0
        // Returns [true] if layout must be recalculated
        // Returns [false] if layout can be skipped
        internal bool BeginLayout(LayoutGroup parent)
        {
            if (parent.LayoutState == LayoutStateOptions.FullRebuild)
            {
                LayoutState = LayoutStateOptions.FullRebuild;
            }

            if (LayoutState != LayoutStateOptions.Cached)
            {
                BeginLayoutInternal(parent);
                return(true);
            }

            Parent = parent;
            ++parent.EntriesCount;
            parent.RegisterEntry(RequestedSize.x, RequestedSize.y);
            return(false);
        }
コード例 #3
0
 private void MarkLayoutDirty(LayoutStateOptions option)
 {
     LayoutState = option;
     Parent?.MarkLayoutDirty(LayoutStateOptions.NodeReduild);
 }
コード例 #4
0
 private void EndRootLayout()
 {
     GUILayoutUtility.GetRect(RequestedSize.x, RequestedSize.y);
     LayoutState = LayoutStateOptions.Cached;
 }