Ejemplo n.º 1
0
 static public int ChangeWindowRenderQueue(IntPtr l)
 {
     try {
         UI.Controller.ControllerBase self = (UI.Controller.ControllerBase)checkSelf(l);
         self.ChangeWindowRenderQueue();
         pushValue(l, true);
         return(1);
     }
     catch (Exception e) {
         return(error(l, e));
     }
 }
Ejemplo n.º 2
0
 /// <summary>
 /// 重置所有界面的renderQueue(关闭界面时不管,打开一个界面时才重置)
 /// </summary>
 public static void autoResetAllRenderQueue()
 {
     curDepth = new Dictionary <UILevel, int>()
     {
         { UILevel.BACKGROUND, UIDepth.BACKGROUND },
         { UILevel.NORMAL, UIDepth.NORMAL },
         { UILevel.HIGHT, UIDepth.HIGHT },
         { UILevel.TOP, UIDepth.TOP },
         { UILevel.TOP_HIGHT, UIDepth.TOP_HIGHT },
         { UILevel.TOP_TOP, UIDepth.TOP_TOP },
     };
     foreach (string uiName in showingWindows)
     {
         ControllerBase contro = GetControler(uiName);
         int            nDepth = AddCurDepth(contro.ELevel);
         if (contro.windDepth != nDepth)//depth发生改变时,才重置renderQueue
         {
             contro.SetWinRenderQueue(nDepth);
             contro.autoResetScrollViewRenderQueue();
             contro.ChangeWindowRenderQueue();
         }
     }
 }