Files
esa-remote-lite/GamesPanel.h
2026-04-01 19:52:53 +01:00

40 lines
981 B
C++

#pragma once
#include <QMap>
#include <QString>
#include <QWidget>
class QLabel;
class QListWidget;
class QPushButton;
class GamesPanel : public QWidget
{
Q_OBJECT
public:
explicit GamesPanel(QWidget *parent = nullptr);
void loadFromResponse(const QString &response); // GAM list (installed)
void loadAllFromResponse(const QString &response); // GAM listall (full catalogue)
signals:
void commandRequested(const QString &cmd);
private slots:
void onAddClicked();
void onStartClicked();
private:
void rebuildAvailable();
// Left pane
QListWidget *m_availableList = nullptr;
QPushButton *m_addBtn = nullptr;
// Right pane
QListWidget *m_installedList = nullptr;
QPushButton *m_startBtn = nullptr;
QPushButton *m_stopBtn = nullptr;
QMap<QString,QString> m_allGames; // name -> code (GAM listall)
QMap<QString,QString> m_installedGames; // name -> code (GAM list)
};