Network: Translate default node and reach name in ui.

This commit is contained in:
Pierre-Antoine Rouby committed 2024-09-23 09:50:57 +02:00
1 parent a95364db1d
commit 5f37767207
7 files changed
+346 -102

No files matched your search

+11 -4
View File
@@ -368,11 +368,18 @@ class EdgeItem(QGraphicsItem):
class NodeText(QGraphicsTextItem):
def __init__(self, node_item):
def __init__(self, node_item, graph):
super(NodeText, self).__init__()
self.item = node_item
self.setPlainText(self.item.node.name)
self.graph = graph
name = self.item.node.name
if name == "":
name = self.graph._trad.node_name(self.item.node)
self.setPlainText(name)
self.setDefaultTextColor(Qt.black)
self.set_custom_pos(self.item.pos())
self.setZValue(2)
@@ -502,7 +509,7 @@ class GraphWidget(QGraphicsView):
for node in self.graph.nodes():
inode = NodeItem(node, self)
self.texts[inode] = NodeText(inode)
self.texts[inode] = NodeText(inode, self)
self.scene().addItem(self.texts[inode])
self.scene().addItem(inode)
self.node_items.append(inode)
@@ -578,7 +585,7 @@ class GraphWidget(QGraphicsView):
inode = NodeItem(node, self)
self.scene().addItem(inode)
self.node_items.append(inode)
self.texts[inode] = NodeText(inode)
self.texts[inode] = NodeText(inode, self)
self.scene().addItem(self.texts[inode])
self.changeNode.emit(self.sender())
+12
View File
@@ -94,6 +94,9 @@ class NodeTableModel(PamhyrTableModel):
return ret
if self._headers[index.column()] == "name":
return self._trad.node_name(self._lst[index.row()])
return self._lst[index.row()][self._headers[index.column()]]
@pyqtSlot()
@@ -133,6 +136,15 @@ class EdgeTableModel(PamhyrTableModel):
if role != Qt.ItemDataRole.DisplayRole:
return QVariant()
if (self._headers[index.column()] == "node1" or
self._headers[index.column()] == "node2"):
return self._trad.node_name(
self._lst[index.row()][self._headers[index.column()]]
)
if self._headers[index.column()] == "name":
return self._trad.edge_name(self._lst[index.row()])
return self._lst[index.row()][self._headers[index.column()]]
@pyqtSlot()
+2
View File
@@ -90,6 +90,7 @@ class NetworkWindow(PamhyrWindow):
table_view=table,
table_headers=self._table_headers_node,
editable_headers=["name"],
trad=self._trad,
data=self._graph,
undo=self._undo_stack,
)
@@ -109,6 +110,7 @@ class NetworkWindow(PamhyrWindow):
table_view=table,
table_headers=self._table_headers_edge,
editable_headers=["name", "node1", "node2"],
trad=self._trad,
delegates={
"node1": self.delegate_combobox,
"node2": self.delegate_combobox,
+15
View File
@@ -31,6 +31,9 @@ class NetworkTranslate(MainTranslate):
"Network", "River network"
)
self._dict["node"] = _translate("Network", "Node")
self._dict["edge"] = _translate("Network", "Reach")
self._dict["menu_add_node"] = _translate("Network", "Add node")
self._dict["menu_del_node"] = _translate("Network", "Delete the node")
self._dict["menu_edit_res_node"] = _translate(
@@ -63,3 +66,15 @@ class NetworkTranslate(MainTranslate):
"node2": _translate("Network", "Destination node"),
"id": _translate("Network", "Index"),
}
def node_name(self, node):
if node.name == "":
return f"{self['node']} #{node.id}"
return node.name
def edge_name(self, edge):
if edge.name == "":
return f"{self['edge']} #{edge.id}"
return edge.name