private void RecordButtonOnGUI() { EditorGUI.BeginChangeCheck(); Color backupColor = GUI.color; if (controlInterface.recording) { Color recordedColor = AnimationMode.recordedPropertyColor; recordedColor.a *= GUI.color.a; GUI.color = recordedColor; } bool recordingEnabled = GUILayout.Toggle(controlInterface.recording, AnimationWindowStyles.recordContent, EditorStyles.toolbarButton); if (EditorGUI.EndChangeCheck()) { if (recordingEnabled) { m_State.StartRecording(); } else { m_State.StopRecording(); // Force refresh in inspector as stopping recording does not invalidate any data. InspectorWindow.RepaintAllInspectors(); } } GUI.color = backupColor; }