From b171b2c1c234fbe6d4d2a55834433162047f183b Mon Sep 17 00:00:00 2001 From: SimonDarksideJ Date: Sun, 26 Nov 2023 15:26:11 +0000 Subject: [PATCH] Added extra event on the AutoCompleteComboBox, to fire when an item in the list is selected, with its display name Resolves: https://github.com/Unity-UI-Extensions/com.unity.uiextensions/issues/200 --- Runtime/Scripts/Controls/ComboBox/AutoCompleteComboBox.cs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Runtime/Scripts/Controls/ComboBox/AutoCompleteComboBox.cs b/Runtime/Scripts/Controls/ComboBox/AutoCompleteComboBox.cs index 3a7073d..684c323 100644 --- a/Runtime/Scripts/Controls/ComboBox/AutoCompleteComboBox.cs +++ b/Runtime/Scripts/Controls/ComboBox/AutoCompleteComboBox.cs @@ -131,6 +131,9 @@ namespace UnityEngine.UI.Extensions [System.Serializable] public class SelectionValidityChangedEvent : Events.UnityEvent { } + [System.Serializable] + public class ItemSelectedEvent : Events.UnityEvent { } + [System.Serializable] public class ControlDisabledEvent : Events.UnityEvent { } @@ -141,6 +144,8 @@ namespace UnityEngine.UI.Extensions public SelectionValidityChangedEvent OnSelectionValidityChanged; // fires in both cases public SelectionChangedEvent OnSelectionChanged; + // fires when an item is clicked + public ItemSelectedEvent OnItemSelected; // fires when item is changed; public ControlDisabledEvent OnControlDisabled; @@ -358,10 +363,10 @@ namespace UnityEngine.UI.Extensions /// private void OnItemClicked(string item) { - //Debug.Log("item " + item + " clicked"); Text = item; _mainInput.text = Text; ToggleDropdownPanel(true); + OnItemSelected?.Invoke(Text); } private void RedrawPanel()