Esempio n. 1
0
        public void AddModal(ModalWindow modalWindow)
        {
            modalWindow.Parent = this;

            lock (mModalWindows)
                mModalWindows.Add(modalWindow);
        }
Esempio n. 2
0
        public new void Update()
        {
            //Console.WriteLine("->> {1}: draw: {0}", Name, DateTime.Now.ToString("mm:ss.fff"));
            Redraw();

            VG.vgSeti(VGParamType.VG_MATRIX_MODE, (int)VGMatrixMode.VG_MATRIX_PATH_USER_TO_SURFACE);
            VG.vgLoadIdentity();

            VG.vgSeti(VGParamType.VG_MATRIX_MODE, (int)VGMatrixMode.VG_MATRIX_IMAGE_USER_TO_SURFACE);
            VG.vgLoadIdentity();

            VG.vgSetfv(VGParamType.VG_CLEAR_COLOR, 4, new[] { 1.0f, 1.0f, 0.0f, 0.0f });
            VG.vgClear(0, 0, Width, Height);
            VG.vgFinish();
            //Console.WriteLine("<<- {1}: draw: {0}", Name, DateTime.Now.ToString("mm:ss.fff"));

            //Console.WriteLine("->> {1}: update: {0}", Name, DateTime.Now.ToString("mm:ss.fff"));
            base.Update();
            //Console.WriteLine("<<- {1}: update: {0}", Name, DateTime.Now.ToString("mm:ss.fff"));

            #region Popup window
            ModalWindow popup = null;
            lock (mModalWindows)
            {
                if (mVisibleModal != null)
                {
                    if (mVisibleModal.IsVisible)
                    {
                        popup = mVisibleModal;
                    }
                }

                if (popup == null)
                {
                    foreach (var modalWindow in mModalWindows.Where(modalWindow => modalWindow.IsVisible))
                    {
                        mVisibleModal = modalWindow;
                        popup         = mVisibleModal;
                    }
                }
            }

            if (popup == null)
            {
                return;
            }

            // отрисовываем модальное окно
            popup.Update();
            #endregion
        }