// TODO: the to-Signal needs an extra interface that has a slot that contains the event
 protected void ForwardChangeEvent(IGuiElement inputElement, ISignal to)
 {
     // TODO: remove forwared change event on destruction
     inputElement.AddListener(GuiEventNames.Change, e => to.Dispatch(((InputEvent)e).Content));
 }