private void DoStaticToggleField(GameObject go)
{
Rect rect = GUILayoutUtility.GetRect(GameObjectInspector.s_Styles.staticContent, EditorStyles.toggle, new GUILayoutOption[]
{
GUILayout.ExpandWidth(false)
});
EditorGUI.BeginProperty(rect, GUIContent.none, this.m_StaticEditorFlags);
EditorGUI.BeginChangeCheck();
Rect position = rect;
EditorGUI.showMixedValue |= GameObjectInspector.ShowMixedStaticEditorFlags((StaticEditorFlags)this.m_StaticEditorFlags.intValue);
Event current = Event.current;
EventType type = current.type;
bool flag = current.type == EventType.MouseDown && current.button != 0;
if (flag)
{
current.type = EventType.Ignore;
}
bool flagValue = EditorGUI.ToggleLeft(position, GameObjectInspector.s_Styles.staticContent, go.isStatic);
if (flag)
{
current.type = type;
}
EditorGUI.showMixedValue = false;
if (EditorGUI.EndChangeCheck())
{
SceneModeUtility.SetStaticFlags(base.targets, -1, flagValue);
base.serializedObject.SetIsDifferentCacheDirty();
GUIUtility.ExitGUI();
}
EditorGUI.EndProperty();
}