diff --git a/src/View/InitialConditions/Window.py b/src/View/InitialConditions/Window.py
index 1113b121..4f529aaf 100644
--- a/src/View/InitialConditions/Window.py
+++ b/src/View/InitialConditions/Window.py
@@ -60,7 +60,7 @@ from View.InitialConditions.PlotDischarge import PlotDischarge
from View.InitialConditions.translate import ICTranslate
from View.InitialConditions.DialogHeight import HeightDialog
from View.InitialConditions.DialogDischarge import DischargeDialog
-from View.Results.ReadingResultsDialog import ReadingResultsDialog
+from View.WaitingDialog import WaitingDialog
from Solver.Mage import Mage8
@@ -267,8 +267,9 @@ class InitialConditionsWindow(PamhyrWindow):
name=name
)
- dlg = ReadingResultsDialog(
+ dlg = WaitingDialog(
reading_fn=reading,
+ title="waiting_result",
parent=self
)
dlg.exec_()
diff --git a/src/View/MainWindow.py b/src/View/MainWindow.py
index 7d2d963b..fc16bee4 100644
--- a/src/View/MainWindow.py
+++ b/src/View/MainWindow.py
@@ -74,7 +74,6 @@ from View.SolverParameters.Window import SolverParametersWindow
from View.RunSolver.Window import SelectSolverWindow, SolverLogWindow
from View.CheckList.Window import CheckListWindow
from View.Results.Window import ResultsWindow
-from View.Results.ReadingResultsDialog import ReadingResultsDialog
from View.Debug.Window import ReplWindow
# Optional internal display of documentation for make the application
diff --git a/src/View/Results/ReadingResultsDialog.py b/src/View/Results/ReadingResultsDialog.py
deleted file mode 100644
index 84fa17ea..00000000
--- a/src/View/Results/ReadingResultsDialog.py
+++ /dev/null
@@ -1,117 +0,0 @@
-# ReadingResultsDialog.py -- Pamhyr
-# Copyright (C) 2023-2024 INRAE
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program. If not, see .
-
-# -*- coding: utf-8 -*-
-
-import logging
-
-from tools import logger_exception
-
-from View.Tools.PamhyrWindow import PamhyrDialog
-from View.Results.translate import ResultsTranslate
-
-from PyQt5.QtGui import (
- QKeySequence,
-)
-
-from PyQt5.QtCore import (
- Qt, QVariant, QAbstractTableModel, QTimer,
- QObject, pyqtSlot, pyqtSignal, QThread,
-)
-
-from PyQt5.QtWidgets import (
- QLabel,
-)
-
-logger = logging.getLogger()
-
-
-class Worker(QObject):
- signalStatus = pyqtSignal(str)
-
- def __init__(self, reading_fn, parent=None):
- super(self.__class__, self).__init__(parent)
-
- self._reading_fn = reading_fn
-
- def process(self):
- self._reading_fn()
- self.signalStatus.emit('end')
-
-
-class ReadingResultsDialog(PamhyrDialog):
- _pamhyr_ui = "DialogReadingResults"
- _pamhyr_name = "Reading results"
-
- _spin = ["-", "\\", "|", "/"]
-
- def __init__(self, reading_fn, parent=None):
- trad = ResultsTranslate()
- super(ReadingResultsDialog, self).__init__(
- title=trad[self._pamhyr_name],
- trad=trad,
- options=[],
- parent=parent
- )
-
- self._reading_fn = reading_fn
-
- self._init_default_values()
-
- self.setup_timer()
- self.setup_worker()
-
- self._timer.start(150)
- self._worker_thread.start()
-
- def _init_default_values(self):
- self._spinner_step = 0
-
- self.set_label_text("label_spinner", self._spin[0])
-
- def setup_worker(self):
- self._worker = Worker(self._reading_fn)
- self._worker_thread = QThread(parent=self)
- self._worker.moveToThread(self._worker_thread)
-
- self._worker.signalStatus.connect(self.close)
- self._worker_thread.started.connect(self._worker.process)
-
- def setup_timer(self):
- self._timer = QTimer(self)
- self._timer.timeout.connect(self.update_spinner)
-
- def update_spinner(self):
- self._spinner_step += 1
- self._spinner_step %= len(self._spin)
-
- self.set_label_text(
- "label_spinner",
- self._spin[self._spinner_step]
- )
-
- def end_worker(self):
- self._worker_thread.terminate()
- self._worker_thread.wait()
-
- def close(self):
- try:
- self._timer.stop()
- self.end_worker()
- except Exception as e:
- logger_exception(e)
-
- super().close()
diff --git a/src/View/RunSolver/Window.py b/src/View/RunSolver/Window.py
index 6f9bf5e6..49a838ba 100644
--- a/src/View/RunSolver/Window.py
+++ b/src/View/RunSolver/Window.py
@@ -44,7 +44,7 @@ from PyQt5.QtWidgets import (
)
from View.RunSolver.Log.Window import SolverLogFileWindow
-from View.Results.ReadingResultsDialog import ReadingResultsDialog
+from View.WaitingDialog import WaitingDialog
try:
from signal import SIGTERM, SIGSTOP, SIGCONT
@@ -297,7 +297,11 @@ class SolverLogWindow(PamhyrWindow):
logger.error(f"Failed to open results")
logger_exception(e)
- dlg = ReadingResultsDialog(reading_fn=reading_fn, parent=self)
+ dlg = WaitingDialog(
+ reading_fn=reading_fn,
+ title="waiting_result",
+ parent=self
+ )
dlg.exec_()
def _update_logs_all(self):
@@ -384,7 +388,11 @@ class SolverLogWindow(PamhyrWindow):
self._study, self._workdir, qlog=self._output
)
- dlg = ReadingResultsDialog(reading_fn=reading_fn, parent=self)
+ dlg = WaitingDialog(
+ reading_fn=reading_fn,
+ title="waiting_result",
+ parent=self
+ )
dlg.exec_()
self._parent.set_results(self._solver, self._results)
diff --git a/src/View/ui/DialogReadingResults.ui b/src/View/ui/DialogReadingResults.ui
deleted file mode 100644
index dd2c2a22..00000000
--- a/src/View/ui/DialogReadingResults.ui
+++ /dev/null
@@ -1,77 +0,0 @@
-
-
- Dialog
-
-
-
- 0
- 0
- 205
- 42
-
-
-
- Dialog
-
-
- -
-
-
-
-
-
-
-
-
- Read results:
-
-
-
- -
-
-
- Qt::Horizontal
-
-
-
- 40
- 20
-
-
-
-
- -
-
-
-
- Monospace
- 12
- 50
- false
-
-
-
- .
-
-
-
- -
-
-
- Qt::Horizontal
-
-
-
- 40
- 20
-
-
-
-
-
-
-
-
-
-
-
-
-