UnityEditor.Editor.GetOptimizedGUIBlockImplementation C# (CSharp) Method

GetOptimizedGUIBlockImplementation() private method

private GetOptimizedGUIBlockImplementation ( bool isDirty, bool isVisible, OptimizedGUIBlock &block, float &height ) : bool
isDirty bool
isVisible bool
block OptimizedGUIBlock
height float
return bool
        internal bool GetOptimizedGUIBlockImplementation(bool isDirty, bool isVisible, out OptimizedGUIBlock block, out float height)
        {
            if (this.m_OptimizedBlock == null)
            {
                this.m_OptimizedBlock = new OptimizedGUIBlock();
            }
            block = this.m_OptimizedBlock;
            if (!isVisible)
            {
                height = 0f;
                return true;
            }
            if (this.m_SerializedObject == null)
            {
                this.m_SerializedObject = new SerializedObject(this.targets);
            }
            else
            {
                this.m_SerializedObject.Update();
            }
            this.m_SerializedObject.inspectorMode = this.m_InspectorMode;
            SerializedProperty iterator = this.m_SerializedObject.GetIterator();
            height = 2f;
            for (bool flag2 = true; iterator.NextVisible(flag2); flag2 = false)
            {
                height += EditorGUI.GetPropertyHeight(iterator, null, true) + 2f;
            }
            if (height == 2f)
            {
                height = 0f;
            }
            return true;
        }