コード例 #1
0
 //Registering listeners
 public void Register(IControlsObserver observer, List<Keys> keys, List<MouseButtons> buttons, bool alwaysNotify = false)
 {
     _listeners.Add(new ControlStateListener(
         keys,
         buttons,
         alwaysNotify,
         observer));
     _listenersUpdated = true;
 }
コード例 #2
0
        public ControlStateListener(IEnumerable<Keys> keys, IEnumerable<MouseButtons> buttons, bool alwaysNotify, IControlsObserver observer)
        {
            _alwaysNotify = alwaysNotify;
            foreach(var key in keys)
                KeyStates.Add(key, KeyState.Up);
            foreach (var button in buttons)
                ButtonStates.Add(button, ButtonState.Released);

            Observer = observer;
        }
コード例 #3
0
 public void Unregister(IControlsObserver observer)
 {
     _listeners.RemoveAll(p => p.Observer == observer);
     _listenersUpdated = true;
 }