/// <summary>
        ///     Sets the applicator to apply the specified values to an attached selectable component.
        /// </summary>
        public void SetSelectable(TextStyle textStyle, Sprite normal, Sprite highlight, Sprite pressed, Sprite disabled)
        {
            SetText(textStyle, GetComponentInChildren<Text>());

            Selectable selectable = GetComponent<Selectable>();
            if (selectable != null)
            {
                selectable.image.sprite = normal;
                selectable.image.type = Image.Type.Sliced;

                selectable.transition = Selectable.Transition.SpriteSwap;

                SpriteState spriteState = selectable.spriteState;
                spriteState.highlightedSprite = highlight;
                spriteState.pressedSprite = pressed;
                spriteState.disabledSprite = disabled;
                selectable.spriteState = spriteState;
            }
        }
        /// <summary>
        ///     Sets the applicator to apply a style to the supplied text component.
        /// </summary>
        private static void SetText(TextStyle textStyle, Text textComponent)
        {
            if (textStyle == null || textComponent == null)
            {
                return;
            }

            if (textStyle.Font != null)
            {
                textComponent.font = textStyle.Font;
            }
            textComponent.fontSize = textStyle.Size;
            textComponent.fontStyle = textStyle.Style;
            textComponent.color = textStyle.Colour;
        }
 /// <summary>
 ///     Sets the applicator to apply a style to an attached text component.
 /// </summary>
 public void SetText(TextStyle textStyle)
 {
     SetText(textStyle, GetComponent<Text>());
 }
        /// <summary>
        ///     Sets the applicator to apply the specified values to an attached toggle component.
        /// </summary>
        public void SetToggle(TextStyle textStyle, Sprite normal, Sprite highlight, Sprite pressed, Sprite disabled)
        {
            SetSelectable(textStyle, normal, highlight, pressed, disabled);

            Toggle toggleComponent = GetComponent<Toggle>();
            if (toggleComponent != null)
            {
                Image toggleImage = toggleComponent.graphic as Image;
                if (toggleImage != null)
                {
                    toggleImage.sprite = pressed;
                    toggleImage.type = Image.Type.Sliced;
                }
            }
        }
 /// <summary>
 ///     Sets the applicator to apply a style to an attached text component.
 /// </summary>
 public void SetText(TextStyle textStyle)
 {
     SetText(textStyle, GetComponent <Text>());
 }