mirror of https://gitlab.com/pamhyr/pamhyr2
refactoring: refacto LC.
parent
ea3654f1f8
commit
500885ec4d
|
|
@ -19,7 +19,7 @@
|
|||
from datetime import datetime
|
||||
|
||||
from tools import timer, trace
|
||||
from View.Plot.APlot import APlot
|
||||
from View.Tools.PamhyrPlot import PamhyrPlot
|
||||
|
||||
from PyQt5.QtCore import (
|
||||
QCoreApplication
|
||||
|
|
@ -29,15 +29,19 @@ from View.LateralContribution.Edit.translate import *
|
|||
|
||||
_translate = QCoreApplication.translate
|
||||
|
||||
class Plot(APlot):
|
||||
def __init__(self, canvas=None, data=None,
|
||||
mode = "time", toolbar=None):
|
||||
class Plot(PamhyrPlot):
|
||||
def __init__(self, mode = "time", data=None,
|
||||
canvas=None, trad=None, toolbar=None,
|
||||
parent=None):
|
||||
super(Plot, self).__init__(
|
||||
canvas = canvas,
|
||||
trad = trad,
|
||||
data = data,
|
||||
toolbar=toolbar
|
||||
toolbar = toolbar,
|
||||
parent = parent
|
||||
)
|
||||
|
||||
self._table_headers = self._trad.get_dict("table_headers")
|
||||
self._mode = mode
|
||||
|
||||
def custom_ticks(self):
|
||||
|
|
@ -105,10 +109,10 @@ class Plot(APlot):
|
|||
# Plot label
|
||||
header = self.data.header
|
||||
self.canvas.axes.set_xlabel(
|
||||
table_headers[header[0]], color='black', fontsize=10
|
||||
self._table_headers[header[0]], color='black', fontsize=10
|
||||
)
|
||||
self.canvas.axes.set_ylabel(
|
||||
table_headers[header[1]], color='black', fontsize=10
|
||||
self._table_headers[header[1]], color='black', fontsize=10
|
||||
)
|
||||
|
||||
self.canvas.axes.autoscale_view(True, True, True)
|
||||
|
|
|
|||
|
|
@ -36,11 +36,10 @@ from PyQt5.QtWidgets import (
|
|||
QHeaderView,
|
||||
)
|
||||
|
||||
from View.Plot.MplCanvas import MplCanvas
|
||||
from View.Plot.PamhyrToolbar import PamhyrPlotToolbar
|
||||
from View.Tools.Plot.PamhyrCanvas import MplCanvas
|
||||
from View.Tools.Plot.PamhyrToolbar import PamhyrPlotToolbar
|
||||
|
||||
from View.LateralContribution.translate import long_types
|
||||
from View.LateralContribution.Edit.translate import table_headers, retranslate
|
||||
from View.LateralContribution.Edit.translate import LCETranslate
|
||||
from View.LateralContribution.Edit.Table import TableModel
|
||||
from View.LateralContribution.Edit.Plot import Plot
|
||||
|
||||
|
|
@ -54,6 +53,7 @@ class EditLateralContributionWindow(PamhyrWindow):
|
|||
study=None, config=None,
|
||||
parent=None):
|
||||
self._data = data
|
||||
trad = LCETranslate()
|
||||
|
||||
name = self._pamhyr_name
|
||||
if self._data is not None:
|
||||
|
|
@ -63,13 +63,14 @@ class EditLateralContributionWindow(PamhyrWindow):
|
|||
_translate("Edit lateral contribution", self._pamhyr_name) +
|
||||
f" - {study.name} " +
|
||||
f" - {self._data.name} ({self._data.id}) " +
|
||||
f"({long_types[self._data.lctype]} - {edge_name})"
|
||||
f"({trad.get_dict('long_types')[self._data.lctype]} - {edge_name})"
|
||||
)
|
||||
|
||||
super(EditLateralContributionWindow, self).__init__(
|
||||
title = name,
|
||||
study = study,
|
||||
config = config,
|
||||
trad = trad,
|
||||
parent = parent
|
||||
)
|
||||
|
||||
|
|
@ -78,17 +79,17 @@ class EditLateralContributionWindow(PamhyrWindow):
|
|||
self.setup_connections()
|
||||
|
||||
def setup_table(self):
|
||||
retranslate()
|
||||
headers = {}
|
||||
for h in self._data.header:
|
||||
headers[h] = table_headers[h]
|
||||
|
||||
self._delegate_time = PamhyrExTimeDelegate(
|
||||
data = self._data,
|
||||
mode = self._study.time_system,
|
||||
parent = self
|
||||
)
|
||||
|
||||
headers = {}
|
||||
table_headers = self._trad.get_dict("table_headers")
|
||||
for h in self._data.header:
|
||||
headers[h] = table_headers[h]
|
||||
|
||||
table = self.find(QTableView, "tableView")
|
||||
self._table = TableModel(
|
||||
table_view = table,
|
||||
|
|
@ -99,6 +100,7 @@ class EditLateralContributionWindow(PamhyrWindow):
|
|||
},
|
||||
data = self._data,
|
||||
undo = self._undo_stack,
|
||||
trad = self._trad,
|
||||
opt_data = self._study.time_system
|
||||
)
|
||||
|
||||
|
|
@ -121,6 +123,8 @@ class EditLateralContributionWindow(PamhyrWindow):
|
|||
data = self._data,
|
||||
mode = self._study.time_system,
|
||||
toolbar = self.toolbar,
|
||||
trad = self._trad,
|
||||
parent = self
|
||||
)
|
||||
self.plot.draw()
|
||||
|
||||
|
|
|
|||
|
|
@ -18,9 +18,16 @@
|
|||
|
||||
from PyQt5.QtCore import QCoreApplication
|
||||
|
||||
from View.Tools.PamhyrTranslate import PamhyrTranslate
|
||||
from View.LateralContribution.translate import LCTranslate
|
||||
|
||||
_translate = QCoreApplication.translate
|
||||
|
||||
table_headers = {
|
||||
class LCETranslate(LCTranslate):
|
||||
def __init__(self):
|
||||
super(LCETranslate, self).__init__()
|
||||
|
||||
self._sub_dict["table_headers"] = {
|
||||
"x": _translate("LateralContribution", "X"),
|
||||
"y": _translate("LateralContribution", "Y"),
|
||||
"time": _translate("LateralContribution", "Time"),
|
||||
|
|
@ -28,11 +35,3 @@ table_headers = {
|
|||
"discharge": _translate("LateralContribution", "Discharge (m³/s)"),
|
||||
"z": _translate("LateralContribution", "Z (m)")
|
||||
}
|
||||
|
||||
def retranslate():
|
||||
table_headers["x"] = _translate("LateralContribution", "X")
|
||||
table_headers["y"] = _translate("LateralContribution", "Y")
|
||||
table_headers["time"] = _translate("LateralContribution", "Time")
|
||||
table_headers["date"] = _translate("LateralContribution", "Date")
|
||||
table_headers["discharge"] = _translate("LateralContribution", "Discharge (m³/s)")
|
||||
table_headers["z"] = _translate("LateralContribution", "Z (m)")
|
||||
|
|
|
|||
|
|
@ -46,22 +46,24 @@ from Model.LateralContribution.LateralContributionTypes import (
|
|||
)
|
||||
|
||||
from View.Tools.PamhyrTable import PamhyrTableModel
|
||||
from View.LateralContribution.translate import *
|
||||
from View.LateralContribution.translate import LC_types
|
||||
|
||||
logger = logging.getLogger()
|
||||
|
||||
_translate = QCoreApplication.translate
|
||||
|
||||
class ComboBoxDelegate(QItemDelegate):
|
||||
def __init__(self, data=None, mode="type", tab="", parent=None):
|
||||
def __init__(self, data=None, mode="type", tab="", trad = None, parent=None):
|
||||
super(ComboBoxDelegate, self).__init__(parent)
|
||||
|
||||
self._data = data
|
||||
self._mode = mode
|
||||
self._tab = tab
|
||||
self._trad = trad
|
||||
|
||||
def createEditor(self, parent, option, index):
|
||||
self.editor = QComboBox(parent)
|
||||
long_types = self._trad.get_dict("long_types")
|
||||
|
||||
if self._mode == "type":
|
||||
lst = list(
|
||||
|
|
@ -108,6 +110,7 @@ class TableModel(PamhyrTableModel):
|
|||
def _setup_lst(self):
|
||||
self._lst = self._data.lateral_contribution
|
||||
self._tab = self._opt_data
|
||||
self._long_types = self._trad.get_dict("long_types")
|
||||
|
||||
def rowCount(self, parent):
|
||||
return self._lst.len(self._tab)
|
||||
|
|
@ -123,7 +126,7 @@ class TableModel(PamhyrTableModel):
|
|||
return self._lst.get(self._tab, row).name
|
||||
elif self._headers[column] == "type":
|
||||
t = self._lst.get(self._tab, row).lctype
|
||||
return long_types[t]
|
||||
return self._long_types[t]
|
||||
elif self._headers[column] == "edge":
|
||||
n = self._lst.get(self._tab, row).edge
|
||||
if n is None:
|
||||
|
|
@ -151,7 +154,7 @@ class TableModel(PamhyrTableModel):
|
|||
)
|
||||
)
|
||||
elif self._headers[column] == "type":
|
||||
key = next(k for k, v in long_types.items() if v == value)
|
||||
key = next(k for k, v in self._long_types.items() if v == value)
|
||||
self._undo.push(
|
||||
SetTypeCommand(
|
||||
self._lst, self._tab, row, LC_types[key]
|
||||
|
|
|
|||
|
|
@ -53,16 +53,13 @@ from View.LateralContribution.Table import (
|
|||
TableModel, ComboBoxDelegate
|
||||
)
|
||||
|
||||
from View.Plot.MplCanvas import MplCanvas
|
||||
from View.Tools.Plot.PamhyrCanvas import MplCanvas
|
||||
from View.Geometry.PlotXY import PlotXY
|
||||
from View.LateralContribution.translate import (
|
||||
long_types, table_headers, LC_types,
|
||||
retranslate,
|
||||
LC_types, LCTranslate,
|
||||
)
|
||||
from View.LateralContribution.Edit.Window import EditLateralContributionWindow
|
||||
|
||||
_translate = QCoreApplication.translate
|
||||
|
||||
logger = logging.getLogger()
|
||||
|
||||
class LateralContributionWindow(PamhyrWindow):
|
||||
|
|
@ -75,6 +72,7 @@ class LateralContributionWindow(PamhyrWindow):
|
|||
super(LateralContributionWindow, self).__init__(
|
||||
title = name,
|
||||
study = study,
|
||||
trad = LCTranslate(),
|
||||
config = config,
|
||||
parent=parent
|
||||
)
|
||||
|
|
@ -86,7 +84,6 @@ class LateralContributionWindow(PamhyrWindow):
|
|||
self.setup_connections()
|
||||
|
||||
def setup_table(self):
|
||||
retranslate()
|
||||
self._table = {}
|
||||
|
||||
for t in ["liquid", "solid", "suspenssion"]:
|
||||
|
|
@ -94,19 +91,21 @@ class LateralContributionWindow(PamhyrWindow):
|
|||
data = self._study.river,
|
||||
mode = "type",
|
||||
tab = t,
|
||||
trad = self._trad,
|
||||
parent=self
|
||||
)
|
||||
self._delegate_edge = ComboBoxDelegate(
|
||||
data = self._study.river,
|
||||
mode = "edge",
|
||||
tab = t,
|
||||
trad = self._trad,
|
||||
parent=self
|
||||
)
|
||||
|
||||
table = self.find(QTableView, f"tableView_{t}")
|
||||
self._table[t] = TableModel(
|
||||
table_view = table,
|
||||
table_headers = table_headers,
|
||||
table_headers = self._trad.get_dict("table_headers"),
|
||||
editable_headers = True,
|
||||
delegates = {
|
||||
"type": self._delegate_type,
|
||||
|
|
@ -114,6 +113,7 @@ class LateralContributionWindow(PamhyrWindow):
|
|||
},
|
||||
data = self._study.river,
|
||||
undo = self._undo_stack,
|
||||
trad = self._trad,
|
||||
opt_data = t,
|
||||
)
|
||||
table.setModel(self._table[t])
|
||||
|
|
|
|||
|
|
@ -18,27 +18,14 @@
|
|||
|
||||
from PyQt5.QtCore import QCoreApplication
|
||||
|
||||
from View.Tools.PamhyrTranslate import PamhyrTranslate
|
||||
|
||||
from Model.LateralContribution.LateralContributionTypes import (
|
||||
NotDefined, LateralContrib, Rain, Evaporation,
|
||||
)
|
||||
|
||||
_translate = QCoreApplication.translate
|
||||
|
||||
long_types = {
|
||||
"ND": _translate("LateralContribution", "Not defined"),
|
||||
"LC": _translate("LateralContribution", "Lateral contribution"),
|
||||
"RA": _translate("LateralContribution", "Rain"),
|
||||
"EV": _translate("LateralContribution", "Evaporation"),
|
||||
}
|
||||
|
||||
table_headers = {
|
||||
"name": _translate("LateralContribution", "Name"),
|
||||
"type": _translate("LateralContribution", "Type"),
|
||||
"edge": _translate("LateralContribution", "Reach"),
|
||||
"begin_kp": _translate("LateralContribution", "Begin kp (m)"),
|
||||
"end_kp": _translate("LateralContribution", "End kp (m)")
|
||||
}
|
||||
|
||||
LC_types = {
|
||||
"ND": NotDefined,
|
||||
"LC": LateralContrib,
|
||||
|
|
@ -46,14 +33,21 @@ LC_types = {
|
|||
"EV": Evaporation,
|
||||
}
|
||||
|
||||
def retranslate():
|
||||
table_headers["name"] = _translate("LateralContribution", "Name")
|
||||
table_headers["type"] = _translate("LateralContribution", "Type")
|
||||
table_headers["edge"] = _translate("LateralContribution", "Reach")
|
||||
table_headers["begin_kp"] = _translate("LateralContribution", "Begin kp (m)")
|
||||
table_headers["end_kp"] = _translate("LateralContribution", "End kp (m)")
|
||||
class LCTranslate(PamhyrTranslate):
|
||||
def __init__(self):
|
||||
super(LCTranslate, self).__init__()
|
||||
|
||||
long_types["ND"] = _translate("LateralContribution", "Not defined")
|
||||
long_types["LC"] = _translate("LateralContribution", "Lateral contribution")
|
||||
long_types["RA"] = _translate("LateralContribution", "Rain")
|
||||
long_types["EV"] = _translate("LateralContribution", "Evaporation")
|
||||
self._sub_dict["long_types"] = {
|
||||
"ND": _translate("LateralContribution", "Not defined"),
|
||||
"LC": _translate("LateralContribution", "Lateral contribution"),
|
||||
"RA": _translate("LateralContribution", "Rain"),
|
||||
"EV": _translate("LateralContribution", "Evaporation"),
|
||||
}
|
||||
|
||||
self._sub_dict["table_headers"] = {
|
||||
"name": _translate("LateralContribution", "Name"),
|
||||
"type": _translate("LateralContribution", "Type"),
|
||||
"edge": _translate("LateralContribution", "Reach"),
|
||||
"begin_kp": _translate("LateralContribution", "Begin kp (m)"),
|
||||
"end_kp": _translate("LateralContribution", "End kp (m)")
|
||||
}
|
||||
|
|
|
|||
|
|
@ -46,7 +46,7 @@ from View.About.Window import AboutWindow
|
|||
from View.Network.Window import NetworkWindow
|
||||
from View.Geometry.Window import GeometryWindow
|
||||
from View.BoundaryCondition.Window import BoundaryConditionWindow
|
||||
# from View.LateralContribution.Window import LateralContributionWindow
|
||||
from View.LateralContribution.Window import LateralContributionWindow
|
||||
# from View.InitialConditions.Window import InitialConditionsWindow
|
||||
# from View.Stricklers.Window import StricklersWindow
|
||||
# from View.Frictions.Window import FrictionsWindow
|
||||
|
|
|
|||
|
|
@ -18,6 +18,8 @@
|
|||
|
||||
import logging
|
||||
|
||||
from datetime import datetime, timedelta
|
||||
|
||||
from PyQt5.QtCore import (
|
||||
QModelIndex, QRect, QTime, QDateTime,
|
||||
)
|
||||
|
|
|
|||
Loading…
Reference in New Issue