private void DoLayerField(GameObject go)
{
EditorGUIUtility.labelWidth = s_Styles.layerFieldWidth;
Rect totalPosition = GUILayoutUtility.GetRect(GUIContent.none, s_Styles.layerPopup);
EditorGUI.BeginProperty(totalPosition, GUIContent.none, this.m_Layer);
EditorGUI.BeginChangeCheck();
int layer = EditorGUI.LayerField(totalPosition, EditorGUIUtility.TempContent("Layer"), go.layer, s_Styles.layerPopup);
if (EditorGUI.EndChangeCheck())
{
GameObjectUtility.ShouldIncludeChildren children = GameObjectUtility.DisplayUpdateChildrenDialogIfNeeded(Enumerable.OfType<GameObject>(base.targets), "Change Layer", "Do you want to set layer to " + InternalEditorUtility.GetLayerName(layer) + " for all child objects as well?");
if (children != GameObjectUtility.ShouldIncludeChildren.Cancel)
{
this.m_Layer.intValue = layer;
this.SetLayer(layer, children == GameObjectUtility.ShouldIncludeChildren.IncludeChildren);
}
}
EditorGUI.EndProperty();
}