//-------∽-★-∽------∽-★-∽--------∽-★-∽数据管理∽-★-∽--------∽-★-∽------∽-★-∽--------// override protected void DestroyPop(IPop pop_) { KUIPop pop = pop_ as KUIPop; pop.Destroy(); AddToTrash(pop); }
//-------∽-★-∽------∽-★-∽--------∽-★-∽垃圾桶∽-★-∽--------∽-★-∽------∽-★-∽--------// void AddToTrash(KUIPop pop_) { int slot = 0; foreach (var kvp in m_trash) { if (!kvp.Value) { slot = kvp.Key; break; } } if (slot == 0) { slot = m_trash.Count + 1; } m_trash[slot] = true; pop_.trashSlot = slot; int dis = m_canvasDisMax + slot * m_canvasDisPer; pop_.sortingLayer = POP_LAYER_IDX.LAYER_NONE; //重置layer,然后会阻挡鼠标事件 pop_.sortingOrder = 0; //不置0会阻挡鼠标事件 pop_.planeDistance = dis; Log.Debug("AddToTrash: " + slot, this); }
void RemoveFromTrash(KUIPop pop_) { if (pop_.trashSlot <= 0) { return; } int slot = pop_.trashSlot; m_trash[slot] = false; Log.Debug("RemoveFromTrash:" + slot, this); }
new public KUIPop GetPopOpened(string popId_) { KUIPop pop = GetPop(popId_); if (pop != null) { if (pop.isOpen) { return(pop); } } return(null); }
//-------∽-★-∽------∽-★-∽--------∽-★-∽层级管理∽-★-∽--------∽-★-∽------∽-★-∽--------// override protected void AddToLayer(IPop pop_) { KUIPop pop = pop_ as KUIPop; pop.popTime = DateUtil.TimeFromStart; //记录开启时间 RemoveFromTrash(pop); if (!m_sortPopCalled) { m_sortPopCalled = true; TimerMgr.inst.CallDelay(OnSortPop); } }