bool KeyboardDispatcher::dispatchKeyboardEvent(int keyCode, bool pressed)
{
    if (_keyPressDelegate != nullptr && pressed)
    {
        _keyPressDelegate(keyCode);
    }
    else if (_keyReleaseDelegate != nullptr )
    {
        _keyReleaseDelegate(keyCode);
    }
    else
    {
        return false;
    }

    return true;
}
void Menu::keyPressEvent(QKeyEvent *e) {
	auto key = e->key();
	if (!_keyPressDelegate || !_keyPressDelegate(key)) {
		handleKeyPress(key);
	}
}