//private void createAngles()
    //{
    //    itemSize = iconPrefab.GetComponent<RectTransform>().sizeDelta.y / 2.0f;

    //    angles = new float[infiniteModeTreshold + 1];
    //    angles[0] = angleOffset;

    //    for (int i = 1; i < infiniteModeTreshold; i++)
    //    {
    //        float scalePrev = Mathf.Clamp(1f - 0.1f * (i - 1), 0.5f, 1f);
    //        float scaleCurr = Mathf.Clamp(1f - 0.1f * i, 0.5f, 1f);

    //        float anglePrev = ((scalePrev * itemSize) / (2.0f * Mathf.PI * (radius + itemSize * scalePrev))) * 360.0f;
    //        float angleCurr = ((scaleCurr * itemSize) / (2.0f * Mathf.PI * (radius + itemSize * scaleCurr))) * 360.0f;

    //        angles[i] = angles[i - 1] + anglePrev + angleCurr + angleGap;
    //    }

    //    angles[0] -= 2;
    //}

    private UITextButton createQuickMenuItem(QuickMenuInteraction interaction)
    {
        UITextButton button = Instantiate(buttonPrefab);

        button.text = interaction.label;
        // button.SetIconSprite(interaction.GetIcon());
        //iconButton.angles = angles;
        //iconButton.radius = radius;
        //iconButton.size = itemSize;

        button.onClick.AddListener(() => interactionClicked(interaction));
        button.onSelect.AddListener(() => updateSelection(interaction));



        return(button);
    }
    private void interactionClicked(QuickMenuInteraction interaction)
    {
        audioSource.PlayOneShot(interaction.sound);

        interaction.Interact(avatarController);

        menu = GetComponentInParent <UIQuickMenu>();

        switch (interaction.quickMenuBehaviour)
        {
        case QuickMenuBehaviourType.Close:
            menu.Close();
            break;

        case QuickMenuBehaviourType.NavigateUp:
            menu.GoBack();
            break;

        case QuickMenuBehaviourType.Refresh:
            updateView(collection);
            break;
        }
    }
    //private void updateIconPositions()
    //{
    //    if (!infiniteMode)
    //    {
    //        for (int i = 0; i < icons.Count; i++)
    //        {
    //            icons[i].SetPosition(Mathf.Repeat(i - index, interactions.Length));
    //        }
    //    }
    //    else
    //    {
    //        for (int i = 0; i < icons.Count; i++)
    //        {
    //            icons[i].SetPosition(specialClamp(i - index, infiniteModeTreshold - 1));
    //        }
    //    }
    //}

    //private float specialClamp(int p1, int max)
    //{
    //    return Mathf.Repeat(p1, max);
    //}

    private void updateSelection(QuickMenuInteraction interaction)
    {
        // updateText(interaction);
    }