Commit 20686086 authored by Pierre-Antoine Rouby's avatar Pierre-Antoine Rouby
Browse files

pamhyr: Add CONFIG modules.

No related merge requests found
Pipeline #54350 failed with stages
in 2 minutes and 9 seconds
Showing with 15 additions and 0 deletions
+15 -0
...@@ -28,6 +28,7 @@ class Modules(Flag): ...@@ -28,6 +28,7 @@ class Modules(Flag):
# General # General
STUDY = auto() STUDY = auto()
CONFIG = auto()
# Modelling # Modelling
NETWORK = auto() NETWORK = auto()
......
...@@ -45,6 +45,7 @@ from PyQt5.QtWidgets import ( ...@@ -45,6 +45,7 @@ from PyQt5.QtWidgets import (
QComboBox, QUndoStack, QShortcut, QHeaderView, QComboBox, QUndoStack, QShortcut, QHeaderView,
) )
from Modules import Modules
from Solver.Solvers import solver_long_name from Solver.Solvers import solver_long_name
logger = logging.getLogger() logger = logging.getLogger()
...@@ -189,6 +190,7 @@ class ConfigureWindow(PamhyrDialog): ...@@ -189,6 +190,7 @@ class ConfigureWindow(PamhyrDialog):
self._config.lang = Config.languages( self._config.lang = Config.languages(
)[self.get_combobox_text("comboBox_language")] )[self.get_combobox_text("comboBox_language")]
self._propagate_update(key=Modules.CONFIG)
self.end() self.end()
def reject(self): def reject(self):
......
...@@ -408,6 +408,12 @@ class ApplicationWindow(QMainWindow, ListedSubWindow, WindowToolKit): ...@@ -408,6 +408,12 @@ class ApplicationWindow(QMainWindow, ListedSubWindow, WindowToolKit):
self._backup_timer.timeout.connect(self._backup) self._backup_timer.timeout.connect(self._backup)
def _do_update_config(self):
ts = self.get_config_backup_freq_to_sec()
logger.debug(f"Reset backup timer to {ts} second")
self._backup_timer.start(ts * 1000)
def _init_propagation_keys(self): def _init_propagation_keys(self):
self._propagation_keys = Modules(0) self._propagation_keys = Modules(0)
...@@ -419,11 +425,17 @@ class ApplicationWindow(QMainWindow, ListedSubWindow, WindowToolKit): ...@@ -419,11 +425,17 @@ class ApplicationWindow(QMainWindow, ListedSubWindow, WindowToolKit):
self.update() self.update()
keys = self._propagation_keys keys = self._propagation_keys
if keys is Modules.NONE:
return
self._init_propagation_keys() self._init_propagation_keys()
if Modules.WINDOW_LIST in keys: if Modules.WINDOW_LIST in keys:
self._do_update_window_list() self._do_update_window_list()
if Modules.CONFIG in keys:
self._do_update_config()
logger.debug(f"Propagation of {keys}") logger.debug(f"Propagation of {keys}")
for _, window in self.sub_win_list: for _, window in self.sub_win_list:
window._propagated_update(key=keys) window._propagated_update(key=keys)
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment