public override void OnInspectorGUI()
    {
        // Possible Event States label
        GUILayout.Space(InspectorUtility.columnSize);
        EditorGUILayout.LabelField("All Event States:", EditorStyles.boldLabel);
        GUILayout.Space(5);

        // InfoBox
        GUILayout.BeginHorizontal();
        GUILayout.Space(InspectorUtility.columnSize);
        EditorGUILayout.HelpBox("Select one of the following Events in order to modify its' transitions. Each state will be captured, but nothing will happen unless that Event State has enabled transitions", MessageType.Info);
        GUILayout.EndHorizontal();
        GUILayout.Space(10);

        // Display Event Type buttons / selection grid
        GUILayout.BeginHorizontal();
        GUILayout.Space(InspectorUtility.columnSize);
        _thisEventStateObject.selectedEventTypeInternal = (UIGraphicEventState.EventType)GUILayout.SelectionGrid((int)_thisEventStateObject.selectedEventTypeInternal, InspectorUtility.GetEventsGUIContentArray(), 5);
        GUILayout.EndHorizontal();

        UIGraphicEventState.EventStateSingle foundEventState = null;
        if (_thisEventStateObject.eventStatesCollection == null)
        {
            return;
        }

        if (_thisEventStateObject.eventStatesCollection.ContainsKey(_thisEventStateObject.selectedEventTypeInternal))
        {
            foundEventState = _thisEventStateObject.eventStatesCollection[_thisEventStateObject.selectedEventTypeInternal];
        }

        if (foundEventState != null)
        {
            GUI_ShowUnityEvents(foundEventState);

            // Event Transition Time
            GUILayout.BeginHorizontal();
            GUILayout.Space(InspectorUtility.columnSize);
            foundEventState.allowedTransitionTime = EditorGUILayout.FloatField("Total " + _thisEventStateObject.selectedEventTypeInternal.ToString() + " Event Duration", foundEventState.allowedTransitionTime);
            GUILayout.EndHorizontal();
            ShowTransitionConfiguration(foundEventState);
            ShowVisualizationButtons(foundEventState);
        }
        else
        {
            return;
        }
    }