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