diff --git a/src/View/WeatherParameters/TableDefault.py b/src/View/WeatherParameters/TableDefault.py index 8c472483..c4b55b9a 100644 --- a/src/View/WeatherParameters/TableDefault.py +++ b/src/View/WeatherParameters/TableDefault.py @@ -67,6 +67,16 @@ class WeatherParametersTableDefaultModel(PamhyrTableModel): return QVariant() + def headerData(self, section, orientation, role): + if (orientation == Qt.Orientation.Horizontal and + self._headers[section] == "value" and + role == Qt.ItemDataRole.ToolTipRole): + return self._trad["default_values_tooltip"] + + return super(WeatherParametersTableDefaultModel, self).headerData( + section, orientation, role + ) + def setData(self, index, value, role=Qt.EditRole): if not index.isValid() or role != Qt.EditRole: return False diff --git a/src/View/WeatherParameters/Window.py b/src/View/WeatherParameters/Window.py index e03bafda..4730f7e5 100644 --- a/src/View/WeatherParameters/Window.py +++ b/src/View/WeatherParameters/Window.py @@ -128,9 +128,19 @@ class WeatherParametersWindow(PamhyrWindow): toolBar.addAction(self.action_delete) toolBar.addAction(self.action_edit) + self.time_series_info = QLabel( + self._trad["time_series_unavailable"] + ) + self.time_series_info.setWordWrap(True) + layout.addWidget(self.time_series_info) layout.addWidget(self.table_spec_title) layout.addWidget(self.table_spec) + selected_type = self._wp_acronyms[ + self._selected_default_row_index + ] + self.update_time_series_info(selected_type) + def setup_table(self): self.table_default = self.find(QTableView, f"tableView") @@ -249,6 +259,7 @@ class WeatherParametersWindow(PamhyrWindow): self.enable_actions(tab_enabled) self.update_table_spec_title(enabled=tab_enabled) + self.update_time_series_info(type_selected) self._table_spec.update_tab_spec( type=type_selected, enabled=tab_enabled @@ -256,6 +267,12 @@ class WeatherParametersWindow(PamhyrWindow): return self._selected_default_row_index + def update_time_series_info(self, parameter_type): + if hasattr(self, "time_series_info"): + self.time_series_info.setVisible( + parameter_type in {"ALB", "SC", "CCF"} + ) + def enable_actions(self, enabled): if hasattr(self, "action_add"): self.action_add.setEnabled(enabled) diff --git a/src/View/WeatherParameters/translate.py b/src/View/WeatherParameters/translate.py index 0ac2f2b3..7f4fc107 100644 --- a/src/View/WeatherParameters/translate.py +++ b/src/View/WeatherParameters/translate.py @@ -29,12 +29,24 @@ class WeatherParametersTranslate(MainTranslate): self._dict["Weather parameters"] = _translate( "WeatherParameters", "Weather parameters") + self._dict["time_series_unavailable"] = _translate( + "WeatherParameters", + "Time series are not available for this parameter type." + ) + self._dict["default_values"] = _translate( + "WeatherParameters", "Default values" + ) + self._dict["default_values_tooltip"] = _translate( + "WeatherParameters", + "These values are applied to sections that have not been " + "defined using time series." + ) self._dict["rk"] = self._dict["unit_rk"] self._sub_dict["table_headers"] = { "name": self._dict["name"], - "value": self._dict["value"] + "value": self._dict["default_values"] } self._sub_dict["table_headers_spec"] = {