fix(ui): emit LoadoutConfig object instead of just name

The loadout_saved signal was emitting a string (loadout name) but
on_loadout_selected expected an object with .name attribute.
Now emits the full LoadoutConfig so all gear data is available.
This commit is contained in:
LemonNexus 2026-02-09 14:18:19 +00:00
parent 499c4c7383
commit 032245ccad
1 changed files with 3 additions and 3 deletions

View File

@ -969,7 +969,7 @@ class ArmorSelectorDialog(QDialog):
class LoadoutManagerDialog(QDialog): class LoadoutManagerDialog(QDialog):
"""Main dialog for managing hunting loadouts with full armor system.""" """Main dialog for managing hunting loadouts with full armor system."""
loadout_saved = pyqtSignal(str) loadout_saved = pyqtSignal(object)
def __init__(self, parent=None, config_dir: Optional[str] = None): def __init__(self, parent=None, config_dir: Optional[str] = None):
super().__init__(parent) super().__init__(parent)
@ -1987,7 +1987,7 @@ class LoadoutManagerDialog(QDialog):
json.dump(config.to_dict(), f, indent=2) json.dump(config.to_dict(), f, indent=2)
self.current_loadout = config self.current_loadout = config
self.loadout_saved.emit(name) self.loadout_saved.emit(config)
self._load_saved_loadouts() self._load_saved_loadouts()
QMessageBox.information(self, "Saved", f"Loadout '{name}' saved successfully!") QMessageBox.information(self, "Saved", f"Loadout '{name}' saved successfully!")
@ -2137,7 +2137,7 @@ def main():
dialog = LoadoutManagerDialog() dialog = LoadoutManagerDialog()
# Connect signal for testing # Connect signal for testing
dialog.loadout_saved.connect(lambda name: print(f"Loadout saved: {name}")) dialog.loadout_saved.connect(lambda cfg: print(f"Loadout saved: {cfg.name}"))
if dialog.exec() == QDialog.DialogCode.Accepted: if dialog.exec() == QDialog.DialogCode.Accepted:
config = dialog.get_current_loadout() config = dialog.get_current_loadout()