Fix problem with DeviceConfig::getBindingAsString(), input config gui works again.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/irrlicht@3825 178a84e3-b1eb-0310-8ba1-8eac791a3b58
This commit is contained in:
@@ -4,13 +4,13 @@
|
||||
|
||||
std::string DeviceConfig::getBindingAsString (const PlayerAction action) const
|
||||
{
|
||||
std::string returnString = NULL;
|
||||
std::string returnString = "";
|
||||
|
||||
if ((action < PA_COUNT) && (action >= 0))
|
||||
{
|
||||
returnString = Input::getInputAsString(m_bindings[action].type,
|
||||
m_bindings[action].id,
|
||||
m_bindings[action].dir);
|
||||
returnString = returnString.append( Input::getInputAsString(m_bindings[action].type,
|
||||
m_bindings[action].id,
|
||||
m_bindings[action].dir) );
|
||||
}
|
||||
|
||||
return returnString;
|
||||
|
||||
@@ -225,26 +225,43 @@ namespace OptionsScreen
|
||||
// -----------------------------------------------------------------------------
|
||||
void updateInputButtons(InputDevice* device)
|
||||
{
|
||||
DeviceConfig *config;
|
||||
|
||||
// Should never happen
|
||||
if (device == NULL)
|
||||
{
|
||||
printf("updateInputButtons: passed NULL pointer\n");
|
||||
abort();
|
||||
}
|
||||
|
||||
config = device->getConfiguration();
|
||||
|
||||
// Should never happen
|
||||
if (config == NULL)
|
||||
{
|
||||
printf("ERROR: No configuration associated with device?\n");
|
||||
abort();
|
||||
}
|
||||
|
||||
{
|
||||
ButtonWidget* btn = getCurrentScreen()->getWidget<ButtonWidget>("binding_up");
|
||||
btn->setLabel( device->getConfiguration()->getBindingAsString(PA_ACCEL).c_str() );
|
||||
btn->setLabel( config->getBindingAsString(PA_ACCEL).c_str() );
|
||||
}
|
||||
{
|
||||
ButtonWidget* btn = getCurrentScreen()->getWidget<ButtonWidget>("binding_down");
|
||||
btn->setLabel( device->getConfiguration()->getBindingAsString(PA_BRAKE).c_str() );
|
||||
btn->setLabel( config->getBindingAsString(PA_BRAKE).c_str() );
|
||||
}
|
||||
{
|
||||
ButtonWidget* btn = getCurrentScreen()->getWidget<ButtonWidget>("binding_left");
|
||||
btn->setLabel( device->getConfiguration()->getBindingAsString(PA_LEFT).c_str() );
|
||||
btn->setLabel( config->getBindingAsString(PA_LEFT).c_str() );
|
||||
}
|
||||
{
|
||||
ButtonWidget* btn = getCurrentScreen()->getWidget<ButtonWidget>("binding_right");
|
||||
btn->setLabel( device->getConfiguration()->getBindingAsString(PA_RIGHT).c_str() );
|
||||
btn->setLabel( config->getBindingAsString(PA_RIGHT).c_str() );
|
||||
}
|
||||
{
|
||||
ButtonWidget* btn = getCurrentScreen()->getWidget<ButtonWidget>("binding_fire");
|
||||
btn->setLabel( device->getConfiguration()->getBindingAsString(PA_FIRE).c_str() );
|
||||
btn->setLabel( config->getBindingAsString(PA_FIRE).c_str() );
|
||||
}
|
||||
{
|
||||
ButtonWidget* btn = getCurrentScreen()->getWidget<ButtonWidget>("binding_nitro");
|
||||
|
||||
Reference in New Issue
Block a user