diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/input_common/gcadapter/gc_poller.cpp | 2 | ||||
| -rw-r--r-- | src/input_common/sdl/sdl_impl.cpp | 2 | ||||
| -rw-r--r-- | src/yuzu/configuration/configure_input_player.cpp | 25 | ||||
| -rw-r--r-- | src/yuzu/configuration/configure_input_player.h | 2 | ||||
| -rw-r--r-- | src/yuzu/configuration/configure_input_player.ui | 60 |
5 files changed, 5 insertions, 86 deletions
diff --git a/src/input_common/gcadapter/gc_poller.cpp b/src/input_common/gcadapter/gc_poller.cpp index 323b93459..b346fdf8e 100644 --- a/src/input_common/gcadapter/gc_poller.cpp +++ b/src/input_common/gcadapter/gc_poller.cpp | |||
| @@ -233,7 +233,7 @@ std::unique_ptr<Input::AnalogDevice> GCAnalogFactory::Create(const Common::Param | |||
| 233 | const int axis_x = params.Get("axis_x", 0); | 233 | const int axis_x = params.Get("axis_x", 0); |
| 234 | const int axis_y = params.Get("axis_y", 1); | 234 | const int axis_y = params.Get("axis_y", 1); |
| 235 | const float deadzone = std::clamp(params.Get("deadzone", 0.0f), 0.0f, .99f); | 235 | const float deadzone = std::clamp(params.Get("deadzone", 0.0f), 0.0f, .99f); |
| 236 | const float range = std::clamp(params.Get("range", 0.0f), 0.50f, 1.50f); | 236 | const float range = std::clamp(params.Get("range", 1.0f), 0.50f, 1.50f); |
| 237 | 237 | ||
| 238 | return std::make_unique<GCAnalog>(port, axis_x, axis_y, deadzone, adapter.get(), range); | 238 | return std::make_unique<GCAnalog>(port, axis_x, axis_y, deadzone, adapter.get(), range); |
| 239 | } | 239 | } |
diff --git a/src/input_common/sdl/sdl_impl.cpp b/src/input_common/sdl/sdl_impl.cpp index 1853f535d..d76c279d3 100644 --- a/src/input_common/sdl/sdl_impl.cpp +++ b/src/input_common/sdl/sdl_impl.cpp | |||
| @@ -461,7 +461,7 @@ public: | |||
| 461 | const int axis_x = params.Get("axis_x", 0); | 461 | const int axis_x = params.Get("axis_x", 0); |
| 462 | const int axis_y = params.Get("axis_y", 1); | 462 | const int axis_y = params.Get("axis_y", 1); |
| 463 | const float deadzone = std::clamp(params.Get("deadzone", 0.0f), 0.0f, .99f); | 463 | const float deadzone = std::clamp(params.Get("deadzone", 0.0f), 0.0f, .99f); |
| 464 | const float range = std::clamp(params.Get("range", 0.0f), 0.50f, 1.50f); | 464 | const float range = std::clamp(params.Get("range", 1.0f), 0.50f, 1.50f); |
| 465 | auto joystick = state.GetSDLJoystickByGUID(guid, port); | 465 | auto joystick = state.GetSDLJoystickByGUID(guid, port); |
| 466 | 466 | ||
| 467 | // This is necessary so accessing GetAxis with axis_x and axis_y won't crash | 467 | // This is necessary so accessing GetAxis with axis_x and axis_y won't crash |
diff --git a/src/yuzu/configuration/configure_input_player.cpp b/src/yuzu/configuration/configure_input_player.cpp index 8bc86b706..b1850bc95 100644 --- a/src/yuzu/configuration/configure_input_player.cpp +++ b/src/yuzu/configuration/configure_input_player.cpp | |||
| @@ -272,10 +272,6 @@ ConfigureInputPlayer::ConfigureInputPlayer(QWidget* parent, std::size_t player_i | |||
| 272 | ui->sliderRStickDeadzoneAndModifier}; | 272 | ui->sliderRStickDeadzoneAndModifier}; |
| 273 | analog_map_deadzone_and_modifier_slider_label = {ui->labelLStickDeadzoneAndModifier, | 273 | analog_map_deadzone_and_modifier_slider_label = {ui->labelLStickDeadzoneAndModifier, |
| 274 | ui->labelRStickDeadzoneAndModifier}; | 274 | ui->labelRStickDeadzoneAndModifier}; |
| 275 | ui->sliderLStickRange->setRange(50, 150); | ||
| 276 | ui->sliderRStickRange->setRange(50, 150); | ||
| 277 | analog_map_range_slider = {ui->sliderLStickRange, ui->sliderRStickRange}; | ||
| 278 | analog_map_range_slider_label = {ui->labelLStickRange, ui->labelRStickRange}; | ||
| 279 | 275 | ||
| 280 | for (int button_id = 0; button_id < Settings::NativeButton::NumButtons; button_id++) { | 276 | for (int button_id = 0; button_id < Settings::NativeButton::NumButtons; button_id++) { |
| 281 | auto* const button = button_map[button_id]; | 277 | auto* const button = button_map[button_id]; |
| @@ -368,6 +364,7 @@ ConfigureInputPlayer::ConfigureInputPlayer(QWidget* parent, std::size_t player_i | |||
| 368 | InputCommon::Polling::DeviceType::Analog); | 364 | InputCommon::Polling::DeviceType::Analog); |
| 369 | } | 365 | } |
| 370 | }); | 366 | }); |
| 367 | |||
| 371 | connect(analog_map_deadzone_and_modifier_slider[analog_id], &QSlider::valueChanged, | 368 | connect(analog_map_deadzone_and_modifier_slider[analog_id], &QSlider::valueChanged, |
| 372 | [=, this] { | 369 | [=, this] { |
| 373 | const float slider_value = | 370 | const float slider_value = |
| @@ -383,15 +380,6 @@ ConfigureInputPlayer::ConfigureInputPlayer(QWidget* parent, std::size_t player_i | |||
| 383 | analogs_param[analog_id].Set("modifier_scale", slider_value / 100.0f); | 380 | analogs_param[analog_id].Set("modifier_scale", slider_value / 100.0f); |
| 384 | } | 381 | } |
| 385 | }); | 382 | }); |
| 386 | connect(analog_map_range_slider[analog_id], &QSlider::valueChanged, [=, this] { | ||
| 387 | const float slider_value = analog_map_range_slider[analog_id]->value(); | ||
| 388 | const auto engine = analogs_param[analog_id].Get("engine", ""); | ||
| 389 | if (engine == "sdl" || engine == "gcpad") { | ||
| 390 | analog_map_range_slider_label[analog_id]->setText( | ||
| 391 | tr("Range: %1%").arg(slider_value)); | ||
| 392 | analogs_param[analog_id].Set("range", slider_value / 100.0f); | ||
| 393 | } | ||
| 394 | }); | ||
| 395 | } | 383 | } |
| 396 | 384 | ||
| 397 | connect(ui->buttonClearAll, &QPushButton::clicked, [this] { ClearAll(); }); | 385 | connect(ui->buttonClearAll, &QPushButton::clicked, [this] { ClearAll(); }); |
| @@ -597,9 +585,6 @@ void ConfigureInputPlayer::UpdateButtonLabels() { | |||
| 597 | auto* const analog_stick_slider_label = | 585 | auto* const analog_stick_slider_label = |
| 598 | analog_map_deadzone_and_modifier_slider_label[analog_id]; | 586 | analog_map_deadzone_and_modifier_slider_label[analog_id]; |
| 599 | 587 | ||
| 600 | auto* const analog_stick_range = analog_map_range_slider[analog_id]; | ||
| 601 | auto* const analog_stick_range_label = analog_map_range_slider_label[analog_id]; | ||
| 602 | |||
| 603 | if (param.Has("engine")) { | 588 | if (param.Has("engine")) { |
| 604 | if (param.Get("engine", "") == "sdl" || param.Get("engine", "") == "gcpad") { | 589 | if (param.Get("engine", "") == "sdl" || param.Get("engine", "") == "gcpad") { |
| 605 | if (!param.Has("deadzone")) { | 590 | if (!param.Has("deadzone")) { |
| @@ -610,14 +595,6 @@ void ConfigureInputPlayer::UpdateButtonLabels() { | |||
| 610 | if (analog_stick_slider->value() == 0) { | 595 | if (analog_stick_slider->value() == 0) { |
| 611 | analog_stick_slider_label->setText(tr("Deadzone: 0%")); | 596 | analog_stick_slider_label->setText(tr("Deadzone: 0%")); |
| 612 | } | 597 | } |
| 613 | if (!param.Has("range")) { | ||
| 614 | param.Set("range", 0.50f); | ||
| 615 | } | ||
| 616 | // QtSlider returns values from 0.0-0.99. We want range to be from 50% to 150% | ||
| 617 | analog_stick_range->setValue(static_cast<int>(param.Get("range", 0.1f) * 100)); | ||
| 618 | if (analog_stick_range->value() == 50) { | ||
| 619 | analog_stick_range_label->setText(tr("Range: 50%")); | ||
| 620 | } | ||
| 621 | } else { | 598 | } else { |
| 622 | if (!param.Has("modifier_scale")) { | 599 | if (!param.Has("modifier_scale")) { |
| 623 | param.Set("modifier_scale", 0.5f); | 600 | param.Set("modifier_scale", 0.5f); |
diff --git a/src/yuzu/configuration/configure_input_player.h b/src/yuzu/configuration/configure_input_player.h index 88cc3b3b1..95afa5375 100644 --- a/src/yuzu/configuration/configure_input_player.h +++ b/src/yuzu/configuration/configure_input_player.h | |||
| @@ -101,8 +101,6 @@ private: | |||
| 101 | analog_map_deadzone_and_modifier_slider; | 101 | analog_map_deadzone_and_modifier_slider; |
| 102 | std::array<QLabel*, Settings::NativeAnalog::NumAnalogs> | 102 | std::array<QLabel*, Settings::NativeAnalog::NumAnalogs> |
| 103 | analog_map_deadzone_and_modifier_slider_label; | 103 | analog_map_deadzone_and_modifier_slider_label; |
| 104 | std::array<QSlider*, Settings::NativeAnalog::NumAnalogs> analog_map_range_slider; | ||
| 105 | std::array<QLabel*, Settings::NativeAnalog::NumAnalogs> analog_map_range_slider_label; | ||
| 106 | 104 | ||
| 107 | static const std::array<std::string, ANALOG_SUB_BUTTONS_NUM> analog_sub_buttons; | 105 | static const std::array<std::string, ANALOG_SUB_BUTTONS_NUM> analog_sub_buttons; |
| 108 | 106 | ||
diff --git a/src/yuzu/configuration/configure_input_player.ui b/src/yuzu/configuration/configure_input_player.ui index 91065dcde..f27a77180 100644 --- a/src/yuzu/configuration/configure_input_player.ui +++ b/src/yuzu/configuration/configure_input_player.ui | |||
| @@ -195,35 +195,7 @@ | |||
| 195 | </item> | 195 | </item> |
| 196 | </layout> | 196 | </layout> |
| 197 | </item> | 197 | </item> |
| 198 | <item row="5" column="0" colspan="2"> | 198 | <item row="5" column="0"> |
| 199 | <layout class="QVBoxLayout" name="sliderRStickRangeVerticalLayout"> | ||
| 200 | <property name="sizeConstraint"> | ||
| 201 | <enum>QLayout::SetDefaultConstraint</enum> | ||
| 202 | </property> | ||
| 203 | <item> | ||
| 204 | <layout class="QHBoxLayout" name="sliderRStickRangeHorizontalLayout"> | ||
| 205 | <item> | ||
| 206 | <widget class="QLabel" name="labelRStickRange"> | ||
| 207 | <property name="text"> | ||
| 208 | <string>Range: 0</string> | ||
| 209 | </property> | ||
| 210 | <property name="alignment"> | ||
| 211 | <enum>Qt::AlignHCenter</enum> | ||
| 212 | </property> | ||
| 213 | </widget> | ||
| 214 | </item> | ||
| 215 | </layout> | ||
| 216 | </item> | ||
| 217 | <item> | ||
| 218 | <widget class="QSlider" name="sliderRStickRange"> | ||
| 219 | <property name="orientation"> | ||
| 220 | <enum>Qt::Horizontal</enum> | ||
| 221 | </property> | ||
| 222 | </widget> | ||
| 223 | </item> | ||
| 224 | </layout> | ||
| 225 | </item> | ||
| 226 | <item row="6" column="0"> | ||
| 227 | <spacer name="RStick_verticalSpacer"> | 199 | <spacer name="RStick_verticalSpacer"> |
| 228 | <property name="orientation"> | 200 | <property name="orientation"> |
| 229 | <enum>Qt::Vertical</enum> | 201 | <enum>Qt::Vertical</enum> |
| @@ -839,35 +811,7 @@ | |||
| 839 | </item> | 811 | </item> |
| 840 | </layout> | 812 | </layout> |
| 841 | </item> | 813 | </item> |
| 842 | <item row="6" column="1" colspan="2"> | 814 | <item row="6" column="1"> |
| 843 | <layout class="QVBoxLayout" name="sliderLStickRangeVerticalLayout"> | ||
| 844 | <property name="sizeConstraint"> | ||
| 845 | <enum>QLayout::SetDefaultConstraint</enum> | ||
| 846 | </property> | ||
| 847 | <item> | ||
| 848 | <layout class="QHBoxLayout" name="sliderLStickRangeHorizontalLayout"> | ||
| 849 | <item> | ||
| 850 | <widget class="QLabel" name="labelLStickRange"> | ||
| 851 | <property name="text"> | ||
| 852 | <string>Range: 0</string> | ||
| 853 | </property> | ||
| 854 | <property name="alignment"> | ||
| 855 | <enum>Qt::AlignHCenter</enum> | ||
| 856 | </property> | ||
| 857 | </widget> | ||
| 858 | </item> | ||
| 859 | </layout> | ||
| 860 | </item> | ||
| 861 | <item> | ||
| 862 | <widget class="QSlider" name="sliderLStickRange"> | ||
| 863 | <property name="orientation"> | ||
| 864 | <enum>Qt::Horizontal</enum> | ||
| 865 | </property> | ||
| 866 | </widget> | ||
| 867 | </item> | ||
| 868 | </layout> | ||
| 869 | </item> | ||
| 870 | <item row="7" column="1"> | ||
| 871 | <spacer name="LStick_verticalSpacer"> | 815 | <spacer name="LStick_verticalSpacer"> |
| 872 | <property name="orientation"> | 816 | <property name="orientation"> |
| 873 | <enum>Qt::Vertical</enum> | 817 | <enum>Qt::Vertical</enum> |