def __init__(self, parent, node):
super(LocalNodeWidget, self).__init__(parent)
self.setTitle('Local node properties')
self._node = node
self._node_id_collector = uavcan.app.message_collector.MessageCollector(
self._node, uavcan.protocol.NodeStatus, timeout=uavcan.protocol.NodeStatus().OFFLINE_TIMEOUT_MS * 1e-3)
self._node_id_label = QLabel('Set local node ID:', self)
self._node_id_spinbox = QSpinBox(self)
self._node_id_spinbox.setMaximum(NODE_ID_MAX)
self._node_id_spinbox.setMinimum(NODE_ID_MIN)
self._node_id_spinbox.setValue(NODE_ID_MAX)
self._node_id_spinbox.valueChanged.connect(self._update)
self._node_id_apply = make_icon_button('check', 'Apply local node ID', self,
on_clicked=self._on_node_id_apply_clicked)
self._update_timer = QTimer(self)
self._update_timer.setSingleShot(False)
self._update_timer.timeout.connect(self._update)
self._update_timer.start(500)
self._update()
layout = QHBoxLayout(self)
layout.addWidget(self._node_id_label)
layout.addWidget(self._node_id_spinbox)
layout.addWidget(self._node_id_apply)
layout.addStretch(1)
self.setLayout(layout)
flash(self, 'Some functions will be unavailable unless local node ID is set')
评论列表
文章目录