PSP Sync: show friendly theme/DLC names instead of raw filenames
This commit is contained in:
+15
-8
@@ -2603,6 +2603,7 @@ class PspSyncPage(QWidget):
|
||||
self._library_items = []
|
||||
self._lib_raw = {}
|
||||
self._lib_norm = {}
|
||||
self._lib_path_name = {}
|
||||
self._gen = 0
|
||||
self._umd_gen = 0
|
||||
self._umd_iso = None
|
||||
@@ -2694,15 +2695,20 @@ class PspSyncPage(QWidget):
|
||||
self._library_items = list(items or [])
|
||||
self._lib_raw = {}
|
||||
self._lib_norm = {}
|
||||
self._lib_path_name = {}
|
||||
for it in self._library_items:
|
||||
label = it.get("canonical") or it.get("name") or ""
|
||||
if not label:
|
||||
continue
|
||||
stem = Path(label).stem
|
||||
self._lib_raw.setdefault(stem.lower(), it)
|
||||
n = matcher.normalize_name(stem)
|
||||
if n:
|
||||
self._lib_norm.setdefault(n, it)
|
||||
if label:
|
||||
stem = Path(label).stem
|
||||
self._lib_raw.setdefault(stem.lower(), it)
|
||||
n = matcher.normalize_name(stem)
|
||||
if n:
|
||||
self._lib_norm.setdefault(n, it)
|
||||
# Map the on-disk filename to the friendly name for themes/DLC
|
||||
# (the PSP only stores the raw file, so resolve names by filename).
|
||||
p = it.get("path") or ""
|
||||
if p:
|
||||
self._lib_path_name.setdefault(Path(p).name.lower(), label)
|
||||
self._filter_sync()
|
||||
self._populate(self._inventory)
|
||||
|
||||
@@ -3075,8 +3081,9 @@ class PspSyncPage(QWidget):
|
||||
table.setItem(row, 3, QTableWidgetItem(added))
|
||||
table.setItem(row, 4, NumericItem(f"{size / (1024 * 1024):.1f} MB" if size else "", size))
|
||||
elif kind == "dlc":
|
||||
friendly = self._lib_path_name.get((it.get("name") or "").lower())
|
||||
table.setItem(row, 1, QTableWidgetItem(it.get("id") or ""))
|
||||
table.setItem(row, 2, name)
|
||||
table.setItem(row, 2, QTableWidgetItem(friendly or it.get("name") or ""))
|
||||
table.setItem(row, 3, QTableWidgetItem(added))
|
||||
table.setItem(row, 4, NumericItem(f"{size / (1024 * 1024):.1f} MB" if size else "", size))
|
||||
else:
|
||||
|
||||
Reference in New Issue
Block a user