Skip to content
Snippets Groups Projects
Commit 9618c292 authored by Vincent Texier's avatar Vincent Texier
Browse files

[fix] fix network table model translation for headers, tooltips and member status column

Fix translation executed too early
Fix translation not working outside QObject instance
parent 67226081
No related branches found
No related tags found
1 merge request!7750.50.0
......@@ -5,10 +5,10 @@ from PyQt5.QtCore import (
QSortFilterProxyModel,
QDateTime,
QLocale,
QT_TRANSLATE_NOOP,
QModelIndex,
pyqtSignal,
)
QCoreApplication,
QT_TRANSLATE_NOOP)
from PyQt5.QtGui import QColor, QFont, QIcon
from sakia.data.entities import Node
from duniterpy.api.endpoint import (
......@@ -72,7 +72,7 @@ class NetworkFilterProxyModel(QSortFilterProxyModel):
return QVariant()
_type = self.sourceModel().headerData(section, orientation, role)
return NetworkTableModel.header_names[_type]
return QCoreApplication.translate("NetworkTableModel", NetworkTableModel.header_names[_type])
def data(self, index, role):
source_index = self.mapToSource(index)
......@@ -84,9 +84,9 @@ class NetworkFilterProxyModel(QSortFilterProxyModel):
if role == Qt.DisplayRole:
if index.column() == NetworkTableModel.columns_types.index("is_member"):
value = {
True: QT_TRANSLATE_NOOP("NetworkTableModel", "yes"),
False: QT_TRANSLATE_NOOP("NetworkTableModel", "no"),
None: QT_TRANSLATE_NOOP("NetworkTableModel", "offline"),
True: QCoreApplication.translate("NetworkTableModel", "yes"),
False: QCoreApplication.translate("NetworkTableModel", "no"),
None: QCoreApplication.translate("NetworkTableModel", "offline"),
}
return value[source_data]
......@@ -139,7 +139,6 @@ class NetworkTableModel(QAbstractTableModel):
"""
A Qt abstract item model to display
"""
header_names = {
"address": QT_TRANSLATE_NOOP("NetworkTableModel", "Address"),
"port": QT_TRANSLATE_NOOP("NetworkTableModel", "Port"),
......@@ -183,10 +182,11 @@ class NetworkTableModel(QAbstractTableModel):
OFFLINE: ":/icons/offline",
DESYNCED: ":/icons/forked",
}
node_states = {
ONLINE: lambda: QT_TRANSLATE_NOOP("NetworkTableModel", "Online"),
OFFLINE: lambda: QT_TRANSLATE_NOOP("NetworkTableModel", "Offline"),
DESYNCED: lambda: QT_TRANSLATE_NOOP("NetworkTableModel", "Unsynchronized"),
ONLINE: QT_TRANSLATE_NOOP("NetworkTableModel", "Online"),
OFFLINE: QT_TRANSLATE_NOOP("NetworkTableModel", "Offline"),
DESYNCED: QT_TRANSLATE_NOOP("NetworkTableModel", "Unsynchronized"),
}
def __init__(self, network_service, parent=None):
......@@ -335,9 +335,9 @@ class NetworkTableModel(QAbstractTableModel):
]
if role == Qt.ToolTipRole:
return NetworkTableModel.node_states[
return QCoreApplication.translate("NetworkTableModel", NetworkTableModel.node_states[
node[NetworkTableModel.columns_types.index("state")]
]()
])
if role == Qt.DecorationRole and index.column() == 0:
return QIcon(
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment