Skip to content

Undo/Redo for mod list changes #23

Description

@PyXiion

Origin of idea

Every mod list mutation (check/uncheck, reorder) is immediately committed to ModsConfig.xml with no revert path. A single misclick can lose desired state.

Suggestion / proposed solution

Implement QUndoStack / QUndoCommand in the mod list panel. Wrap each mod toggle, reorder, enable/disable as an UndoCommand. Wire Ctrl+Z / Ctrl+Y (or Ctrl+Shift+Z). Save clear undo stack on successful write to ModsConfig.xml.

Alternatives considered

  • Snapshot-based undo (store full mod list copies) — simpler but memory-heavy for large lists

Additional context

core/mod_service.py and ui/panels/mod_list_panel.py

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions