diff --git a/src/View/MainWindowTabInfo.py b/src/View/MainWindowTabInfo.py
index bdfb7e63..2013cf7a 100644
--- a/src/View/MainWindowTabInfo.py
+++ b/src/View/MainWindowTabInfo.py
@@ -59,6 +59,10 @@ class WidgetInfo(PamhyrWidget):
self.set_label_text("label_cs", "0")
self.set_label_text("label_points", "0")
+ self.set_label_text("label_res", "0")
+ self.set_label_text("label_bc", "0")
+ self.set_label_text("label_lc", "0")
+
def update(self):
if self._study is None:
self.set_initial_values()
@@ -71,10 +75,12 @@ class WidgetInfo(PamhyrWidget):
self.set_geometry_values()
def set_network_values(self):
- n_nodes = self._study.river.enable_nodes_counts()
- n_d_nodes = self._study.river.nodes_counts() - n_nodes
- n_edges = self._study.river.enable_edges_counts()
- n_d_edges = self._study.river.edges_counts() - n_edges
+ river = self._study.river
+
+ n_nodes = river.enable_nodes_counts()
+ n_d_nodes = river.nodes_counts() - n_nodes
+ n_edges = river.enable_edges_counts()
+ n_d_edges = river.edges_counts() - n_edges
self.set_label_text(
"label_nodes",
@@ -85,20 +91,77 @@ class WidgetInfo(PamhyrWidget):
f"{n_edges} {self.color_grey}({n_d_edges}){self.color_end}"
)
- current = self._study.river.current_reach()
+ current = river.current_reach()
if current is not None:
name = current.reach.name
else:
name = "None"
self.set_label_text("label_current_reach", name)
+ self.set_network_values_ext(river)
+
+ def set_network_values_ext(self, river):
+ self.set_network_values_ext_reservoir(river)
+ self.set_network_values_ext_bc(river)
+ self.set_network_values_ext_lc(river)
+
+ def set_network_values_ext_reservoir(self, river):
+ n_res = 0
+ n_na_res = 0
+ for res in river.reservoir.lst:
+ if res.node is not None:
+ n_res += 1
+ else:
+ n_na_res += 1
+
+ self.set_label_text(
+ "label_res",
+ f"{n_res} {self.color_grey}({n_na_res}){self.color_end}"
+ )
+
+ def set_network_values_ext_bc(self, river):
+ bc = river.boundary_condition
+ n_bc = 0
+ n_na_bc = 0
+
+ for tab in bc._tabs_list:
+ for c in bc.get_tab(tab):
+ if c.node is not None:
+ n_bc += 1
+ else:
+ n_na_bc += 1
+
+ self.set_label_text(
+ "label_bc",
+ f"{n_bc} {self.color_grey}({n_na_bc}){self.color_end}"
+ )
+
+ def set_network_values_ext_lc(self, river):
+ lc = river.lateral_contribution
+ n_lc = 0
+ n_na_lc = 0
+
+ for tab in lc._tabs_list:
+ for c in lc.get_tab(tab):
+ if c.edge is not None:
+ n_lc += 1
+ else:
+ n_na_lc += 1
+
+ self.set_label_text(
+ "label_lc",
+ f"{n_lc} {self.color_grey}({n_na_lc}){self.color_end}"
+ )
+
def set_geometry_values(self):
+ river = self._study.river
+
n_cs = 0
n_d_cs = 0
n_points = 0
n_d_points = 0
- for edge in self._study.river.edges():
+ for edge in river.edges():
for profile in edge.reach.profiles:
if edge.is_enable():
n_points += len(profile)
@@ -115,3 +178,24 @@ class WidgetInfo(PamhyrWidget):
"label_points",
f"{n_points} {self.color_grey}({n_d_points}){self.color_end}"
)
+
+ self.set_geometry_values_ext(river)
+
+ def set_geometry_values_ext(self, river):
+ self.set_geometry_values_ext_hs(river)
+
+ def set_geometry_values_ext_hs(self, river):
+ hs = river.hydraulic_structures
+ n_hs = 0
+ n_na_hs = 0
+
+ for h in hs.lst:
+ if h.input_reach is not None and h.input_kp is not None:
+ n_hs += 1
+ else:
+ n_na_hs += 1
+
+ self.set_label_text(
+ "label_hs",
+ f"{n_hs} {self.color_grey}({n_na_hs}){self.color_end}"
+ )
diff --git a/src/View/ui/Widgets/MainWindowTabInfo.ui b/src/View/ui/Widgets/MainWindowTabInfo.ui
index c037b248..8f528f22 100644
--- a/src/View/ui/Widgets/MainWindowTabInfo.ui
+++ b/src/View/ui/Widgets/MainWindowTabInfo.ui
@@ -88,6 +88,16 @@
River network
+ -
+
+
+
+
+
+ @current_reach
+
+
+
-
@@ -95,7 +105,7 @@
- -
+
-
Qt::Horizontal
@@ -108,6 +118,13 @@
+ -
+
+
+ Current reach:
+
+
+
-
@@ -125,6 +142,13 @@
+ -
+
+
+ @nb_res
+
+
+
-
@@ -135,20 +159,51 @@
- -
-
+
-
+
- Current reach:
+ Boundary conditions:
- -
-
-
-
-
+
-
+
- @current_reach
+ Reservoir:
+
+
+
+ -
+
+
+ @nb_bc
+
+
+
+ -
+
+
+ Qt::Horizontal
+
+
+
+ 40
+ 20
+
+
+
+
+ -
+
+
+ Lateral contributions:
+
+
+
+ -
+
+
+ @nb_lc
@@ -161,6 +216,39 @@
Geometry
+ -
+
+
+ Qt::Horizontal
+
+
+
+ 40
+ 20
+
+
+
+
+ -
+
+
+ Qt::Horizontal
+
+
+
+ 40
+ 20
+
+
+
+
+ -
+
+
+ Hydraulic stuctures:
+
+
+
-
@@ -195,18 +283,12 @@
- -
-
-
- Qt::Horizontal
+
-
+
+
+ @nb_hs
-
-
- 40
- 20
-
-
-
+