using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; namespace MP.Stats.Data { public class MessageService { #region Private Fields private string searchVal; private bool showSearch; #endregion Private Fields #region Public Events public event Action EA_HideSearch; public event Action EA_SearchUpdated; public event Action EA_ShowSearch; #endregion Public Events #region Public Properties public string SearchVal { get => searchVal; set { if (searchVal != value) { searchVal = value; if (EA_SearchUpdated != null) { EA_SearchUpdated?.Invoke(); } } } } public bool ShowSearch { get => showSearch; set { if (showSearch != value) { showSearch = value; if (showSearch) { if (EA_ShowSearch != null) { EA_ShowSearch?.Invoke(); } } else { if (EA_HideSearch != null) { EA_HideSearch?.Invoke(); } } } } } #endregion Public Properties #region Protected Methods protected void ReportSearch() { if (EA_SearchUpdated != null) { EA_SearchUpdated?.Invoke(); } } #endregion Protected Methods } }