BetterDropdown.cs 978 B

1234567891011121314151617181920212223242526272829303132
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using UnityEngine;
  6. using UnityEngine.UI;
  7. namespace TheraBytes.BetterUi
  8. {
  9. [HelpURL("https://documentation.therabytes.de/better-ui/BetterDropdown.html")]
  10. [AddComponentMenu("Better UI/Controls/Better Dropdown", 30)]
  11. public class BetterDropdown : Dropdown, IBetterTransitionUiElement
  12. {
  13. public List<Transitions> BetterTransitions { get { return betterTransitions; } }
  14. [SerializeField, DefaultTransitionStates]
  15. List<Transitions> betterTransitions = new List<Transitions>();
  16. protected override void DoStateTransition(SelectionState state, bool instant)
  17. {
  18. base.DoStateTransition(state, instant);
  19. if (!(base.gameObject.activeInHierarchy))
  20. return;
  21. foreach (var info in betterTransitions)
  22. {
  23. info.SetState(state.ToString(), true);
  24. }
  25. }
  26. }
  27. }