public override bool Draw() { PreDraw(); if (methodNode.IsHided) { return(false); } GUILayout.Space(METHOD_MARGIN); Rect rect = EditorGUILayout.BeginHorizontal(); if (currentPlayingTest.Node == methodNode) { DrawCurrentTestBackground(rect); } else { DrawBackgroundIfSelected(rect); } GUILayout.Space(20); HandleKeyboardEvent(RunTest); var prevSelection = methodNode.IsSelected; DrawTestLine(rect, () => { selectedNode.UpdateSelectedNode(methodNode); }, () => { methodNode.ResetTestState(); PlayModeTestRunner.RunTestByDoubleClick( PlayModeTestRunner.SpecificTestType.Method, methodNode); }, () => { selectedNode.UpdateSelectedNode(methodNode); drawContextMenu = true; }, NamePostfix()); bool isDirty = prevSelection != methodNode.IsSelected; EditorGUILayout.EndHorizontal(); return(isDirty); }