mirror of https://gitlab.com/pamhyr/pamhyr2
Results: Fix results reading before solver running... (again)
parent
9e9f56ee65
commit
99fe5e8f74
|
|
@ -138,6 +138,7 @@ class ApplicationWindow(QMainWindow, ListedSubWindow, WindowToolKit):
|
||||||
self.setup_connection()
|
self.setup_connection()
|
||||||
self.default_style()
|
self.default_style()
|
||||||
self.setup_debug_mode(init=True)
|
self.setup_debug_mode(init=True)
|
||||||
|
self.setup_results()
|
||||||
|
|
||||||
self.trans = QTranslator(self)
|
self.trans = QTranslator(self)
|
||||||
# self.ui.retranslateUi()
|
# self.ui.retranslateUi()
|
||||||
|
|
@ -360,6 +361,16 @@ class ApplicationWindow(QMainWindow, ListedSubWindow, WindowToolKit):
|
||||||
for action in model_action:
|
for action in model_action:
|
||||||
self.enable_actions(action, not no_model)
|
self.enable_actions(action, not no_model)
|
||||||
|
|
||||||
|
def setup_results(self):
|
||||||
|
self._last_solver = None
|
||||||
|
self._last_results = None
|
||||||
|
|
||||||
|
for solver in self.conf.solvers:
|
||||||
|
if solver.name == self.conf.last_solver_name:
|
||||||
|
self._last_solver = solver
|
||||||
|
self.enable_actions("action_menu_results_last", True)
|
||||||
|
return
|
||||||
|
|
||||||
def set_results(self, solver, results):
|
def set_results(self, solver, results):
|
||||||
self._last_solver = solver
|
self._last_solver = solver
|
||||||
self._last_results = results
|
self._last_results = results
|
||||||
|
|
@ -821,6 +832,12 @@ class ApplicationWindow(QMainWindow, ListedSubWindow, WindowToolKit):
|
||||||
if results is None:
|
if results is None:
|
||||||
results = self._last_results
|
results = self._last_results
|
||||||
|
|
||||||
|
if self._last_results is None:
|
||||||
|
results = solver.results(
|
||||||
|
self._study,
|
||||||
|
self._solver_workdir(solver)
|
||||||
|
)
|
||||||
|
|
||||||
# No results available
|
# No results available
|
||||||
if results is None:
|
if results is None:
|
||||||
return
|
return
|
||||||
|
|
@ -845,8 +862,19 @@ class ApplicationWindow(QMainWindow, ListedSubWindow, WindowToolKit):
|
||||||
)
|
)
|
||||||
res.show()
|
res.show()
|
||||||
|
|
||||||
|
def _solver_workdir(self, solver):
|
||||||
|
workdir = os.path.join(
|
||||||
|
os.path.dirname(self._study.filename),
|
||||||
|
"_PAMHYR_",
|
||||||
|
self._study.name.replace(" ", "_"),
|
||||||
|
solver.name.replace(" ", "_"),
|
||||||
|
)
|
||||||
|
|
||||||
|
return workdir
|
||||||
|
|
||||||
|
|
||||||
def open_last_results(self):
|
def open_last_results(self):
|
||||||
if self._last_solver is None or self._last_results is None:
|
if self._last_solver is None:
|
||||||
return
|
return
|
||||||
|
|
||||||
self.open_solver_results(self._last_solver, self._last_results)
|
self.open_solver_results(self._last_solver, self._last_results)
|
||||||
|
|
|
||||||
|
|
@ -264,7 +264,7 @@ class SolverLogWindow(PamhyrWindow):
|
||||||
self.find(QAction, "action_log_file").setEnabled(True)
|
self.find(QAction, "action_log_file").setEnabled(True)
|
||||||
|
|
||||||
self._update_logs_all()
|
self._update_logs_all()
|
||||||
self._update_get_results()
|
# self._update_get_results()
|
||||||
|
|
||||||
self._update_logs_all()
|
self._update_logs_all()
|
||||||
|
|
||||||
|
|
@ -348,7 +348,8 @@ class SolverLogWindow(PamhyrWindow):
|
||||||
def results(self):
|
def results(self):
|
||||||
if self._results is None:
|
if self._results is None:
|
||||||
self._results = self._solver.results(
|
self._results = self._solver.results(
|
||||||
self._study, self._workdir, qlog=self._output)
|
self._study, self._workdir, qlog=self._output
|
||||||
|
)
|
||||||
|
|
||||||
self._parent.set_results(self._solver, self._results)
|
self._parent.set_results(self._solver, self._results)
|
||||||
self._parent.open_solver_results(self._solver, self._results)
|
self._parent.open_solver_results(self._solver, self._results)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue