Skip to content
Snippets Groups Projects
Commit abca5bc5 authored by inso's avatar inso
Browse files

New attr_dict key in graph views

parent 9c59865c
No related branches found
No related tags found
No related merge requests found
from PyQt5.QtWidgets import QDialog
from PyQt5.QtCore import pyqtSignal, Qt
from PyQt5.QtCore import pyqtSignal, Qt, QElapsedTimer, QDateTime, QCoreApplication
from .connection_cfg_uic import Ui_ConnectionConfigurationDialog
from .congratulation_uic import Ui_CongratulationPopup
from duniterpy.key import SigningKey, ScryptParams
......@@ -22,6 +22,9 @@ class ConnectionConfigView(QDialog, Ui_ConnectionConfigurationDialog):
"""
super().__init__(parent)
self.setupUi(self)
self.last_speed = 0.1
self.average_speed = 1
self.timer = QElapsedTimer()
self.edit_uid.textChanged.connect(self.values_changed)
self.edit_password.textChanged.connect(self.values_changed)
self.edit_password_repeat.textChanged.connect(self.values_changed)
......@@ -153,11 +156,22 @@ class ConnectionConfigView(QDialog, Ui_ConnectionConfigurationDialog):
:param float ratio: the ratio of progress of current step (between 0 and 1)
:return:
"""
QCoreApplication.processEvents()
value = self.progress_bar.value()
self.progress_bar.setValue(value + 1000000*step_ratio)
next_value = value + 1000000*step_ratio
SMOOTHING_FACTOR = 0.005
speed_percent_by_ms = (next_value - value) / self.timer.elapsed()
self.average_speed = SMOOTHING_FACTOR * self.last_speed + (1 - SMOOTHING_FACTOR) * self.average_speed
remaining = (self.progress_bar.maximum() - next_value) / self.average_speed
self.last_speed = speed_percent_by_ms
displayed_remaining_time = QDateTime.fromTime_t(remaining).toUTC().toString("hh:mm:ss")
self.progress_bar.setFormat(self.tr("{0} scs remaining...".format(displayed_remaining_time)))
self.progress_bar.setValue(next_value)
self.timer.restart()
def set_progress_steps(self, steps):
self.progress_bar.setValue(0)
self.timer.start()
self.progress_bar.setMaximum(steps*1000000)
def set_step(self, step):
......
......@@ -17,7 +17,7 @@ class BaseNode(QGraphicsEllipseItem):
super().__init__()
self.metadata = nx_node[1]
self.metadata = nx_node[1]['attr_dict']
self.id = nx_node[0]
# unpack tuple
x, y = pos[nx_node[0]]
......
......@@ -77,7 +77,10 @@ class WotScene(BaseScene):
y = 0
x = -1 * scale
# sort by text
sort_certifier = sorted(certifier, key=lambda node_: node_[1]['text'].lower())
try:
sort_certifier = sorted(certifier, key=lambda node_: node_[1]['attr_dict']['text'].lower())
except KeyError as e:
print(e)
# add nodes and arcs
for n in sort_certifier:
y += 0.25 * scale
......@@ -104,7 +107,7 @@ class WotScene(BaseScene):
y = 0
x = 1 * scale
# sort by text
sort_certified = sorted(certified, key=lambda node_: node_[1]['text'].lower())
sort_certified = sorted(certified, key=lambda node_: node_[1]['attr_dict']['text'].lower())
# add nodes and arcs
for n in sort_certified:
y += 0.25 * scale
......@@ -157,9 +160,9 @@ class WotScene(BaseScene):
for edge in nx_graph.edges(data=True):
if edge[0] in certifiers_graph_pos and edge[1] == identity.pubkey:
self.addItem(WotEdge(edge[0], edge[1], edge[2], certifiers_graph_pos))
self.addItem(WotEdge(edge[0], edge[1], edge[2]['attr_dict'], certifiers_graph_pos))
if edge[0] == identity.pubkey and edge[1] in certified_graph_pos:
self.addItem(WotEdge(edge[0], edge[1], edge[2], certified_graph_pos))
self.addItem(WotEdge(edge[0], edge[1], edge[2]['attr_dict'], certified_graph_pos))
self.update()
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment