Only show config button if supported

pull/1668/head
Jon Beniston 2023-04-24 12:11:31 +01:00
rodzic fe3aeaed5b
commit fae899926f
3 zmienionych plików z 57 dodań i 73 usunięć

Wyświetl plik

@ -44,96 +44,80 @@ void GamepadConfigurationDialog::accept()
void GamepadConfigurationDialog::on_config0_clicked()
{
if (ui->config0->text() == "Configure")
{
ui->config0->setText("Done");
ui->config1->setEnabled(false);
ui->config2->setEnabled(false);
ui->config3->setEnabled(false);
QGamepadManager::instance()->configureAxis(m_gamepad->deviceId(), QGamepadManager ::AxisRightX);
}
else
{
ui->config0->setText("Configure");
ui->config1->setEnabled(true);
ui->config2->setEnabled(true);
ui->config3->setEnabled(true);
}
ui->config0->setText("Configuring");
ui->config0->setEnabled(false);
ui->config1->setEnabled(false);
ui->config2->setEnabled(false);
ui->config3->setEnabled(false);
QGamepadManager::instance()->configureAxis(m_gamepad->deviceId(), QGamepadManager ::AxisRightX);
}
void GamepadConfigurationDialog::on_config1_clicked()
{
if (ui->config1->text() == "Configure")
{
ui->config1->setText("Done");
ui->config0->setEnabled(false);
ui->config2->setEnabled(false);
ui->config3->setEnabled(false);
QGamepadManager::instance()->configureAxis(m_gamepad->deviceId(), QGamepadManager ::AxisRightY);
}
else
{
ui->config1->setText("Configure");
ui->config0->setEnabled(true);
ui->config2->setEnabled(true);
ui->config3->setEnabled(true);
}
ui->config1->setText("Configuring");
ui->config0->setEnabled(false);
ui->config1->setEnabled(false);
ui->config2->setEnabled(false);
ui->config3->setEnabled(false);
QGamepadManager::instance()->configureAxis(m_gamepad->deviceId(), QGamepadManager ::AxisRightY);
}
void GamepadConfigurationDialog::on_config2_clicked()
{
if (ui->config2->text() == "Configure")
{
ui->config2->setText("Done");
ui->config0->setEnabled(false);
ui->config1->setEnabled(false);
ui->config3->setEnabled(false);
QGamepadManager::instance()->configureAxis(m_gamepad->deviceId(), QGamepadManager ::AxisLeftX);
}
else
{
ui->config2->setText("Configure");
ui->config0->setEnabled(true);
ui->config1->setEnabled(true);
ui->config3->setEnabled(true);
}
ui->config2->setText("Configuring");
ui->config0->setEnabled(false);
ui->config1->setEnabled(false);
ui->config2->setEnabled(false);
ui->config3->setEnabled(false);
QGamepadManager::instance()->configureAxis(m_gamepad->deviceId(), QGamepadManager ::AxisLeftX);
}
void GamepadConfigurationDialog::on_config3_clicked()
{
if (ui->config3->text() == "Configure")
{
ui->config3->setText("Done");
ui->config0->setEnabled(false);
ui->config1->setEnabled(false);
ui->config2->setEnabled(false);
QGamepadManager::instance()->configureAxis(m_gamepad->deviceId(), QGamepadManager ::AxisLeftY);
}
else
{
ui->config3->setText("Configure");
ui->config0->setEnabled(true);
ui->config1->setEnabled(true);
ui->config2->setEnabled(true);
}
ui->config3->setText("Configuring");
ui->config0->setEnabled(false);
ui->config1->setEnabled(false);
ui->config2->setEnabled(false);
ui->config3->setEnabled(false);
QGamepadManager::instance()->configureAxis(m_gamepad->deviceId(), QGamepadManager ::AxisLeftY);
}
void GamepadConfigurationDialog::axisRightXChanged(double value)
{
ui->value0->setText(QString::number(value));
ui->config0->setText("Configure");
ui->config0->setEnabled(true);
ui->config1->setEnabled(true);
ui->config2->setEnabled(true);
ui->config3->setEnabled(true);
}
void GamepadConfigurationDialog::axisRightYChanged(double value)
{
ui->value1->setText(QString::number(value));
ui->config1->setText("Configure");
ui->config0->setEnabled(true);
ui->config1->setEnabled(true);
ui->config2->setEnabled(true);
ui->config3->setEnabled(true);
}
void GamepadConfigurationDialog::axisLeftXChanged(double value)
{
ui->value2->setText(QString::number(value));
ui->config2->setText("Configure");
ui->config0->setEnabled(true);
ui->config1->setEnabled(true);
ui->config2->setEnabled(true);
ui->config3->setEnabled(true);
}
void GamepadConfigurationDialog::axisLeftYChanged(double value)
{
ui->value3->setText(QString::number(value));
ui->config3->setText("Configure");
ui->config0->setEnabled(true);
ui->config1->setEnabled(true);
ui->config2->setEnabled(true);
ui->config3->setEnabled(true);
}

Wyświetl plik

@ -54,7 +54,7 @@
<item row="4" column="0">
<widget class="QLabel" name="config3Label">
<property name="text">
<string>Azimuth Offset Axis</string>
<string>Elevation Offset Axis</string>
</property>
</widget>
</item>
@ -75,7 +75,7 @@
<item row="3" column="0">
<widget class="QLabel" name="config2Label">
<property name="text">
<string>Elevation Offset Axis</string>
<string>Azimuth Offset Axis</string>
</property>
</widget>
</item>
@ -113,7 +113,14 @@
</property>
</widget>
</item>
<item row="0" column="0">
<item row="1" column="1">
<widget class="QPushButton" name="config0">
<property name="text">
<string>Configure</string>
</property>
</widget>
</item>
<item row="0" column="0" colspan="2">
<widget class="QLabel" name="instructions">
<property name="minimumSize">
<size>
@ -125,15 +132,7 @@
<string>To configure a controller axis:
- press the Configure button,
- move the controller axis,
- then press Done</string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QPushButton" name="config0">
<property name="text">
<string>Configure</string>
- move the controller axis you want for that function.</string>
</property>
</widget>
</item>

Wyświetl plik

@ -252,6 +252,7 @@ GS232ControllerGUI::GS232ControllerGUI(PluginAPI* pluginAPI, FeatureUISet *featu
m_settings.setRollupState(&m_rollupState);
ui->inputConfigure->setVisible(false);
updateInputControllerList();
connect(InputControllerManager::instance(), &InputControllerManager::controllersChanged, this, &GS232ControllerGUI::updateInputControllerList);
connect(&m_inputTimer, &QTimer::timeout, this, &GS232ControllerGUI::checkInputController);
@ -305,7 +306,7 @@ void GS232ControllerGUI::updateInputController()
ui->inputSensitivity->setEnabled(enabled);
ui->inputSensitivityText->setEnabled(enabled);
ui->inputConfigure->setEnabled(enabled);
ui->inputConfigure->setVisible(enabled);
ui->inputConfigure->setVisible(enabled && m_inputController->supportsConfiguration());
}
void GS232ControllerGUI::checkInputController()