void GameConsole::applyPendingPropertyChanges() { if( !pendingPropertyChanges.isEmpty() ) { qCDebug( phxControl ) << "Applying pending property changes"; } // Call each setter again if a pending change was set if( pendingPropertyChanges.contains( "aspectRatioMode" ) ) { setAspectRatioMode( pendingPropertyChanges[ "aspectRatioMode" ].toInt() ); } if( pendingPropertyChanges.contains( "playbackSpeed" ) ) { setPlaybackSpeed( pendingPropertyChanges[ "playbackSpeed" ].toReal() ); } if( pendingPropertyChanges.contains( "source" ) ) { setSource( pendingPropertyChanges[ "source" ].toMap() ); } if( pendingPropertyChanges.contains( "volume" ) ) { setVolume( pendingPropertyChanges[ "volume" ].toReal() ); } if( pendingPropertyChanges.contains( "vsync" ) ) { setVsync( pendingPropertyChanges[ "vsync" ].toBool() ); } pendingPropertyChanges.clear(); }
void changePlaybackSpeed(int ratioDiff) { float ratio = (float)pow(2.0, ratioDiff); float speed = getPlaybackSpeed() * ratio; if (speed < 0) { speed = 0; } openni::Status rc = setPlaybackSpeed(speed); if (rc == openni::STATUS_OK) { if (speed == 0) { displayMessage("Playback speed set to fastest"); } else { displayMessage("Playback speed set to x%.2f", speed); } } else if ((rc == openni::STATUS_NOT_IMPLEMENTED) || (rc == openni::STATUS_NOT_SUPPORTED) || (rc == openni::STATUS_BAD_PARAMETER)) { displayError("Playback speed is not supported"); } else { displayError("Error setting playback speed:\n%s", openni::OpenNI::getExtendedError()); } }