Esempio n. 1
0
 void HotKeyEvent()
 {
     if (!isUsingPasteHelper)
     {
         return;
     }
     // 自动粘贴功能
     if (chAutoPaste.IsChecked.Value)
     {
         hotkey.Dispose();
         Thread.Sleep(800);                       // 这里如果不暂停,可能会出现用户按键时间过长,导致在第一次粘贴时内容错乱
         int delay = int.Parse(chDelay.Text) / 2; // 延迟为每次粘贴的时间间隔,而每次循环有两次延迟,故除以2
                                                  // 关于SendKey的更多内容,详见:https://msdn.microsoft.com/en-us/library/system.windows.forms.sendkeys(v=vs.110).aspx
         string key = "{" + chAutoKeyDown.Text + "}";
         IsEnabled = false;                       // 将窗口挂起
         while (PasteLineIndex < PasteLines.Count)
         {
             Form.SendKeys.SendWait("^{V}");
             Thread.Sleep(delay);
             if (++PasteLineIndex >= PasteLines.Count)
             {
                 hotkey.Dispose();
                 ClearPasteHelper();
                 IsEnabled = true;
                 break;
             }
             if (key != "{NONE}")
             {
                 Form.SendKeys.SendWait(key);
             }
             Clipboard.SetText(PasteLines[PasteLineIndex]);
             Thread.Sleep(delay);
         }
     }
 }
Esempio n. 2
0
 private void unregisterCairoMenuHotKey()
 {
     if (Screen.Primary)
     {
         cairoMenuHotKey?.Dispose();
         cairoMenuHotKey = null;
     }
 }
Esempio n. 3
0
 /// <summary>
 /// Handle the window closing finalization, stop monitoring process, deactivate hotkey, notification icon.
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 void MainWindow_Closing(object sender, System.ComponentModel.CancelEventArgs e)
 {
     this.Closing -= MainWindow_Closing;
     ClipboardMonitor.Stop(); // do not forget to stop
     ni.Visible = false;
     hotKey.Unregister();
     hotKey.Dispose();
 }
 private void UnregisterHotKeys()
 {
     if (_hotKey == null)
     {
         return;
     }
     _hotKey.HotKeyPressed -= OnHotKeyPressed;
     _hotKey.Dispose();
 }
Esempio n. 5
0
 private void CurrentDomain_ProcessExit(object sender, EventArgs e)
 {
     try
     {
         hotkeys.Dispose();
     }
     catch (Exception ex)
     {
     }
 }
Esempio n. 6
0
 public void Dispose()
 {
     try
     {
         hotKey.UnregisterHotKey();
         hotKey.Dispose();
     }
     catch (NullReferenceException)
     {
     }
 }
Esempio n. 7
0
        private void InitializeHotKeys()
        {
            var kc = new SWF.KeysConverter();
            var mkc = new ModifierKeysConverter();

            _sshHotkey = new HotKey((ModifierKeys)mkc.ConvertFromString(_config.Hotkeys.Select.Modifiers), (SWF.Keys)kc.ConvertFromString(_config.Hotkeys.Select.Key));
            _sshHotkey.HotKeyPressed += k => ((MainWindow)this.MainWindow).ShowFullscreenWindow();

            Exit += (s, e) =>
            {
                _sshHotkey.Dispose();
            };
        }
Esempio n. 8
0
        public void SetHotkey()
        {
            if (_hotkey != null)
            {
                _hotkey.Unregister();
                _hotkey.Dispose();
            }

            var settings = SettingsData.Load().GeneralSettings;

            var modifierKeys = default(ModifierKeys);

            if (settings.HotkeyControl)
            {
                modifierKeys |= ModifierKeys.Control;
            }

            if (settings.HotkeyAlt)
            {
                modifierKeys |= ModifierKeys.Alt;
            }

            if (settings.HotkeyShift)
            {
                modifierKeys |= ModifierKeys.Shift;
            }

            var key = (Keys)KeyInterop.VirtualKeyFromKey(settings.Hotkey);

            _hotkey = new HotKey(modifierKeys, key, Current.MainWindow);

            var isRegistered = _hotkey.Register();

            if (isRegistered)
            {
                _hotkey.HotKeyPressed += OnHotKeyPressed;
            }
            else
            {
                MessageBox.Show("Can't register hot key!", "Doit App - Register Hotkey", MessageBoxButton.OK, MessageBoxImage.Warning);
            }
        }
        private void SetHotkey()
        {
            if (_hotkey != null)
            {
                _hotkey.Dispose();
                _hotkey = null;
            }

            if (SelectedVirtualKey != Key.None)
            {
                KeyModifier modifier = (UseAlt ? KeyModifier.Alt : KeyModifier.None)
                                       | (UseShift ? KeyModifier.Shift : KeyModifier.None)
                                       | (UseControl ? KeyModifier.Ctrl : KeyModifier.None)
                                       | (UseWindowsKey ? KeyModifier.Win : KeyModifier.None);
                _hotkey = new HotKey(
                    SelectedVirtualKey,
                    modifier | KeyModifier.NoRepeat,
                    _ => RaiseHotkeyTriggered());
            }
        }
Esempio n. 10
0
 public void Dispose()
 {
     WindowModel.ClearRect();
     hotKey.Dispose();
     timer.Enabled = false;
 }
Esempio n. 11
0
 public void Exit()
 {
     Application.Exit();
     m_Hotkey.Dispose();
 }
Esempio n. 12
0
 private void Window_Closed(object sender, EventArgs e)
 {
     _activateWindowKey.Dispose();
     _showTranslationWindowHotKey.Dispose();
 }
Esempio n. 13
0
 /// <summary>
 /// フォームが閉じ始めた時に呼び出されます
 /// </summary>
 private void RectForm_FormClosing(object sender, FormClosingEventArgs e)
 {
     m_hotKey.Dispose();
 }
Esempio n. 14
0
 /// <summary>
 /// 後片付け
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void Form1_FormClosed(object sender, FormClosedEventArgs e)
 {
     hotKey.Dispose();
 }