def draw(self, screen_pos): """ Draws a qub point in the sample video. """ qub_point = None try: qub_point, _ = QubAddDrawing(self._drawing, QubPointDrawingMgr, QubCanvasTarget) # patch Qub event manager not to respond to Shift key # to prevent moving the point evmgr_ref = qub_point._eventMgr evmgr = evmgr_ref() if evmgr: for method_name in ("_mouseMove", "_mousePressed", "_mouseRelease"): def prevent_shift(self, event, mgr=None, method_name=method_name): if event.state() & qt.Qt.ShiftButton: return return getattr(QubEventMgr, method_name)(self,event,mgr) setattr(evmgr, method_name, types.MethodType(prevent_shift, evmgr)) qub_point.show() if screen_pos: qub_point.setPoint(screen_pos[0], screen_pos[1]) qub_point.setColor(NORMAL_COLOR) except: logging.getLogger('HWR').\ exception('Could not draw the centred position') return qub_point
def draw(self, screen_pos): """ Draws a qub point in the sample video. """ qub_point = None try: qub_point, _ = QubAddDrawing(self._drawing, QubPointDrawingMgr, QubCanvasTarget) # patch Qub event manager not to respond to Shift key # to prevent moving the point evmgr_ref = qub_point._eventMgr evmgr = evmgr_ref() if evmgr: for method_name in ("_mouseMove", "_mousePressed", "_mouseRelease"): def prevent_shift(self, event, mgr=None, method_name=method_name): if event.state() & qt.Qt.ShiftButton: return return getattr(QubEventMgr, method_name)(self,event,mgr) setattr(evmgr, method_name, types.MethodType(prevent_shift, evmgr)) qub_point.show() if screen_pos: qub_point.setPoint(screen_pos[0], screen_pos[1]) qub_point.setColor(NORMAL_COLOR) except: logging.getLogger('HWR').\ exception('Could not draw the centred position') return qub_point
def new_position(self, point): point = self.diffractometer.motor_positions_to_screen(point) draw_point, _ = QubAddDrawing(self.__drawing, QubPointDrawingMgr, QubCanvasTarget) draw_point.show() draw_point.setPoint(point[0], point[1]) draw_point.setColor(Qt.yellow) self.points.append(draw_point) self.centred_positions[draw_point] = self.diffractometer.getPositions()
def new_position(self, point): point = self.diffractometer.motor_positions_to_screen(point) draw_point, _ = QubAddDrawing(self.__drawing, QubPointDrawingMgr, QubCanvasTarget) draw_point.show() draw_point.setPoint(point[0], point[1]) draw_point.setColor(Qt.yellow) self.points.append(draw_point) self.centred_positions[draw_point] = self.diffractometer.getPositions()