예제 #1
0
        private void LoadSetting()
        {
            bool isCtrl             = false;
            bool isShift            = false;
            bool isAlt              = false;
            bool isWin              = false;
            bool ReplaceWindowR     = false;
            Key key                 = Key.Space;

            SettingObject.Instance.Get("Hotkey", "IsCtrl", out isCtrl, true);
            SettingObject.Instance.Get("Hotkey", "IsShift", out isShift, false);
            SettingObject.Instance.Get("Hotkey", "IsAlt", out isAlt, true);
            SettingObject.Instance.Get("Hotkey", "IsWin", out isWin, false);
            SettingObject.Instance.Get("Hotkey", "Key", out key, Key.Space);
            SettingObject.Instance.Get("Hotkey", "ReplaceWindowR", out ReplaceWindowR, true);

            var model = new HotkeyModel(isCtrl, isShift, isAlt, isWin, key);

            GlobalHotkey.Instance.RegistHotkey("HotKey.ShowApp", model);
            GlobalHotkey.Instance.ReplaceWindowR = ReplaceWindowR;

            string version = null;
            SettingObject.Instance.Get("Version", "version", out version, "0.6");
            VersionManager.Instance.Version = version;
        }
예제 #2
0
파일: HotkeyRegister.cs 프로젝트: sgww/cozy
 public static void Regist(string name, HotkeyModel keyModel, Action action)
 {
     if (keyModel.CharKey != Key.None)
     {
         HotkeyManager.Current.AddOrReplace(name, keyModel.CharKey, keyModel.ModifierKeyStatus, (s, ee) =>
         {
             action?.Invoke();
         });
     }
 }
예제 #3
0
        private void HotkeyTextBox_PreviewKeyDown(object sender, KeyEventArgs e)
        {
            e.Handled   = true;
            Key key     = (e.Key == Key.System ? e.SystemKey : e.Key);

            var hkm         = new HotkeyModel(GlobalHotkey.Instance.ModifyKeyStatus, key);
            var hotkeyStr   = hkm.ToString();
            if (hotkeyStr == HotkeyText)
            {
                return;
            }
            HotkeyText = hotkeyStr;
        }
예제 #4
0
        public void RegistHotkey(string hotkeyName, HotkeyModel keyModel)
        {
            RegistedHotKey[hotkeyName] = keyModel;

            try
            {
                HotkeyRegister.Regist(hotkeyName, keyModel, () =>
                {
                    InvokeHotkeyAction(hotkeyName);
                });
            }
            catch (NHotkey.HotkeyAlreadyRegisteredException)
            {
                RegistedHotKey.Remove(hotkeyName);
                throw new Exception("Register failed");
            }
        }
예제 #5
0
        public void RegistHotkey(string hotkeyName, HotkeyModel keyModel)
        {
            RegistedHotKey[hotkeyName] = keyModel;

            try
            {
                HotkeyRegister.Regist(hotkeyName, keyModel, () =>
                {
                    InvokeHotkeyAction(hotkeyName);
                });
            }
            catch (NHotkey.HotkeyAlreadyRegisteredException)
            {
                RegistedHotKey.Remove(hotkeyName);
                throw new Exception("Register failed");
            }
        }