using TMPro; using uMVVM.Sources.Infrastructure; using UnityEngine; using UnityEngine.UI; namespace Game.MVVM.Model { public class MenuItemView : UnityGuiView { private long id; private string icon; public Button btn; public TMP_Text txtName; protected override void OnInitialize() { base.OnInitialize(); this.Binder.Add("MenuId", this.MenuIdOnValueChanged); this.Binder.Add("MenuName", this.MenuNameOnValueChanged); this.Binder.Add("MenuIcon", this.MenuIconOnValueChanged); this.btn.onClick.AddListener(this.OnClickButton); } private void OnClickButton() { BindingContext.OnClick?.Invoke(this.id.ToString(), this.txtName.text); } private void MenuIdOnValueChanged(long oldvalue, long newvalue) { this.id = newvalue; } private void MenuNameOnValueChanged(string oldvalue, string newvalue) { this.txtName.text = newvalue; } private void MenuIconOnValueChanged(string oldvalue, string newvalue) { this.icon = newvalue; } } }