using Cysharp.Threading.Tasks; using UnityEngine.UIElements; namespace DanieleMarotta.RiversongCodeShowcase { public class HousePanelUpgradeMaterialUIView : UIView { private VisualElement _remaining; private VisualElement _checkIcon; public override UniTask InitializeAsync(UIService uiService, VisualElement rootElement) { base.InitializeAsync(uiService, rootElement); _remaining = rootElement.Q(className: "house-panel__remaining"); _checkIcon = rootElement.Q(className: "house-panel__upgrade-material-check"); _checkIcon.style.display = DisplayStyle.None; return UniTask.CompletedTask; } protected override void OnModelPropertyChanged(object sender, BindablePropertyChangedEventArgs e) { base.OnModelPropertyChanged(sender, e); switch (e.propertyName) { case nameof(HousePanelUpgradeMaterialModel.Done): _remaining.style.display = Model.Done ? DisplayStyle.None : DisplayStyle.Flex; _checkIcon.style.display = Model.Done ? DisplayStyle.Flex : DisplayStyle.None; break; } } } }