Esempio n. 1
0
 private void editor_Exited(object sender, EventArgs e)
 {
     _triggerExit = false;
     SetRestoreSize();
     ChildTracker.Unhook();
     Environment.Exit(0);
 }
Esempio n. 2
0
        private void DockWindow()
        {
            var process = Process.GetProcessesByName("sublime_text");

            if (process.Length == 0)
            {
                DialogResult answer = MessageBox.Show(@"Please launch Sublime and click Retry", @"Launch the editor", MessageBoxButtons.RetryCancel, MessageBoxIcon.Warning);
                if (answer == DialogResult.Retry)
                {
                    DockWindow();
                }
                else
                {
                    Environment.Exit(0);
                }
                return;
            }
            pDocked = process.First();
            pDocked.EnableRaisingEvents = true;
            pDocked.Exited += editor_Exited;
            ChildTracker.RestoreWindow(pDocked.MainWindowHandle);
            HideTitleBar(pDocked.MainWindowHandle);
            NativeMethods.SetWindowLong(pDocked.MainWindowHandle, -8 /* OWNER */, (int)container.Handle);
            RestorePreviousSize();
            FitToWindow();
            InvalidateWindow(pDocked.MainWindowHandle);
            NativeMethods.SendMessage(pDocked.MainWindowHandle, 0x000F /* WMPAINT */, UIntPtr.Zero, IntPtr.Zero);
        }
Esempio n. 3
0
 private void HookChildTracker()
 {
     ChildTracker.Hook(pDocked.MainWindowHandle);
     ChildTracker.ChildMinimized += (() =>
     {
         WindowState = FormWindowState.Minimized;
     });
 }