Browse Source
configure_input: Add per-player vibration
configure_input: Add per-player vibration
Allows for enabling and modifying vibration and vibration strength per player. Also adds a toggle for enabling/disabling accurate vibrations. Co-authored-by: Its-Rei <kupfel@gmail.com>nce_cpp
18 changed files with 751 additions and 30 deletions
-
11dist/qt_themes/qdarkstyle/style.qss
-
12dist/qt_themes/qdarkstyle_midnight_blue/style.qss
-
13src/core/hle/service/hid/controllers/npad.cpp
-
1src/core/settings.h
-
3src/input_common/settings.h
-
3src/yuzu/CMakeLists.txt
-
16src/yuzu/applets/controller.cpp
-
3src/yuzu/applets/controller.h
-
18src/yuzu/applets/controller.ui
-
16src/yuzu/configuration/config.cpp
-
4src/yuzu/configuration/configure_input.cpp
-
22src/yuzu/configuration/configure_input.ui
-
66src/yuzu/configuration/configure_vibration.cpp
-
40src/yuzu/configuration/configure_vibration.h
-
546src/yuzu/configuration/configure_vibration.ui
-
2src/yuzu_cmd/config.cpp
-
4src/yuzu_cmd/default_ini.h
-
1src/yuzu_tester/config.cpp
@ -0,0 +1,66 @@ |
|||||
|
// Copyright 2020 yuzu Emulator Project
|
||||
|
// Licensed under GPLv2 or any later version
|
||||
|
// Refer to the license.txt file included.
|
||||
|
|
||||
|
#include "core/settings.h"
|
||||
|
#include "ui_configure_vibration.h"
|
||||
|
#include "yuzu/configuration/configure_vibration.h"
|
||||
|
|
||||
|
ConfigureVibration::ConfigureVibration(QWidget* parent) |
||||
|
: QDialog(parent), ui(std::make_unique<Ui::ConfigureVibration>()) { |
||||
|
ui->setupUi(this); |
||||
|
|
||||
|
vibration_groupboxes = { |
||||
|
ui->vibrationGroupPlayer1, ui->vibrationGroupPlayer2, ui->vibrationGroupPlayer3, |
||||
|
ui->vibrationGroupPlayer4, ui->vibrationGroupPlayer5, ui->vibrationGroupPlayer6, |
||||
|
ui->vibrationGroupPlayer7, ui->vibrationGroupPlayer8, |
||||
|
}; |
||||
|
|
||||
|
vibration_spinboxes = { |
||||
|
ui->vibrationSpinPlayer1, ui->vibrationSpinPlayer2, ui->vibrationSpinPlayer3, |
||||
|
ui->vibrationSpinPlayer4, ui->vibrationSpinPlayer5, ui->vibrationSpinPlayer6, |
||||
|
ui->vibrationSpinPlayer7, ui->vibrationSpinPlayer8, |
||||
|
}; |
||||
|
|
||||
|
const auto& players = Settings::values.players.GetValue(); |
||||
|
|
||||
|
for (std::size_t i = 0; i < NUM_PLAYERS; ++i) { |
||||
|
vibration_groupboxes[i]->setChecked(players[i].vibration_enabled); |
||||
|
vibration_spinboxes[i]->setValue(players[i].vibration_strength); |
||||
|
} |
||||
|
|
||||
|
ui->checkBoxAccurateVibration->setChecked( |
||||
|
Settings::values.enable_accurate_vibrations.GetValue()); |
||||
|
|
||||
|
if (!Settings::IsConfiguringGlobal()) { |
||||
|
ui->checkBoxAccurateVibration->setDisabled(true); |
||||
|
} |
||||
|
|
||||
|
RetranslateUI(); |
||||
|
} |
||||
|
|
||||
|
ConfigureVibration::~ConfigureVibration() = default; |
||||
|
|
||||
|
void ConfigureVibration::ApplyConfiguration() { |
||||
|
auto& players = Settings::values.players.GetValue(); |
||||
|
|
||||
|
for (std::size_t i = 0; i < NUM_PLAYERS; ++i) { |
||||
|
players[i].vibration_enabled = vibration_groupboxes[i]->isChecked(); |
||||
|
players[i].vibration_strength = vibration_spinboxes[i]->value(); |
||||
|
} |
||||
|
|
||||
|
Settings::values.enable_accurate_vibrations.SetValue( |
||||
|
ui->checkBoxAccurateVibration->isChecked()); |
||||
|
} |
||||
|
|
||||
|
void ConfigureVibration::changeEvent(QEvent* event) { |
||||
|
if (event->type() == QEvent::LanguageChange) { |
||||
|
RetranslateUI(); |
||||
|
} |
||||
|
|
||||
|
QDialog::changeEvent(event); |
||||
|
} |
||||
|
|
||||
|
void ConfigureVibration::RetranslateUI() { |
||||
|
ui->retranslateUi(this); |
||||
|
} |
||||
@ -0,0 +1,40 @@ |
|||||
|
// Copyright 2020 yuzu Emulator Project |
||||
|
// Licensed under GPLv2 or any later version |
||||
|
// Refer to the license.txt file included. |
||||
|
|
||||
|
#pragma once |
||||
|
|
||||
|
#include <array> |
||||
|
#include <memory> |
||||
|
#include <QDialog> |
||||
|
|
||||
|
class QGroupBox; |
||||
|
class QSpinBox; |
||||
|
|
||||
|
namespace Ui { |
||||
|
class ConfigureVibration; |
||||
|
} |
||||
|
|
||||
|
class ConfigureVibration : public QDialog { |
||||
|
Q_OBJECT |
||||
|
|
||||
|
public: |
||||
|
explicit ConfigureVibration(QWidget* parent); |
||||
|
~ConfigureVibration() override; |
||||
|
|
||||
|
void ApplyConfiguration(); |
||||
|
|
||||
|
private: |
||||
|
void changeEvent(QEvent* event) override; |
||||
|
void RetranslateUI(); |
||||
|
|
||||
|
std::unique_ptr<Ui::ConfigureVibration> ui; |
||||
|
|
||||
|
static constexpr std::size_t NUM_PLAYERS = 8; |
||||
|
|
||||
|
// Groupboxes encapsulating the vibration strength spinbox. |
||||
|
std::array<QGroupBox*, NUM_PLAYERS> vibration_groupboxes; |
||||
|
|
||||
|
// Spinboxes representing the vibration strength percentage. |
||||
|
std::array<QSpinBox*, NUM_PLAYERS> vibration_spinboxes; |
||||
|
}; |
||||
@ -0,0 +1,546 @@ |
|||||
|
<?xml version="1.0" encoding="UTF-8"?> |
||||
|
<ui version="4.0"> |
||||
|
<class>ConfigureVibration</class> |
||||
|
<widget class="QDialog" name="ConfigureVibration"> |
||||
|
<property name="geometry"> |
||||
|
<rect> |
||||
|
<x>0</x> |
||||
|
<y>0</y> |
||||
|
<width>364</width> |
||||
|
<height>242</height> |
||||
|
</rect> |
||||
|
</property> |
||||
|
<property name="windowTitle"> |
||||
|
<string>Configure Vibration</string> |
||||
|
</property> |
||||
|
<property name="styleSheet"> |
||||
|
<string notr="true"/> |
||||
|
</property> |
||||
|
<layout class="QVBoxLayout"> |
||||
|
<item> |
||||
|
<widget class="QGroupBox" name="vibrationStrengthGroup"> |
||||
|
<property name="title"> |
||||
|
<string>Vibration</string> |
||||
|
</property> |
||||
|
<layout class="QVBoxLayout" name="verticalLayout_3" stretch="0,0"> |
||||
|
<property name="leftMargin"> |
||||
|
<number>9</number> |
||||
|
</property> |
||||
|
<property name="topMargin"> |
||||
|
<number>9</number> |
||||
|
</property> |
||||
|
<property name="rightMargin"> |
||||
|
<number>9</number> |
||||
|
</property> |
||||
|
<property name="bottomMargin"> |
||||
|
<number>9</number> |
||||
|
</property> |
||||
|
<item> |
||||
|
<widget class="QWidget" name="player14Widget" native="true"> |
||||
|
<layout class="QHBoxLayout" name="horizontalLayout_4"> |
||||
|
<property name="leftMargin"> |
||||
|
<number>0</number> |
||||
|
</property> |
||||
|
<property name="topMargin"> |
||||
|
<number>0</number> |
||||
|
</property> |
||||
|
<property name="rightMargin"> |
||||
|
<number>0</number> |
||||
|
</property> |
||||
|
<property name="bottomMargin"> |
||||
|
<number>0</number> |
||||
|
</property> |
||||
|
<item> |
||||
|
<widget class="QGroupBox" name="vibrationGroupPlayer1"> |
||||
|
<property name="title"> |
||||
|
<string>Player 1</string> |
||||
|
</property> |
||||
|
<property name="checkable"> |
||||
|
<bool>true</bool> |
||||
|
</property> |
||||
|
<layout class="QHBoxLayout" name="horizontalLayout_8"> |
||||
|
<property name="leftMargin"> |
||||
|
<number>3</number> |
||||
|
</property> |
||||
|
<property name="topMargin"> |
||||
|
<number>3</number> |
||||
|
</property> |
||||
|
<property name="rightMargin"> |
||||
|
<number>3</number> |
||||
|
</property> |
||||
|
<property name="bottomMargin"> |
||||
|
<number>3</number> |
||||
|
</property> |
||||
|
<item> |
||||
|
<widget class="QSpinBox" name="vibrationSpinPlayer1"> |
||||
|
<property name="minimumSize"> |
||||
|
<size> |
||||
|
<width>68</width> |
||||
|
<height>21</height> |
||||
|
</size> |
||||
|
</property> |
||||
|
<property name="maximumSize"> |
||||
|
<size> |
||||
|
<width>68</width> |
||||
|
<height>16777215</height> |
||||
|
</size> |
||||
|
</property> |
||||
|
<property name="suffix"> |
||||
|
<string>%</string> |
||||
|
</property> |
||||
|
<property name="minimum"> |
||||
|
<number>1</number> |
||||
|
</property> |
||||
|
<property name="maximum"> |
||||
|
<number>150</number> |
||||
|
</property> |
||||
|
<property name="value"> |
||||
|
<number>100</number> |
||||
|
</property> |
||||
|
</widget> |
||||
|
</item> |
||||
|
</layout> |
||||
|
</widget> |
||||
|
</item> |
||||
|
<item> |
||||
|
<widget class="QGroupBox" name="vibrationGroupPlayer2"> |
||||
|
<property name="title"> |
||||
|
<string>Player 2</string> |
||||
|
</property> |
||||
|
<property name="checkable"> |
||||
|
<bool>true</bool> |
||||
|
</property> |
||||
|
<layout class="QHBoxLayout" name="horizontalLayout_9"> |
||||
|
<property name="leftMargin"> |
||||
|
<number>3</number> |
||||
|
</property> |
||||
|
<property name="topMargin"> |
||||
|
<number>3</number> |
||||
|
</property> |
||||
|
<property name="rightMargin"> |
||||
|
<number>3</number> |
||||
|
</property> |
||||
|
<property name="bottomMargin"> |
||||
|
<number>3</number> |
||||
|
</property> |
||||
|
<item> |
||||
|
<widget class="QSpinBox" name="vibrationSpinPlayer2"> |
||||
|
<property name="minimumSize"> |
||||
|
<size> |
||||
|
<width>68</width> |
||||
|
<height>21</height> |
||||
|
</size> |
||||
|
</property> |
||||
|
<property name="maximumSize"> |
||||
|
<size> |
||||
|
<width>68</width> |
||||
|
<height>16777215</height> |
||||
|
</size> |
||||
|
</property> |
||||
|
<property name="suffix"> |
||||
|
<string>%</string> |
||||
|
</property> |
||||
|
<property name="minimum"> |
||||
|
<number>1</number> |
||||
|
</property> |
||||
|
<property name="maximum"> |
||||
|
<number>150</number> |
||||
|
</property> |
||||
|
<property name="value"> |
||||
|
<number>100</number> |
||||
|
</property> |
||||
|
</widget> |
||||
|
</item> |
||||
|
</layout> |
||||
|
</widget> |
||||
|
</item> |
||||
|
<item> |
||||
|
<widget class="QGroupBox" name="vibrationGroupPlayer3"> |
||||
|
<property name="title"> |
||||
|
<string>Player 3</string> |
||||
|
</property> |
||||
|
<property name="checkable"> |
||||
|
<bool>true</bool> |
||||
|
</property> |
||||
|
<layout class="QHBoxLayout" name="horizontalLayout_10"> |
||||
|
<property name="leftMargin"> |
||||
|
<number>3</number> |
||||
|
</property> |
||||
|
<property name="topMargin"> |
||||
|
<number>3</number> |
||||
|
</property> |
||||
|
<property name="rightMargin"> |
||||
|
<number>3</number> |
||||
|
</property> |
||||
|
<property name="bottomMargin"> |
||||
|
<number>3</number> |
||||
|
</property> |
||||
|
<item> |
||||
|
<widget class="QSpinBox" name="vibrationSpinPlayer3"> |
||||
|
<property name="minimumSize"> |
||||
|
<size> |
||||
|
<width>68</width> |
||||
|
<height>21</height> |
||||
|
</size> |
||||
|
</property> |
||||
|
<property name="maximumSize"> |
||||
|
<size> |
||||
|
<width>68</width> |
||||
|
<height>16777215</height> |
||||
|
</size> |
||||
|
</property> |
||||
|
<property name="suffix"> |
||||
|
<string>%</string> |
||||
|
</property> |
||||
|
<property name="minimum"> |
||||
|
<number>1</number> |
||||
|
</property> |
||||
|
<property name="maximum"> |
||||
|
<number>150</number> |
||||
|
</property> |
||||
|
<property name="value"> |
||||
|
<number>100</number> |
||||
|
</property> |
||||
|
</widget> |
||||
|
</item> |
||||
|
</layout> |
||||
|
</widget> |
||||
|
</item> |
||||
|
<item> |
||||
|
<widget class="QGroupBox" name="vibrationGroupPlayer4"> |
||||
|
<property name="title"> |
||||
|
<string>Player 4</string> |
||||
|
</property> |
||||
|
<property name="checkable"> |
||||
|
<bool>true</bool> |
||||
|
</property> |
||||
|
<layout class="QHBoxLayout" name="horizontalLayout_11"> |
||||
|
<property name="leftMargin"> |
||||
|
<number>3</number> |
||||
|
</property> |
||||
|
<property name="topMargin"> |
||||
|
<number>3</number> |
||||
|
</property> |
||||
|
<property name="rightMargin"> |
||||
|
<number>3</number> |
||||
|
</property> |
||||
|
<property name="bottomMargin"> |
||||
|
<number>3</number> |
||||
|
</property> |
||||
|
<item> |
||||
|
<widget class="QSpinBox" name="vibrationSpinPlayer4"> |
||||
|
<property name="minimumSize"> |
||||
|
<size> |
||||
|
<width>68</width> |
||||
|
<height>21</height> |
||||
|
</size> |
||||
|
</property> |
||||
|
<property name="maximumSize"> |
||||
|
<size> |
||||
|
<width>68</width> |
||||
|
<height>16777215</height> |
||||
|
</size> |
||||
|
</property> |
||||
|
<property name="suffix"> |
||||
|
<string>%</string> |
||||
|
</property> |
||||
|
<property name="minimum"> |
||||
|
<number>1</number> |
||||
|
</property> |
||||
|
<property name="maximum"> |
||||
|
<number>150</number> |
||||
|
</property> |
||||
|
<property name="value"> |
||||
|
<number>100</number> |
||||
|
</property> |
||||
|
</widget> |
||||
|
</item> |
||||
|
</layout> |
||||
|
</widget> |
||||
|
</item> |
||||
|
</layout> |
||||
|
</widget> |
||||
|
</item> |
||||
|
<item> |
||||
|
<widget class="QWidget" name="player58Widget" native="true"> |
||||
|
<layout class="QHBoxLayout" name="horizontalLayout_6"> |
||||
|
<property name="leftMargin"> |
||||
|
<number>0</number> |
||||
|
</property> |
||||
|
<property name="topMargin"> |
||||
|
<number>0</number> |
||||
|
</property> |
||||
|
<property name="rightMargin"> |
||||
|
<number>0</number> |
||||
|
</property> |
||||
|
<property name="bottomMargin"> |
||||
|
<number>0</number> |
||||
|
</property> |
||||
|
<item> |
||||
|
<widget class="QGroupBox" name="vibrationGroupPlayer7"> |
||||
|
<property name="title"> |
||||
|
<string>Player 5</string> |
||||
|
</property> |
||||
|
<property name="checkable"> |
||||
|
<bool>true</bool> |
||||
|
</property> |
||||
|
<layout class="QHBoxLayout" name="horizontalLayout_14"> |
||||
|
<property name="leftMargin"> |
||||
|
<number>3</number> |
||||
|
</property> |
||||
|
<property name="topMargin"> |
||||
|
<number>3</number> |
||||
|
</property> |
||||
|
<property name="rightMargin"> |
||||
|
<number>3</number> |
||||
|
</property> |
||||
|
<property name="bottomMargin"> |
||||
|
<number>3</number> |
||||
|
</property> |
||||
|
<item> |
||||
|
<widget class="QSpinBox" name="vibrationSpinPlayer7"> |
||||
|
<property name="minimumSize"> |
||||
|
<size> |
||||
|
<width>68</width> |
||||
|
<height>21</height> |
||||
|
</size> |
||||
|
</property> |
||||
|
<property name="maximumSize"> |
||||
|
<size> |
||||
|
<width>68</width> |
||||
|
<height>16777215</height> |
||||
|
</size> |
||||
|
</property> |
||||
|
<property name="suffix"> |
||||
|
<string>%</string> |
||||
|
</property> |
||||
|
<property name="minimum"> |
||||
|
<number>1</number> |
||||
|
</property> |
||||
|
<property name="maximum"> |
||||
|
<number>150</number> |
||||
|
</property> |
||||
|
<property name="value"> |
||||
|
<number>100</number> |
||||
|
</property> |
||||
|
</widget> |
||||
|
</item> |
||||
|
</layout> |
||||
|
</widget> |
||||
|
</item> |
||||
|
<item> |
||||
|
<widget class="QGroupBox" name="vibrationGroupPlayer8"> |
||||
|
<property name="title"> |
||||
|
<string>Player 6</string> |
||||
|
</property> |
||||
|
<property name="checkable"> |
||||
|
<bool>true</bool> |
||||
|
</property> |
||||
|
<layout class="QHBoxLayout" name="horizontalLayout_15"> |
||||
|
<property name="leftMargin"> |
||||
|
<number>3</number> |
||||
|
</property> |
||||
|
<property name="topMargin"> |
||||
|
<number>3</number> |
||||
|
</property> |
||||
|
<property name="rightMargin"> |
||||
|
<number>3</number> |
||||
|
</property> |
||||
|
<property name="bottomMargin"> |
||||
|
<number>3</number> |
||||
|
</property> |
||||
|
<item> |
||||
|
<widget class="QSpinBox" name="vibrationSpinPlayer8"> |
||||
|
<property name="minimumSize"> |
||||
|
<size> |
||||
|
<width>68</width> |
||||
|
<height>21</height> |
||||
|
</size> |
||||
|
</property> |
||||
|
<property name="maximumSize"> |
||||
|
<size> |
||||
|
<width>68</width> |
||||
|
<height>16777215</height> |
||||
|
</size> |
||||
|
</property> |
||||
|
<property name="suffix"> |
||||
|
<string>%</string> |
||||
|
</property> |
||||
|
<property name="minimum"> |
||||
|
<number>1</number> |
||||
|
</property> |
||||
|
<property name="maximum"> |
||||
|
<number>150</number> |
||||
|
</property> |
||||
|
<property name="value"> |
||||
|
<number>100</number> |
||||
|
</property> |
||||
|
</widget> |
||||
|
</item> |
||||
|
</layout> |
||||
|
</widget> |
||||
|
</item> |
||||
|
<item> |
||||
|
<widget class="QGroupBox" name="vibrationGroupPlayer5"> |
||||
|
<property name="title"> |
||||
|
<string>Player 7</string> |
||||
|
</property> |
||||
|
<property name="checkable"> |
||||
|
<bool>true</bool> |
||||
|
</property> |
||||
|
<layout class="QHBoxLayout" name="horizontalLayout_12"> |
||||
|
<property name="leftMargin"> |
||||
|
<number>3</number> |
||||
|
</property> |
||||
|
<property name="topMargin"> |
||||
|
<number>3</number> |
||||
|
</property> |
||||
|
<property name="rightMargin"> |
||||
|
<number>3</number> |
||||
|
</property> |
||||
|
<property name="bottomMargin"> |
||||
|
<number>3</number> |
||||
|
</property> |
||||
|
<item> |
||||
|
<widget class="QSpinBox" name="vibrationSpinPlayer5"> |
||||
|
<property name="minimumSize"> |
||||
|
<size> |
||||
|
<width>68</width> |
||||
|
<height>21</height> |
||||
|
</size> |
||||
|
</property> |
||||
|
<property name="maximumSize"> |
||||
|
<size> |
||||
|
<width>68</width> |
||||
|
<height>16777215</height> |
||||
|
</size> |
||||
|
</property> |
||||
|
<property name="suffix"> |
||||
|
<string>%</string> |
||||
|
</property> |
||||
|
<property name="minimum"> |
||||
|
<number>1</number> |
||||
|
</property> |
||||
|
<property name="maximum"> |
||||
|
<number>150</number> |
||||
|
</property> |
||||
|
<property name="value"> |
||||
|
<number>100</number> |
||||
|
</property> |
||||
|
</widget> |
||||
|
</item> |
||||
|
</layout> |
||||
|
</widget> |
||||
|
</item> |
||||
|
<item> |
||||
|
<widget class="QGroupBox" name="vibrationGroupPlayer6"> |
||||
|
<property name="title"> |
||||
|
<string>Player 8</string> |
||||
|
</property> |
||||
|
<property name="checkable"> |
||||
|
<bool>true</bool> |
||||
|
</property> |
||||
|
<layout class="QHBoxLayout" name="horizontalLayout_13"> |
||||
|
<property name="leftMargin"> |
||||
|
<number>3</number> |
||||
|
</property> |
||||
|
<property name="topMargin"> |
||||
|
<number>3</number> |
||||
|
</property> |
||||
|
<property name="rightMargin"> |
||||
|
<number>3</number> |
||||
|
</property> |
||||
|
<property name="bottomMargin"> |
||||
|
<number>3</number> |
||||
|
</property> |
||||
|
<item> |
||||
|
<widget class="QSpinBox" name="vibrationSpinPlayer6"> |
||||
|
<property name="minimumSize"> |
||||
|
<size> |
||||
|
<width>68</width> |
||||
|
<height>21</height> |
||||
|
</size> |
||||
|
</property> |
||||
|
<property name="maximumSize"> |
||||
|
<size> |
||||
|
<width>68</width> |
||||
|
<height>16777215</height> |
||||
|
</size> |
||||
|
</property> |
||||
|
<property name="suffix"> |
||||
|
<string>%</string> |
||||
|
</property> |
||||
|
<property name="minimum"> |
||||
|
<number>1</number> |
||||
|
</property> |
||||
|
<property name="maximum"> |
||||
|
<number>150</number> |
||||
|
</property> |
||||
|
<property name="value"> |
||||
|
<number>100</number> |
||||
|
</property> |
||||
|
</widget> |
||||
|
</item> |
||||
|
</layout> |
||||
|
</widget> |
||||
|
</item> |
||||
|
</layout> |
||||
|
</widget> |
||||
|
</item> |
||||
|
</layout> |
||||
|
</widget> |
||||
|
</item> |
||||
|
<item> |
||||
|
<widget class="QGroupBox" name="vibrationSettingsGroup"> |
||||
|
<property name="title"> |
||||
|
<string>Settings</string> |
||||
|
</property> |
||||
|
<layout class="QVBoxLayout" name="verticalLayout"> |
||||
|
<item> |
||||
|
<widget class="QCheckBox" name="checkBoxAccurateVibration"> |
||||
|
<property name="text"> |
||||
|
<string>Enable Accurate Vibration</string> |
||||
|
</property> |
||||
|
</widget> |
||||
|
</item> |
||||
|
</layout> |
||||
|
</widget> |
||||
|
</item> |
||||
|
<item> |
||||
|
<spacer name="spacerVibration"> |
||||
|
<property name="orientation"> |
||||
|
<enum>Qt::Vertical</enum> |
||||
|
</property> |
||||
|
<property name="sizeHint" stdset="0"> |
||||
|
<size> |
||||
|
<width>167</width> |
||||
|
<height>55</height> |
||||
|
</size> |
||||
|
</property> |
||||
|
</spacer> |
||||
|
</item> |
||||
|
<item> |
||||
|
<widget class="QDialogButtonBox" name="buttonBoxVibration"> |
||||
|
<property name="standardButtons"> |
||||
|
<set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set> |
||||
|
</property> |
||||
|
</widget> |
||||
|
</item> |
||||
|
</layout> |
||||
|
</widget> |
||||
|
<resources/> |
||||
|
<connections> |
||||
|
<connection> |
||||
|
<sender>buttonBoxVibration</sender> |
||||
|
<signal>accepted()</signal> |
||||
|
<receiver>ConfigureVibration</receiver> |
||||
|
<slot>accept()</slot> |
||||
|
</connection> |
||||
|
<connection> |
||||
|
<sender>buttonBoxVibration</sender> |
||||
|
<signal>rejected()</signal> |
||||
|
<receiver>ConfigureVibration</receiver> |
||||
|
<slot>reject()</slot> |
||||
|
</connection> |
||||
|
</connections> |
||||
|
</ui> |
||||
Write
Preview
Loading…
Cancel
Save
Reference in new issue