Esempio n. 1
0
        /// <summary>
        /// Force closes the window and waits for the process to exit before returning.
        /// </summary>
        public void Close()
        {
            if (!WindowProcess.CloseMainWindow())
            {
                Console.WriteLine("Failed to close main window, killing process");
                WindowProcess.Kill();
            }

            WindowProcess.WaitForExit();
        }
Esempio n. 2
0
        private void OpenChooseGameWindow()
        {
            oldProcess = WzqGameProcess;

            WindowProcess windowProcess = new WindowProcess();

            windowProcess.ProcessWithWindow    = UtilityTool.GetSysProcessWithWindow();;
            windowProcess.MouseMoveWinProcess += WindowProcess_MouseMoveWinProcess;
            windowProcess.MouseDownWinProcess += WindowProcess_MouseDownWinProcess;
            windowProcess.StartGetWinProcess();
        }
Esempio n. 3
0
 public void CloseWindow()
 {
     if (mUILoader == null)
     {
         return;
     }
     if (mWindow != null)
     {
         RemoveFocus(mWindow, true);
         mWindow.Close();
         WindowProcess.Cache(mWindow);
         mWindow = null;
     }
 }
Esempio n. 4
0
 public static void Cache(WindowProcess win)
 {
     if (win == null)
     {
         return;
     }
     win.name        = null;
     win.param       = null;
     win.mActive     = false;
     win.mGameObject = null;
     win.mUILoader   = null;
     win.mFocusState = 0;
     cached_instance.Enqueue(win);
 }
Esempio n. 5
0
        private void OpenChooseGameWindow()
        {
            //设置鼠标光标
            string curFile           = Path.Combine(AppContext.BaseDirectory, "Cursor\\aero_cross_xl.cur");
            IntPtr colorCursorHandle = Win32Helper.LoadCursorFromFile(curFile);

            Win32Helper.SetSystemCursor(colorCursorHandle, Win32Helper.OCR_NORMAL);

            oldProcess = WzqGameProcess;

            windowProcess = new WindowProcess();
            windowProcess.ProcessWithWindow    = UtilityTool.GetSysProcessWithWindow();;
            windowProcess.MouseMoveWinProcess += WindowProcess_MouseMoveWinProcess;
            windowProcess.MouseDownWinProcess += WindowProcess_MouseDownWinProcess;
            windowProcess.StartGetWinProcess();
        }
Esempio n. 6
0
 public void ShowWindow(string windowName, object param, System.Action loadedCallback)
 {
     if (mUILoader == null)
     {
         return;
     }
     if (mWindow != null)
     {
         RemoveFocus(mWindow, true);
         mWindow.Close();
         WindowProcess.Cache(mWindow);
     }
     mWindow = WindowProcess.Get(windowName, param);
     AddFocus(mWindow, true, true);
     mWindow.Start(mUILoader, loadedCallback);
 }
Esempio n. 7
0
            public static WindowProcess Get(string name, object param)
            {
                WindowProcess win = null;

                if (cached_instance.Count > 0)
                {
                    win = cached_instance.Dequeue();
                }
                if (win == null)
                {
                    win = new WindowProcess();
                }
                win.mActive     = false;
                win.mGameObject = null;
                win.mUILoader   = null;
                win.name        = name;
                win.param       = param;
                win.mFocusState = 0;
                return(win);
            }
Esempio n. 8
0
 /// <summary> Create a new display with default <see cref="WndProc(IntPtr, uint, int, int)"/> handler.</summary>
 public Display()
 {
     proc = WndProc;
 }