private void UpdateSelection()
        {
            m_SelectedProfile   = null;
            m_SelectedComponent = null;
            m_SelectedState     = null;

            if (Selection.objects.Length == 1)
            {
                if (Selection.objects[0] is FiniteStateMachineProfile)
                {
                    m_SelectedProfile = (FiniteStateMachineProfile)Selection.objects[0];
                }
                else
                {
                    if (Selection.gameObjects.Length == 1)
                    {
                        var component = Selection.gameObjects[0].GetComponent <FiniteStateMachineComponent>();
                        if (component)
                        {
                            m_SelectedComponent = component;
                        }
                    }
                }
            }

            Repaint();
        }
 public override void OnStateExit(FiniteStateMachineComponent component, State state)
 {
     base.OnStateExit(component, state);
     Exited = true;
 }
 public override void OnStateUpdate(FiniteStateMachineComponent component, State state)
 {
     base.OnStateUpdate(component, state);
     Updated++;
 }