Skip to content

main_controller

Main controller module for the BRMS application.

Classes:

  • MainController

    Thin orchestrator: owns sub-controllers and simulation timer.

MainController

MainController(view: MainWindow, services: CoreServices)

Bases: BRMSController

Thin orchestrator: owns sub-controllers and simulation timer.

Methods:

  • load_simulation

    (Re)initialize all sub-controllers and views for a loaded simulation.

  • on_advance

    Advance simulation by one step, optionally stepping over non-business days.

  • on_exit

    Handle the exit signal from the view.

  • on_open_action

    Open a simulation zip file and reload.

  • on_pause_action

    Pause the simulation timer.

  • on_run_pause_toggle

    Toggle between running and paused based on the timer state.

  • on_start_action

    Start the simulation timer for continuous advancement.

  • on_stop_action

    Stop the simulation and disable all controls.

load_simulation

load_simulation(services: CoreServices) -> None

(Re)initialize all sub-controllers and views for a loaded simulation.

on_advance

on_advance() -> None

Advance simulation by one step, optionally stepping over non-business days.

When Step Over Non-Business Days is active, non-business days (no market data) are still processed for accruals and other calendar-based transactions, but the GUI keeps stepping until it reaches a day that has market data.

on_exit

on_exit() -> None

Handle the exit signal from the view.

on_open_action

on_open_action() -> None

Open a simulation zip file and reload.

on_pause_action

on_pause_action() -> None

Pause the simulation timer.

on_run_pause_toggle

on_run_pause_toggle() -> None

Toggle between running and paused based on the timer state.

on_start_action

on_start_action() -> None

Start the simulation timer for continuous advancement.

on_stop_action

on_stop_action() -> None

Stop the simulation and disable all controls.