def _on_change_pv_thread(self, pvname, value, **kwargs): pvn = _PVName.from_sp2rb(pvname) is_sp = _PVName.is_sp_pv(pvname) fun = self._dict_functs_for_update[self._dict_convert_pv2prop[pvn]] props = fun(is_sp, value) for hl_prop, val in props.items(): if val is not None: self.run_callbacks(self.channel, hl_prop, val, is_sp=is_sp)
def get_widgets(self): widgets = list() sz_polc = QSzPlcy(QSzPlcy.Fixed, QSzPlcy.Fixed) for idx, name in enumerate(self.BPM_NAMES): wid = QWidget(self.parent()) tooltip = '{0}; Pos = {1:5.1f} m'.format(self.BPM_NICKNAMES[idx], self.BPM_POS[idx]) if self.propty: item = SiriusLedState(self) item.setParent(wid) item.setSizePolicy(sz_polc) item.setToolTip(tooltip) pvname = SiriusPVName.from_sp2rb( name.substitute(prefix=self.prefix, propty=self.propty)) item.channel = pvname else: item = QCheckBox(self) item.setSizePolicy(sz_polc) hbl = QHBoxLayout(wid) hbl.setContentsMargins(0, 0, 0, 0) hbl.addWidget(item) widgets.append(wid) return widgets
def _on_connection_writepv(self, pvname, conn, **kwargs): if not _PVName.is_cmd_pv(pvname): # -Cmd must not change prop = self._dict_convert_pv2prop[_PVName.from_sp2rb(pvname)] self._writepvs[prop]._initialized = False # not self._locked self._on_connection(pvname, conn)