Exemplo n.º 1
0
        internal static void BeginContainerGUI(GUILayoutUtility.LayoutCache cache, Event evt, IMGUIContainer container)
        {
            bool useOwnerObjectGUIState = container.useOwnerObjectGUIState;

            if (useOwnerObjectGUIState)
            {
                GUIUtility.BeginContainerFromOwner(container.elementPanel.ownerObject);
            }
            else
            {
                GUIUtility.BeginContainer(container.guiState);
            }
            UIElementsUtility.s_ContainerStack.Push(container);
            GUIUtility.s_SkinMode   = (int)container.contextType;
            GUIUtility.s_OriginalID = container.elementPanel.ownerObject.GetInstanceID();
            bool flag = Event.current == null;

            if (flag)
            {
                Event.current = evt;
            }
            else
            {
                Event.current.CopyFrom(evt);
            }
            bool flag2 = UIElementsUtility.s_BeginContainerCallback != null;

            if (flag2)
            {
                UIElementsUtility.s_BeginContainerCallback(container);
            }
            GUI.enabled = container.enabledInHierarchy;
            GUILayoutUtility.BeginContainer(cache);
            GUIUtility.ResetGlobalState();
        }