public void AddWindow(Display.Window window) { if (window == null) { throw new ArgumentNullException("window"); } if (windows.Contains(window)) { return; } if (windows.Count == 0) { _focusedWindow = window; Mouse.CurrentWindow = window; } window.GainedFocus += onFocused; window.KeyPressed += onKeyDown; window.KeyReleased += onKeyUp; window.MouseMoved += onMouseMove; window.MouseWheelScrolled += onMouseWheel; window.MouseButtonPressed += onMouseDown; window.MouseButtonReleased += onMouseUp; windows.Add(window); }
internal override void RemoveWindow(Display.Window window) { if (!windows.Remove(window)) { return; } window.KeyPressed -= OnKeyDown; window.KeyReleased -= OnKeyUp; }
// public // private internal override void AddWindow(Display.Window window) { if (!windows.Add(window)) { return; } window.KeyPressed += OnKeyDown; window.KeyReleased += OnKeyUp; }
// public // private internal override void AddWindow(Display.Window window) { if (!windows.Add(window)) { return; } window.MouseMoved += OnMouseMove; window.MouseWheelScrolled += OnMouseWheel; window.MouseButtonPressed += OnMouseDown; window.MouseButtonReleased += OnMouseUp; }
internal override void RemoveWindow(Display.Window window) { if (currentWindow == window) { Interlocked.Exchange(ref currentWindow, null); } if (!windows.Remove(window)) { return; } window.MouseMoved -= OnMouseMove; window.MouseWheelScrolled -= OnMouseWheel; window.MouseButtonPressed -= OnMouseDown; window.MouseButtonReleased -= OnMouseUp; }
public void RemoveWindow(Display.Window window) { if (window == null) { throw new ArgumentNullException("window"); } int index = windows.IndexOf(window); if (index == -1) { return; } windows.RemoveAt(index); window.GainedFocus -= onFocused; window.KeyPressed -= onKeyDown; window.KeyReleased -= onKeyUp; window.MouseMoved -= onMouseMove; window.MouseWheelScrolled -= onMouseWheel; window.MouseButtonPressed -= onMouseDown; window.MouseButtonReleased -= onMouseUp; }
internal abstract void RemoveWindow(Display.Window window);
// private internal abstract void AddWindow(Display.Window window);
private void onFocused(object sender, EventArgs e) { _focusedWindow = (Display.Window)sender; }
internal override void RemoveWindow(Display.Window window) { log.Debug("Removing window \"" + window.Title + "\""); base.RemoveWindow(window); }
// public // private internal override void AddWindow(Display.Window window) { log.Debug("Adding window \"" + window.Title + "\""); base.AddWindow(window); }
public abstract void RemoveWindow(Display.Window window);
public abstract void AddWindow(Display.Window window);