diff --git a/src/View/BoundaryCondition/Edit/Window.py b/src/View/BoundaryCondition/Edit/Window.py
index 2d5c29c6e01483b526e3777a3e898e3f1674a6fe..faf418964eb3dcca530f2c51eafbfd0a893359fd 100644
--- a/src/View/BoundaryCondition/Edit/Window.py
+++ b/src/View/BoundaryCondition/Edit/Window.py
@@ -108,7 +108,7 @@ class EditBoundaryConditionWindow(PamhyrWindow):
         name = trad[self._pamhyr_name]
         if self._data is not None:
             node_name = (self._data.node.name if self._data.node is not None
-                         else _translate("BoundaryCondition", "Not associate"))
+                         else trad['not_associated'])
             name += (
                 f" - {study.name} " +
                 f" - {self._data.name} ({self._data.id}) " +
diff --git a/src/View/BoundaryCondition/Table.py b/src/View/BoundaryCondition/Table.py
index 48dfcc39dfc1ee02422308c73be6e2ba6d5bd1a6..eec695cbadc8d81a134d01b4052a7b671b055b05 100644
--- a/src/View/BoundaryCondition/Table.py
+++ b/src/View/BoundaryCondition/Table.py
@@ -85,7 +85,7 @@ class ComboBoxDelegate(QItemDelegate):
             )
         else:
             self.editor.addItems(
-                [_translate("BoundaryCondition", "Not associate")] +
+                [self._trad["not_associated"]] +
                 self._data.nodes_names()
             )
 
@@ -145,7 +145,7 @@ class TableModel(PamhyrTableModel):
         elif self._headers[column] == "node":
             n = self._lst.get(self._tab, row).node
             if n is None:
-                return _translate("BoundaryCondition", "Not associate")
+                return self._trad["not_associated"]
             return n.name
 
         return QVariant()
diff --git a/src/View/BoundaryCondition/translate.py b/src/View/BoundaryCondition/translate.py
index 81746fd9abfe0cdb90330c8529117da23ef2ddc8..19244076b8a30640d7c1dea61d61b83c79202e63 100644
--- a/src/View/BoundaryCondition/translate.py
+++ b/src/View/BoundaryCondition/translate.py
@@ -47,7 +47,7 @@ class BCTranslate(MainTranslate):
         )
 
         self._sub_dict["long_types"] = {
-            "ND": _translate("BoundaryCondition", "Not defined"),
+            "ND": self._dict["not_defined"],
             "PC": _translate("BoundaryCondition", "Ponctual contribution"),
             "TZ": _translate("BoundaryCondition", "Z(t)"),
             "TD": _translate("BoundaryCondition", "Q(t)"),
diff --git a/src/View/Frictions/Table.py b/src/View/Frictions/Table.py
index 7d8972d7e4a97991af4e1ddee86857ef312de97e..6b4dd8ce974ec65475d6c151959b95990943b220 100644
--- a/src/View/Frictions/Table.py
+++ b/src/View/Frictions/Table.py
@@ -52,11 +52,12 @@ _translate = QCoreApplication.translate
 
 class ComboBoxDelegate(QItemDelegate):
     def __init__(self, data=None, study=None,
-                 mode="stricklers", parent=None):
+                 mode="stricklers", trad=None, parent=None):
         super(ComboBoxDelegate, self).__init__(parent)
 
         self._data = data
         self._study = study
+        self._trad = trad
         self._mode = mode
 
     def createEditor(self, parent, option, index):
@@ -64,7 +65,7 @@ class ComboBoxDelegate(QItemDelegate):
 
         if self._mode == "stricklers":
             self.editor.addItems(
-                [_translate("Frictions", "Not defined")] +
+                [self._trad["not_defined"]] +
                 list(
                     map(
                         lambda s: str(s),
@@ -119,12 +120,12 @@ class TableModel(PamhyrTableModel):
         elif self._headers[column] == "begin_strickler":
             value = self._lst.get(row).begin_strickler
             if value is None:
-                return _translate("Frictions", "Not defined")
+                return self._trad["not_defined"]
             return str(value)
         elif self._headers[column] == "end_strickler":
             value = self._lst.get(row).end_strickler
             if value is None:
-                return _translate("Frictions", "Not defined")
+                return self._trad["not_defined"]
             return str(value)
 
         return QVariant()
diff --git a/src/View/Frictions/Window.py b/src/View/Frictions/Window.py
index 4dd4dadb00a87df41683b8d5c946f34e4f054266..ba2fa098e69ad1f862f3d723dd97b183222eb197 100644
--- a/src/View/Frictions/Window.py
+++ b/src/View/Frictions/Window.py
@@ -99,6 +99,7 @@ class FrictionsWindow(PamhyrWindow):
             data=self._reach,
             study=self._study,
             mode="stricklers",
+            trad=self._trad,
             parent=self
         )
 
@@ -115,6 +116,7 @@ class FrictionsWindow(PamhyrWindow):
                 "end_strickler": self._delegate_stricklers,
             },
             data=self._reach,
+            trad=self._trad,
             undo=self._undo_stack,
             opt_data=self._study
         )
diff --git a/src/View/Geometry/PlotXY.py b/src/View/Geometry/PlotXY.py
index 4557c717911e761f9d67dfd190faf9b10e2020ec..3bf49cbb0b89ec1e7f229a2e5bd092312289a8fe 100644
--- a/src/View/Geometry/PlotXY.py
+++ b/src/View/Geometry/PlotXY.py
@@ -52,10 +52,12 @@ class PlotXY(PamhyrPlot):
         self.init_axes()
 
         if self.data is None:
+            self.idle()
             return
 
         if self.data.number_profiles == 0:
             self._init = False
+            self.idle()
             return
 
         self.draw_xy()
diff --git a/src/View/HydraulicStructures/BasicHydraulicStructures/Translate.py b/src/View/HydraulicStructures/BasicHydraulicStructures/Translate.py
index 75921b750a79ff91216fe7dbefe4c8cf4a1b538a..f55fb2d778e212588520e94dafd133c101c38413 100644
--- a/src/View/HydraulicStructures/BasicHydraulicStructures/Translate.py
+++ b/src/View/HydraulicStructures/BasicHydraulicStructures/Translate.py
@@ -106,9 +106,7 @@ hydraulic structure values?"
         # BHS types long names
 
         self._sub_dict["long_types"] = {
-            "ND": _translate(
-                "BasicHydraulicStructures", "Not defined"
-            ),
+            "ND": self._dict["not_defined"],
             "S1": _translate(
                 "BasicHydraulicStructures", "Discharge weir"
             ),
diff --git a/src/View/HydraulicStructures/Table.py b/src/View/HydraulicStructures/Table.py
index 5dc6982357815857dc297e3b606701a6b987f6ff..a794f0a0d2ffc9bf14cf14071086d361e042dbfc 100644
--- a/src/View/HydraulicStructures/Table.py
+++ b/src/View/HydraulicStructures/Table.py
@@ -76,7 +76,7 @@ class ComboBoxDelegate(QItemDelegate):
             )
 
         self.editor.addItems(
-            [_translate("Hydraulic structure", "Not associated")] +
+            [self._trad['not_associated']] +
             val
         )
 
@@ -124,12 +124,12 @@ class TableModel(PamhyrTableModel):
         elif self._headers[column] == "reach":
             n = self._lst.get(row).input_reach
             if n is None:
-                return _translate("Hydraulic structure", "Not associated")
+                return self._trad['not_associated']
             return n.name
         elif self._headers[column] == "kp":
             n = self._lst.get(row).input_kp
             if n is None:
-                return _translate("Hydraulic structure", "Not associated")
+                return self._trad['not_associated']
             return n
 
         return QVariant()
@@ -140,7 +140,7 @@ class TableModel(PamhyrTableModel):
 
         row = index.row()
         column = index.column()
-        na = _translate("Hydraulic structure", "Not associated")
+        na = self._trad['not_associated']
 
         try:
             if self._headers[column] == "name":
diff --git a/src/View/LateralContribution/Edit/Window.py b/src/View/LateralContribution/Edit/Window.py
index 3dbc4f5fbe962ff39450e8a54f67ea08aa7f415c..53c774cb51f6bfcb3a3c38c370d79a964010ac61 100644
--- a/src/View/LateralContribution/Edit/Window.py
+++ b/src/View/LateralContribution/Edit/Window.py
@@ -59,8 +59,7 @@ class EditLateralContributionWindow(PamhyrWindow):
         name = trad[self._pamhyr_name]
         if self._data is not None:
             edge_name = (self._data.edge.name if self._data.edge is not None
-                         else _translate("LateralContribution",
-                                         "Not associate"))
+                         else trad['not_associated'])
             name += (
                 f" - {study.name} " +
                 f" - {self._data.name} ({self._data.id}) " +
diff --git a/src/View/LateralContribution/Table.py b/src/View/LateralContribution/Table.py
index 132888d8106a4f8c649a37a038217f17c39191d6..3b632392c0cfc081e1a9162aa1d08c681aa1ab7a 100644
--- a/src/View/LateralContribution/Table.py
+++ b/src/View/LateralContribution/Table.py
@@ -80,7 +80,7 @@ class ComboBoxDelegate(QItemDelegate):
             self.editor.addItems(lst)
         else:
             self.editor.addItems(
-                [_translate("LateralContribution", "Not associate")] +
+                [self._trad['not_associated']] +
                 self._data.edges_names()
             )
 
@@ -133,7 +133,7 @@ class TableModel(PamhyrTableModel):
         elif self._headers[column] == "edge":
             n = self._lst.get(self._tab, row).edge
             if n is None:
-                return _translate("LateralContribution", "Not associate")
+                return self._trad['not_associated']
             return n.name
         elif self._headers[column] == "begin_kp":
             return self._lst.get(self._tab, row).begin_kp
diff --git a/src/View/LateralContribution/Window.py b/src/View/LateralContribution/Window.py
index 6edd2a42d7c9b2708b4573a31f5170ba1fd58c7d..48ec3cc2e4505b73b4ccd87f3118b207e7c228d7 100644
--- a/src/View/LateralContribution/Window.py
+++ b/src/View/LateralContribution/Window.py
@@ -132,6 +132,7 @@ class LateralContributionWindow(PamhyrWindow):
         self.plot = PlotXY(
             canvas=self.canvas,
             data=None,
+            trad=self._trad,
             toolbar=None,
         )
 
@@ -197,10 +198,11 @@ class LateralContributionWindow(PamhyrWindow):
         self.plot = PlotXY(
             canvas=self.canvas,
             data=data,
+            trad=self._trad,
             toolbar=None,
         )
         self.plot.highlight = highlight
-        self.plot.draw()
+        self.plot.update()
 
     def add(self):
         tab = self.current_tab()
diff --git a/src/View/LateralContribution/translate.py b/src/View/LateralContribution/translate.py
index 1e955cf9ead54c8e1f03b96458004b2a162fbe02..145e137f826a345ef8ad6ac0fdf51b4726562958 100644
--- a/src/View/LateralContribution/translate.py
+++ b/src/View/LateralContribution/translate.py
@@ -43,12 +43,16 @@ class LCTranslate(MainTranslate):
         )
 
         self._sub_dict["long_types"] = {
-            "ND": _translate("LateralContribution", "Not defined"),
+            "ND": self._dict["not_defined"],
             "LC": _translate("LateralContribution", "Lateral contribution"),
             "RA": _translate("LateralContribution", "Rain"),
             "EV": _translate("LateralContribution", "Evaporation"),
         }
 
+        self._dict["x"] = _translate("Geometry", "X (m)")
+        self._dict["y"] = _translate("Geometry", "Y (m)")
+        self._dict["z"] = _translate("Geometry", "Z (m)")
+
         self._sub_dict["table_headers"] = {
             "name": self._dict["name"],
             "type": self._dict["type"],
diff --git a/src/View/Reservoir/Edit/Window.py b/src/View/Reservoir/Edit/Window.py
index 864b8b9f4189049f86af5b5848f291e509c4044f..ed8b2cd38440cdaffaca03caf91414db36d5cca9 100644
--- a/src/View/Reservoir/Edit/Window.py
+++ b/src/View/Reservoir/Edit/Window.py
@@ -63,7 +63,7 @@ class EditReservoirWindow(PamhyrWindow):
         name = trad[self._pamhyr_name]
         if self._data is not None:
             node_name = (self._data.node.name if self._data.node is not None
-                         else _translate("Reservoir", "Not associated"))
+                         else trad['not_associated'])
             name += (
                 f" - {study.name} " +
                 f" - {self._data.name} ({self._data.id}) " +
diff --git a/src/View/Reservoir/Table.py b/src/View/Reservoir/Table.py
index df68bd9ab45cb6d15d78893076bf1becf328a65d..9d36520ebf1f79394b0893412eae935f2b876773 100644
--- a/src/View/Reservoir/Table.py
+++ b/src/View/Reservoir/Table.py
@@ -70,7 +70,7 @@ class ComboBoxDelegate(QItemDelegate):
         )
 
         self.editor.addItems(
-            [_translate("Reservoir", "Not associated")] +
+            [self._trad['not_associated']] +
             nodes
         )
 
@@ -118,7 +118,7 @@ class TableModel(PamhyrTableModel):
         elif self._headers[column] == "node":
             n = self._lst.get(row).node
             if n is None:
-                return _translate("Reservoir", "Not associated")
+                return self._trad['not_associated']
             return n.name
 
         return QVariant()
diff --git a/src/View/SedimentLayers/Reach/Profile/Table.py b/src/View/SedimentLayers/Reach/Profile/Table.py
index 930c58afab4d3eac805577fd17221e8af3b5e02c..12126f0664408fd34450e371aee5599763da2bc7 100644
--- a/src/View/SedimentLayers/Reach/Profile/Table.py
+++ b/src/View/SedimentLayers/Reach/Profile/Table.py
@@ -44,16 +44,17 @@ logger = logging.getLogger()
 
 
 class ComboBoxDelegate(QItemDelegate):
-    def __init__(self, study=None, parent=None):
+    def __init__(self, study=None, trad=None, parent=None):
         super(ComboBoxDelegate, self).__init__(parent)
 
+        self._trad = trad
         self._study = study
 
     def createEditor(self, parent, option, index):
         self.editor = QComboBox(parent)
 
         self.editor.addItems(
-            # [_translate("SedimentLayers", "Not defined")] +
+            # [self._trad["not_defined"]] +
             list(
                 map(
                     lambda sl: str(sl),
@@ -104,7 +105,7 @@ class TableModel(PamhyrTableModel):
         elif self._headers[column] == "sl":
             value = self._data.point(row).sl
             if value is None:
-                text = _translate("SedimentLayers", "Not defined")
+                text = self._trad["not_defined"]
                 return text
             return str(value)
         elif self._headers[column] == "x":
@@ -125,7 +126,7 @@ class TableModel(PamhyrTableModel):
 
         if self._headers[column] == "sl":
             new = None
-            if value != _translate("SedimentLayers", "Not defined"):
+            if value != self._trad["not_defined"]:
                 new = next(
                     filter(
                         lambda sl: str(sl) == value,
diff --git a/src/View/SedimentLayers/Reach/SLDialog.py b/src/View/SedimentLayers/Reach/SLDialog.py
index 4340ea1e0501823c1e7fae288c2479566c0901b9..c113be6d52ae50b2fc9829d6f592b7c152e926b6 100644
--- a/src/View/SedimentLayers/Reach/SLDialog.py
+++ b/src/View/SedimentLayers/Reach/SLDialog.py
@@ -45,6 +45,7 @@ class SLDialog(PamhyrDialog):
             title=trad[self._pamhyr_name],
             study=study,
             config=config,
+            trad=trad,
             parent=parent
         )
 
@@ -55,7 +56,7 @@ class SLDialog(PamhyrDialog):
     def setup_combobox(self):
         self.combobox_add_items(
             "comboBox",
-            [_translate("SedimentLayers", "Not defined")] +
+            [self._trad["not_defined"]] +
             list(
                 map(
                     lambda sl: str(sl),
@@ -66,7 +67,7 @@ class SLDialog(PamhyrDialog):
 
     @property
     def sl(self):
-        if self.value == _translate("SedimentLayers", "Not defined"):
+        if self.value == self._trad["not_defined"]:
             return None
 
         return next(
diff --git a/src/View/SedimentLayers/Reach/Table.py b/src/View/SedimentLayers/Reach/Table.py
index 7105a6df4624615af5aac9a5da0edc5232dd5735..7c6298f2f48b5baad5bd8e14e4452bdcd5a9b9a5 100644
--- a/src/View/SedimentLayers/Reach/Table.py
+++ b/src/View/SedimentLayers/Reach/Table.py
@@ -53,7 +53,7 @@ class ComboBoxDelegate(QItemDelegate):
         self.editor = QComboBox(parent)
 
         self.editor.addItems(
-            [self._trad["nd"]] +
+            [self._trad["not_defined"]] +
             list(
                 map(
                     lambda sl: str(sl),
@@ -106,7 +106,7 @@ class TableModel(PamhyrTableModel):
         if self._headers[column] == "sl":
             value = self._data.profile(row).sl
             if value is None:
-                text = _translate("SedimentLayers", "Not defined")
+                text = self._trad["not_defined"]
                 return text
             return str(value)
 
@@ -121,7 +121,7 @@ class TableModel(PamhyrTableModel):
 
         if self._headers[column] == "sl":
             new = None
-            if value != _translate("SedimentLayers", "Not defined"):
+            if value != self._trad["not_defined"]:
                 new = next(
                     filter(
                         lambda sl: str(sl) == value,
diff --git a/src/View/SedimentLayers/Reach/translate.py b/src/View/SedimentLayers/Reach/translate.py
index eb3f3cf0aab8e3a5ec8a32d950acbab249d3557b..496a0afc33a4943beb74435f869d279f48b5a660 100644
--- a/src/View/SedimentLayers/Reach/translate.py
+++ b/src/View/SedimentLayers/Reach/translate.py
@@ -34,7 +34,6 @@ class SedimentReachTranslate(SedimentTranslate):
             "SedimentLayers", "Apply sediment layers to reach"
         )
 
-        self._dict["nd"] = _translate("SedimentLayers", "Not defined")
         self._dict["kp"] = self._dict["unit_kp"]
         self._dict["height"] = self._dict["unit_height"]
 
diff --git a/src/View/Translate.py b/src/View/Translate.py
index 87297cea05eab9d5d05e996a8c68216919542f6d..9b23a57f0426c49ac35175953a5365ef1af6b96c 100644
--- a/src/View/Translate.py
+++ b/src/View/Translate.py
@@ -42,6 +42,9 @@ class CommonWordTranslate(PamhyrTranslate):
         self._dict["main_channel"] = _translate("CommonWord", "Main channel")
         self._dict["floodway"] = _translate("CommonWord", "Floodway")
 
+        self._dict["not_defined"] = _translate("CommonWord", "Not defined")
+        self._dict["not_associated"] = _translate("CommonWord", "Not associated")
+
 
 class UnitTranslate(CommonWordTranslate):
     def __init__(self):