mirror of https://gitlab.com/pamhyr/pamhyr2
Merge branch 'master' of gitlab-ssh.irstea.fr:theophile.terraz/pamhyr
commit
57d43cd5d3
|
|
@ -52,18 +52,41 @@ class PlotDischarge(PamhyrPlot):
|
||||||
self._init = True
|
self._init = True
|
||||||
|
|
||||||
def draw_data(self):
|
def draw_data(self):
|
||||||
kp = self.data.reach.reach.get_kp()
|
self.line_discharge = []
|
||||||
|
|
||||||
if len(self.data) != 0:
|
if len(self.data) != 0:
|
||||||
kp = self.data.get_kp()
|
kp = self.data.get_kp()
|
||||||
discharge = self.data.get_discharge()
|
discharge = self.data.get_discharge()
|
||||||
|
|
||||||
self.line_kp_zmin = self.canvas.axes.plot(
|
line, = self.canvas.axes.plot(
|
||||||
kp, discharge,
|
kp, discharge,
|
||||||
color=self.color_plot,
|
color=self.color_plot,
|
||||||
**self.plot_default_kargs
|
**self.plot_default_kargs
|
||||||
)
|
)
|
||||||
|
self.line_discharge.append(line)
|
||||||
|
|
||||||
@timer
|
@timer
|
||||||
def update(self, ind=None):
|
def update(self, ind=None):
|
||||||
self.draw()
|
if not self._init:
|
||||||
|
self.draw()
|
||||||
|
|
||||||
|
self.update_data()
|
||||||
|
|
||||||
|
self.update_idle()
|
||||||
|
|
||||||
|
def update_data(self):
|
||||||
|
if len(self.data) == len(self.line_discharge):
|
||||||
|
kp = self.data.get_kp()
|
||||||
|
discharge = self.data.get_discharge()
|
||||||
|
|
||||||
|
line, = self.canvas.axes.plot(
|
||||||
|
kp, discharge,
|
||||||
|
color=self.color_plot,
|
||||||
|
**self.plot_default_kargs
|
||||||
|
)
|
||||||
|
self.line_discharge.append(line)
|
||||||
|
else:
|
||||||
|
for line in self.line_discharge:
|
||||||
|
line.remove()
|
||||||
|
|
||||||
|
self._draw_data()
|
||||||
|
|
|
||||||
|
|
@ -194,8 +194,13 @@ class InitialConditionsWindow(PamhyrWindow):
|
||||||
return rows[0].row()
|
return rows[0].row()
|
||||||
|
|
||||||
def update(self):
|
def update(self):
|
||||||
|
self.update(propagate=False)
|
||||||
|
|
||||||
|
def _update(self, propagate=True):
|
||||||
self._update_plot()
|
self._update_plot()
|
||||||
self._propagate_update(key=Modules.INITIAL_CONDITION)
|
|
||||||
|
if propagate:
|
||||||
|
self._propagate_update(key=Modules.INITIAL_CONDITION)
|
||||||
|
|
||||||
def _update_plot(self):
|
def _update_plot(self):
|
||||||
self.plot_1.draw()
|
self.plot_1.draw()
|
||||||
|
|
|
||||||
|
|
@ -448,8 +448,7 @@ class ApplicationWindow(QMainWindow, ListedSubWindow, WindowToolKit):
|
||||||
if Modules.CONFIG in keys:
|
if Modules.CONFIG in keys:
|
||||||
self._do_update_config()
|
self._do_update_config()
|
||||||
|
|
||||||
if Modules.STUDY in keys:
|
self._do_propagate_update_info_tab(keys)
|
||||||
self._tab_widget_info.update()
|
|
||||||
|
|
||||||
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:
|
||||||
|
|
@ -458,6 +457,18 @@ class ApplicationWindow(QMainWindow, ListedSubWindow, WindowToolKit):
|
||||||
|
|
||||||
self._tab_widget_checker.update(modules=keys)
|
self._tab_widget_checker.update(modules=keys)
|
||||||
|
|
||||||
|
def _do_propagate_update_info_tab(self, keys):
|
||||||
|
modules = Modules.modelling_list()
|
||||||
|
modules.append(Modules.STUDY)
|
||||||
|
|
||||||
|
has_info_mod = reduce(
|
||||||
|
lambda acc, m: acc or (m in keys),
|
||||||
|
modules, False
|
||||||
|
)
|
||||||
|
|
||||||
|
if has_info_mod:
|
||||||
|
self._tab_widget_info.update()
|
||||||
|
|
||||||
def _do_propagate_update_rec(self, window, keys):
|
def _do_propagate_update_rec(self, window, keys):
|
||||||
for _, win in window.sub_win_list:
|
for _, win in window.sub_win_list:
|
||||||
win._propagated_update(key=keys)
|
win._propagated_update(key=keys)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue