rekordbox_set_list_manager.controllers.file_controller#

File operations controller: new, open, save, save-as, open recent.

Classes#

FileController

Handles file operations: new, open, save, save-as, open-recent.

Module Contents#

class rekordbox_set_list_manager.controllers.file_controller.FileController(ctrl, parent_widget, parent=None)[source]#

Bases: PySide6.QtCore.QObject

Handles file operations: new, open, save, save-as, open-recent.

Emits signals that MainWindow uses to trigger purely UI side effects (clear undo history, reset transition note, rebuild recent-file menu).

Parameters:
recent_changed[source]#
note_cleared[source]#
undo_cleared[source]#
confirm_discard()[source]#

Return True if it is safe to proceed (saved or discarded), False to cancel.

Return type:

bool

new_project()[source]#

Create a new empty project, prompting to discard unsaved changes.

Return type:

None

open()[source]#

Prompt the user to select and open a project file.

Return type:

None

open_recent(path_str)[source]#

Open a recently-used project by file path string.

Parameters:

path_str (str)

Return type:

None

save()[source]#

Save the current project, prompting for a path if not yet set.

Return type:

None

save_as()[source]#

Prompt the user for a new file path and save the current project.

Return type:

None