controllerglobalsettingswidget.h (1317B)
1 // SPDX-FileCopyrightText: 2019-2022 Connor McLaughlin <stenzek@gmail.com> 2 // SPDX-License-Identifier: (GPL-3.0 OR CC-BY-NC-ND-4.0) 3 4 #pragma once 5 #include "common/types.h" 6 7 #include <QtCore/QMap> 8 #include <QtWidgets/QDialog> 9 #include <QtWidgets/QWidget> 10 #include <array> 11 #include <vector> 12 13 #include "colorpickerbutton.h" 14 15 #include "ui_controllerglobalsettingswidget.h" 16 #include "ui_controllerledsettingsdialog.h" 17 18 class ControllerSettingsWindow; 19 20 class ControllerGlobalSettingsWidget : public QWidget 21 { 22 Q_OBJECT 23 24 public: 25 ControllerGlobalSettingsWidget(QWidget* parent, ControllerSettingsWindow* dialog); 26 ~ControllerGlobalSettingsWidget(); 27 28 void addDeviceToList(const QString& identifier, const QString& name); 29 void removeDeviceFromList(const QString& identifier); 30 31 Q_SIGNALS: 32 void bindingSetupChanged(); 33 34 private: 35 void updateSDLOptionsEnabled(); 36 void ledSettingsClicked(); 37 38 Ui::ControllerGlobalSettingsWidget m_ui; 39 ControllerSettingsWindow* m_dialog; 40 }; 41 42 class ControllerLEDSettingsDialog : public QDialog 43 { 44 Q_OBJECT 45 46 public: 47 ControllerLEDSettingsDialog(QWidget* parent, ControllerSettingsWindow* dialog); 48 ~ControllerLEDSettingsDialog(); 49 50 private: 51 void linkButton(ColorPickerButton* button, u32 player_id); 52 53 Ui::ControllerLEDSettingsDialog m_ui; 54 ControllerSettingsWindow* m_dialog; 55 };