launcher: add local game patches (#111)

launcher: add game patches
This commit is contained in:
nmzik
2026-07-27 16:19:31 +02:00
committed by GitHub
parent 31ea0081a9
commit f60f80b631
14 changed files with 497 additions and 14 deletions
+2
View File
@@ -73,6 +73,7 @@ public:
QString name;
QString title_id; /* Serial / title id from sce_sys/param.json */
QString gameVersion; /* appVersion / contentVersion from sce_sys/param.json */
QString firmwareVer; /* requiredSystemSoftwareVersion from sce_sys/param.json */
QString basedir; /* Game base directory */
QString game_path; /* Launcher-unique game path */
@@ -117,6 +118,7 @@ public:
void CopyFrom(const Configuration& other) {
name = other.name;
title_id = other.title_id;
gameVersion = other.gameVersion;
firmwareVer = other.firmwareVer;
basedir = other.basedir;
game_path = other.game_path;
+34
View File
@@ -0,0 +1,34 @@
#ifndef PATCHES_DIALOG_H
#define PATCHES_DIALOG_H
#include "common.h"
#include <QDialog>
#include <QString>
class Configuration;
class QLabel;
class QListWidget;
class QPushButton;
class PatchesDialog final: public QDialog {
public:
explicit PatchesDialog(const Configuration& game, QWidget* parent = nullptr);
~PatchesDialog() override = default;
KYTY_QT_CLASS_NO_COPY(PatchesDialog);
[[nodiscard]] static bool IsSupportedTitleId(const QString& title_id);
[[nodiscard]] static QString PatchPlanPath(const QString& title_id);
private:
void Load();
void Save();
QString m_title_id;
QListWidget* m_patches = nullptr;
QLabel* m_status = nullptr;
QPushButton* m_apply = nullptr;
};
#endif // PATCHES_DIALOG_H