LayoutFarm.UI.GraphicsTimerTaskManager.graphicTimer1_Tick C# (CSharp) Метод

graphicTimer1_Tick() приватный Метод

private graphicTimer1_Tick ( object sender, EventArgs e ) : void
sender object
e System.EventArgs
Результат void
        void graphicTimer1_Tick(object sender, EventArgs e)
        {
            //-------------------------------------------------
            tickAccum += fastPlanInterval;
            //Console.WriteLine("tickaccum:" + tickAccum.ToString());
            //-------------------------------------------------
            bool doCaretPlan = false;
            if (tickAccum > caretBlinkInterval)
            {
                // Console.WriteLine("*********");
                tickAccum = 0;//reset
                doCaretPlan = true;
            }
            //-------------------------------------------------
            int needUpdate = 0;
            if (enableCaretBlink && doCaretPlan)
            {
                //-------------------------------------------------
                //1. fast and animation plan
                //------------------------------------------------- 
                MyIntervalTaskEventArgs args = GetTaskEventArgs();
                int j = this.fastIntervalTaskList.Count;
                if (j > 0)
                {
                    for (int i = 0; i < j; ++i)
                    {
                        fastIntervalTaskList[i].InvokeHandler(args);
                        needUpdate |= args.NeedUpdate;
                    }
                }
                //-------------------------------------------------
                //2. caret plan  
                //------------------------------------------------- 
                j = this.caretIntervalTaskList.Count;
                for (int i = 0; i < j; ++i)
                {
                    caretIntervalTaskList[i].InvokeHandler(args);
                    needUpdate |= args.NeedUpdate;
                }
                FreeTaskEventArgs(args);
            }
            else
            {
                int j = this.fastIntervalTaskList.Count;
                MyIntervalTaskEventArgs args = GetTaskEventArgs();
                if (j > 0)
                {
                    for (int i = 0; i < j; ++i)
                    {
                        fastIntervalTaskList[i].InvokeHandler(args);
                        needUpdate |= args.NeedUpdate;
                    }
                }
                FreeTaskEventArgs(args);
            }


            if (needUpdate > 0)
            {
                this.rootgfx.PrepareRender();
                this.rootgfx.FlushAccumGraphics();
            }
        }
        Stack<MyIntervalTaskEventArgs> taskEventPools = new Stack<MyIntervalTaskEventArgs>();