mirror of
https://github.com/KytyPS5/KytyPS5.git
synced 2026-10-20 10:56:58 +02:00
05057c9441
launcher: configure and preview controller lightbar color Add an optional lightbar color to launcher settings and pass it to the emulator with --controller-color. Preview changes on RGB gamepads, handle controller hotplug events, and restore the saved color when settings dialogs close. Release launcher preview handles when starting a game. Co-authored-by: m66401970-eng <m66401970@gmail.com>
30 lines
635 B
C++
30 lines
635 B
C++
#ifndef CONTROLLER_LIGHTBAR_H
|
|
#define CONTROLLER_LIGHTBAR_H
|
|
|
|
#include <QColor>
|
|
#include <QHash>
|
|
#include <QObject>
|
|
#include <QString>
|
|
#include <QTimer>
|
|
|
|
#include <SDL3/SDL_gamepad.h>
|
|
|
|
class ControllerLightbar final: public QObject {
|
|
public:
|
|
explicit ControllerLightbar(QObject* parent = nullptr);
|
|
~ControllerLightbar() override;
|
|
|
|
void SetColor(const QString& color);
|
|
void Stop();
|
|
|
|
private:
|
|
void Refresh();
|
|
void ApplyColor(SDL_Gamepad* gamepad) const;
|
|
|
|
QTimer m_timer;
|
|
QHash<SDL_JoystickID, SDL_Gamepad*> m_gamepads;
|
|
QColor m_color;
|
|
};
|
|
|
|
#endif // CONTROLLER_LIGHTBAR_H
|