Hooked up simulation to BEsim

This commit is contained in:
2026-08-01 12:25:11 +02:00
parent a38d461a36
commit 2128fb00b4
11 changed files with 8241 additions and 24 deletions

View File

@@ -2,7 +2,7 @@ from __future__ import annotations
from pathlib import Path
from PySide6.QtCore import QObject, Qt
from PySide6.QtCore import QObject, Signal, Qt
from PySide6.QtWidgets import QApplication, QDialog, QFileDialog, QInputDialog, QMessageBox
from bedit_gui.services import document_files, simulation_files
@@ -17,6 +17,8 @@ logger = get_logger(__name__)
class SimulationFileController(QObject):
runtime_changed = Signal()
def __init__(self, window: SimulationWindow) -> None:
super().__init__(window)
self.window = window
@@ -34,6 +36,7 @@ class SimulationFileController(QObject):
self.compiled_model = None
self.path = None
self._update_window()
self.runtime_changed.emit()
logger.info("Created new simulation")
def open(self, path: str | Path, *, component: str | None = None, simulation: str | None = None, backed_by_file: bool = True, compiled_model: CompiledModel | None = None) -> None:
@@ -51,6 +54,7 @@ class SimulationFileController(QObject):
raise
self._log_compilation()
self._update_window()
self.runtime_changed.emit()
logger.info("Opened simulation: %s", file_path)
def open_dialog(self) -> None:
@@ -111,9 +115,12 @@ class SimulationFileController(QObject):
self.root.component = updated.component
self.root.component_path = next((path for component_id, _component, path in components if component_id == updated.component), self.root.component_path)
self.root.settings_name = updated.name
self.root.current_end_time = updated.start_time
self.root.results.clear()
if component_changed:
self.compiled_model = None
self._update_window()
self.runtime_changed.emit()
logger.info("Updated simulation settings: %s", updated.name)
def _source_components(self) -> list[tuple]: