Turn off multitouch race gui on non-android devices

This commit is contained in:
Deve 2019-01-09 22:29:37 +01:00
parent 15ffc98369
commit a40b6e3758
6 changed files with 15 additions and 10 deletions

View File

@ -483,10 +483,10 @@ namespace UserConfigParams
&m_multitouch_group,
"Enable multitouch support: 0 = disabled, 1 = if available, 2 = enabled") );
PARAM_PREFIX IntUserConfigParam m_multitouch_mode
PARAM_DEFAULT( IntUserConfigParam(1, "multitouch_mode",
PARAM_PREFIX BoolUserConfigParam m_multitouch_draw_gui
PARAM_DEFAULT( BoolUserConfigParam(false, "multitouch_draw_gui",
&m_multitouch_group,
"Steering mode: 0 = off, 1 = buttons"));
"Enable multitouch race GUI"));
PARAM_PREFIX BoolUserConfigParam m_multitouch_inverted
PARAM_DEFAULT( BoolUserConfigParam(false, "multitouch_inverted",

View File

@ -39,6 +39,9 @@ void override_default_params()
// Disable advanced lighting by default to make the game playable
UserConfigParams::m_dynamic_lights = false;
// Enable multitouch race GUI
UserConfigParams::m_multitouch_draw_gui = true;
// Set multitouch device scale depending on actual screen size
int32_t screen_size = AConfiguration_getScreenSize(global_android_app->config);

View File

@ -112,7 +112,7 @@ GUIEngine::EventPropagation MultitouchSettingsDialog::processEvent(
CheckBoxWidget* buttons_en = getWidget<CheckBoxWidget>("buttons_enabled");
assert(buttons_en != NULL);
UserConfigParams::m_multitouch_mode = buttons_en->getState() ? 1 : 0;
UserConfigParams::m_multitouch_draw_gui = buttons_en->getState();
CheckBoxWidget* buttons_inv = getWidget<CheckBoxWidget>("buttons_inverted");
assert(buttons_inv != NULL);
@ -153,11 +153,12 @@ GUIEngine::EventPropagation MultitouchSettingsDialog::processEvent(
{
UserConfigParams::m_multitouch_sensitivity_y.revertToDefaults();
UserConfigParams::m_multitouch_deadzone.revertToDefaults();
UserConfigParams::m_multitouch_mode.revertToDefaults();
UserConfigParams::m_multitouch_inverted.revertToDefaults();
UserConfigParams::m_multitouch_controls.revertToDefaults();
#ifdef ANDROID
UserConfigParams::m_multitouch_draw_gui = true;
int32_t screen_size = AConfiguration_getScreenSize(
global_android_app->config);
@ -182,6 +183,7 @@ GUIEngine::EventPropagation MultitouchSettingsDialog::processEvent(
break;
}
#else
UserConfigParams::m_multitouch_draw_gui.revertToDefaults();
UserConfigParams::m_multitouch_scale.revertToDefaults();
UserConfigParams::m_multitouch_sensitivity_x.revertToDefaults();
#endif
@ -231,7 +233,7 @@ void MultitouchSettingsDialog::updateValues()
CheckBoxWidget* buttons_en = getWidget<CheckBoxWidget>("buttons_enabled");
assert(buttons_en != NULL);
buttons_en->setState(UserConfigParams::m_multitouch_mode != 0);
buttons_en->setState(UserConfigParams::m_multitouch_draw_gui);
CheckBoxWidget* buttons_inv = getWidget<CheckBoxWidget>("buttons_inverted");
assert(buttons_inv != NULL);

View File

@ -127,7 +127,7 @@ void OptionsScreenUI::loadedFromFile()
irr_driver->getDevice()->supportsTouchDevice()) ||
UserConfigParams::m_multitouch_active > 1;
if (multitouch_enabled && UserConfigParams::m_multitouch_mode != 0)
if (multitouch_enabled && UserConfigParams::m_multitouch_draw_gui)
{
minimap_options->m_properties[GUIEngine::PROP_MIN_VALUE] = "1";
}
@ -154,7 +154,7 @@ void OptionsScreenUI::init()
irr_driver->getDevice()->supportsTouchDevice()) ||
UserConfigParams::m_multitouch_active > 1;
if (multitouch_enabled && UserConfigParams::m_multitouch_mode != 0 &&
if (multitouch_enabled && UserConfigParams::m_multitouch_draw_gui &&
UserConfigParams::m_minimap_display == 0)
{
UserConfigParams::m_minimap_display = 1;

View File

@ -120,7 +120,7 @@ RaceGUI::RaceGUI()
irr_driver->getDevice()->supportsTouchDevice()) ||
UserConfigParams::m_multitouch_active > 1;
if (multitouch_enabled && UserConfigParams::m_multitouch_mode != 0 &&
if (multitouch_enabled && UserConfigParams::m_multitouch_draw_gui &&
race_manager->getNumLocalPlayers() == 1)
{
m_multitouch_gui = new RaceGUIMultitouch(this);

View File

@ -93,7 +93,7 @@ RaceGUIOverworld::RaceGUIOverworld()
irr_driver->getDevice()->supportsTouchDevice()) ||
UserConfigParams::m_multitouch_active > 1;
if (multitouch_enabled && UserConfigParams::m_multitouch_mode != 0 &&
if (multitouch_enabled && UserConfigParams::m_multitouch_draw_gui &&
race_manager->getNumLocalPlayers() == 1)
{
m_multitouch_gui = new RaceGUIMultitouch(this);