public virtual void RemoveInputEventListener(PInputEventListener listener) {
KeyDown -= listener.OnKeyDown;
KeyPress -= listener.OnKeyPress;
KeyUp -= listener.OnKeyUp;
Click -= listener.OnClick;
DoubleClick -= listener.OnDoubleClick;
MouseDown -= listener.OnMouseDown;
MouseUp -= listener.OnMouseUp;
MouseMove -= listener.OnMouseMove;
MouseDrag -= listener.OnMouseDrag;
MouseEnter -= listener.OnMouseEnter;
MouseLeave -= listener.OnMouseLeave;
MouseWheel -= listener.OnMouseWheel;
DragEnter -= listener.OnDragEnter;
DragLeave -= listener.OnDragLeave;
DragOver -= listener.OnDragOver;
DragDrop -= listener.OnDragDrop;
GotFocus -= listener.OnGotFocus;
LostFocus -= listener.OnLostFocus;
}