Exemple #1
0
        public bool Hook(Keys key, ModifierKeys modifiers = ModifierKeys.None, KeyHookDelegate pressed = null)
        {
            if (_timer.Enabled)
            {
                _timer.Stop();
            }

            var exists = _keys.Find(x => x.Key == key && x.Modifiers == modifiers) != null;

            if (!exists)
            {
                _keys.Add(new KeyHook(key, modifiers, pressed));
                _keys.Sort((k1, k2) => new HookComparer().Compare(k1, k2));
            }

            if (_keys.Count > 0)
            {
                _timer.Start();
            }

            return(!exists);
        }
Exemple #2
0
 public KeyHook(Keys key, ModifierKeys modifiers, KeyHookDelegate pressed = null)
 {
     Key       = key;
     Modifiers = modifiers;
     Pressed   = pressed;
 }