/// <summary>
        /// The Neural Network Dropdown List
        /// For selecting the current neural network
        /// </summary>
        /// <param name="neuralNetsArray"></param>
        void ShowNeuralNetPopup(string[] neuralNetsArray)
        {
            selectedNeuralNetIndex = Array.IndexOf(neuralNetsArray, gestureSettings.currentNeuralNet);
            //
            lastSelectedNeuralNetIndex = Array.IndexOf(neuralNetsArray, gestureSettings.currentNeuralNet);

            // If the choice is not in the array then the _choiceIndex will be -1 so set back to 0
            if (selectedNeuralNetIndex < 0)
            {
                selectedNeuralNetIndex = 0;
            }

            if (Event.current.type == EventType.ExecuteCommand)
            {
                //Debug.Log("execute command");
                gestureSettings.RefreshGestureBank(false);
            }

            EditorGUI.BeginChangeCheck();
            selectedNeuralNetIndex = EditorGUILayout.Popup(selectedNeuralNetIndex, neuralNetsArray);
            if (EditorGUI.EndChangeCheck())
            {
                // Update the selected choice in the underlying object
                if (neuralNetsArray.Length > 0)
                {
                    gestureSettings.SelectNeuralNet(neuralNetsArray[selectedNeuralNetIndex]);
                }
                else
                {
                    gestureSettings.gestureBank      = null;
                    gestureSettings.currentNeuralNet = null;
                }
            }
        }
        void AddSelectNeuralNetListener(int index)
        {
            string neuralNetName = gestureSettings.neuralNets[index];

            neuralNetButtons[index].onClick.AddListener(() => gestureSettings.SelectNeuralNet(neuralNetName));
        }