// 本脚本只在不存在时会生成一次。已存在不会再次生成覆盖

using Fantasy;
using UnityEngine;
using NBC;
using NBF.Fishing2;

namespace NBF
{
    public partial class ItemDetailsPanel : UIPanel
    {
        public ItemInfo ItemInfo;

        // public 
        protected override void OnInit()
        {
            base.OnInit();
        }

        protected override void OnShow()
        {
            InputManager.Instance.On(this);
            ItemInfo = GetData() as ItemInfo;
            if (ItemInfo == null || ItemInfo.Config == null)
            {
                Hide();
                return;
            }

            Quality.SetQuality(ItemInfo.Config.Quality);

            Content.Gear.visible = true;
            Content.Basic.SetInfo(ItemInfo);
            Content.Gear.SetInfo(ItemInfo);

            // var model = PrefabsHelper.CreatePrefab(ItemInfo.Config.Model);
            Model.SetData(ItemInfo);
            // Model.SetBackground(Back);
        }

        #region UI事件

        //
        // [InputInvoke(InputDef.UI.Prev, UIInputButtonShowMode.MenuLeft)]
        // private void OnPrev()
        // {
        //     ItemList.Menu.OnClickBtnPrev();
        // }
        //
        // [InputInvoke(InputDef.UI.Next, UIInputButtonShowMode.MenuRight)]
        // private void OnNext()
        // {
        //     ItemList.Menu.OnClickBtnNext();
        // }
        //
        // [InputInvoke(InputDef.UI.Left, UIInputButtonShowMode.BottomLeft)]
        // private void OnLeft()
        // {
        //     ItemList.List.Selector.Left();
        // }
        //
        // [InputInvoke(InputDef.UI.Right, UIInputButtonShowMode.BottomLeft)]
        // private void OnRight()
        // {
        //     ItemList.List.Selector.Right();
        // }
        //
        // [InputInvoke(InputDef.UI.Up, UIInputButtonShowMode.BottomLeft)]
        // private void OnUp()
        // {
        //     ItemList.List.Selector.Up();
        //     // ChangeListSelected();
        // }
        //
        // [InputInvoke(InputDef.UI.Down, UIInputButtonShowMode.BottomLeft)]
        // private void OnDown()
        // {
        //     ItemList.List.Selector.Down();
        // }
        //
        // [InputInvoke(InputDef.UI.Enter, UIInputButtonShowMode.BottomLeft, "查看")]
        // private void OnApplySettings()
        // {
        //     var selectedItem = ItemList.List.Selector.SelectedItem;
        //     if (selectedItem != null)
        //     {
        //         ItemList.List.InvokeClickItem(selectedItem);
        //     }
        // }


        [InputInvoke(InputDef.UI.Back, UIInputButtonShowMode.BottomRight)]
        private void OnBack()
        {
            Hide();
        }

        #endregion

        // private void OnUICanceled(string action)
        // {
        //     if (!IsTop) return;
        //     if (action == InputDef.UI.SubPrev)
        //     {
        //     }
        //     else if (action == InputDef.UI.SubNext)
        //     {
        //     }
        //     else if (action == InputDef.UI.Up)
        //     {
        //     }
        //     else if (action == InputDef.UI.Down)
        //     {
        //     }
        // }


        protected override void OnHide()
        {
            InputManager.Instance.Off(this);
            Model.UnloadModel();
        }
    }
}