| //-------------------------------------------------------- | 
| //    [Author]:           第二世界 | 
| //    [  Date ]:           Thursday, April 18, 2019 | 
| //-------------------------------------------------------- | 
|   | 
| using UnityEngine; | 
| using UnityEngine.UI; | 
|   | 
| namespace vnxbqy.UI | 
| { | 
|   | 
|     public class CustomizedGiftWin : Window | 
|     { | 
|         [SerializeField] ScrollerController m_Controller; | 
|         [SerializeField] Button CloseBtn; | 
|         [SerializeField] TextEx actTime; | 
|         CustomizedGiftModel model { get { return ModelCenter.Instance.GetModel<CustomizedGiftModel>(); } } | 
|         VipModel vipModel { get { return ModelCenter.Instance.GetModel<VipModel>(); } } | 
|         protected override void BindController() | 
|         { | 
|   | 
|         } | 
|   | 
|         protected override void AddListeners() | 
|         { | 
|             CloseBtn.SetListener(CloseClick); | 
|         } | 
|   | 
|         protected override void OnPreOpen() | 
|         { | 
|             m_Controller.OnRefreshCell += OnRefreshCell; | 
|             vipModel.rechargeCountEvent += VipModel_rechargeCountEvent; | 
|             model.UpdateRechargeGiftActEvent += OnUpdateRechargeGiftActEvent;  | 
|             GlobalTimeEvent.Instance.secondEvent += secondEvent; | 
|             secondEvent(); | 
|             DisplayScroll();  | 
|         }  | 
|   | 
|         void VipModel_rechargeCountEvent(int obj)  | 
|         {  | 
|             m_Controller.m_Scorller.RefreshActiveCellViews();  | 
|         } | 
|   | 
|         protected override void OnAfterOpen() | 
|         { | 
|         } | 
|   | 
|         protected override void OnPreClose() | 
|         { | 
|             m_Controller.OnRefreshCell -= OnRefreshCell; | 
|             vipModel.rechargeCountEvent -= VipModel_rechargeCountEvent; | 
|             model.UpdateRechargeGiftActEvent -= OnUpdateRechargeGiftActEvent; | 
|             GlobalTimeEvent.Instance.secondEvent -= secondEvent; | 
|         } | 
|         void secondEvent() | 
|         {  | 
|             OperationBase holiday; | 
|             if (!OperationTimeHepler.Instance.TryGetOperation(CustomizedGiftModel.operaType, out holiday))  | 
|             { | 
|                 return; | 
|             } | 
|             actTime.text = Language.Get("BossFHLanguage2", TimeUtility.SecondsToHMS(holiday.GetResetSurplusTime())); | 
|         } | 
|   | 
|         void OnUpdateRechargeGiftActEvent()  | 
|         {  | 
|             m_Controller.m_Scorller.RefreshActiveCellViews();  | 
|         } | 
|   | 
|         protected override void OnAfterClose() | 
|         { | 
|   | 
|         } | 
|   | 
|         void DisplayScroll() | 
|         { | 
|             m_Controller.Refresh(); | 
|             OperationRechargeGiftAct act; | 
|             OperationTimeHepler.Instance.TryGetOperation(CustomizedGiftModel.operaType, out act);  | 
|   | 
|             for (int i = 0; i <= act.ctgIDs.Count; i++) | 
|             { | 
|                 m_Controller.AddCell(ScrollerDataType.Header, i); | 
|             } | 
|             m_Controller.Restart(); | 
|   | 
|         } | 
|   | 
|         private void OnRefreshCell(ScrollerDataType type, CellView cell) | 
|         { | 
|             var _cell = cell as CustomizedGiftCell; | 
|             _cell.Display(_cell.index); | 
|         } | 
|     } | 
| } |