Esempio n. 1
0
    def mousePressEvent(self, e):
        logger.debug('DragEllipse.mousePressEvent, at point: %s on scene: %s '%\
                     (str(e.pos()), str(e.scenePos()))) # self.__class__.__name__
        QGraphicsEllipseItem.mousePressEvent(self, e) # points would not show up w/o this line
        #print("DragEllipse is selected: ", self.isSelected())

        ps = e.scenePos()
        #print('%s.mousePressEvent itemAt:' % self.__class__.__name__, self.scene().itemAt(ps))

        t = self.scene().views()[0].transform()
        item_sel = self.scene().itemAt(ps.x(), ps.y(), t)
        #item_sel = self.scene().itemAt(ps)

        if self.lst_ctl_points is None:
            logger.warning('DragEllipse.lst_ctl_points is None')
            return

        if item_sel in self.lst_ctl_points:
            #print('set mode EDIT')
            self.set_drag_mode(EDIT)
            self.set_child_item_sel(item_sel)
            self.rect0 = self.rect().normalized()
            #self.p0 = self.pos()

            self.p0_ptr = self.ptr.pos()
            self.p0_ptl = self.ptl.pos()
            self.p0_pbr = self.pbr.pos()
            self.p0_pbl = self.pbl.pos()

            if item_sel == self.ped: self.control_point_menu()
Esempio n. 2
0
    def mousePressEvent(self, event: QGraphicsSceneMouseEvent):
        """Handler for user mouse press.

        Args:
            event: Contains item, scene, and screen coordinates of the the
                event, and previous event.
        """
        if self.grid.allow_snap:
            part_item = self.grid.part_item
            tool = part_item._getActiveTool()
            if tool.FILTER_NAME not in part_item.part().document().filter_set:
                return
            tool_method_name = tool.methodPrefix() + "MousePress"
            if hasattr(self, tool_method_name):
                getattr(self, tool_method_name)(tool, part_item, event)
        else:
            QGraphicsEllipseItem.mousePressEvent(self, event)
Esempio n. 3
0
    def mousePressEvent(self, event: QGraphicsSceneMouseEvent):
        """Handler for user mouse press.

        Args:
            event: Contains item, scene, and screen coordinates of the the
                event, and previous event.
        """
        if self.grid.allow_snap:
            part_item = self.grid.part_item
            tool = part_item._getActiveTool()
            if tool.FILTER_NAME not in part_item.part().document().filter_set:
                return
            tool_method_name = tool.methodPrefix() + "MousePress"
            if hasattr(self, tool_method_name):
                getattr(self, tool_method_name)(tool, part_item, event)
        else:
            QGraphicsEllipseItem.mousePressEvent(self, event)
Esempio n. 4
0
    def selectToolMousePress(self, tool, part_item, event):
        """Summary

        Args:
            tool (TYPE): Description
            part_item (TYPE): Description
            event (TYPE): Description
        """
        part = part_item.part()
        part.setSelected(True)
        # print("monkey")
        alt_event = GridEvent(self, self.offset)
        tool.selectOrSnap(part_item, alt_event, event)
        return QGraphicsEllipseItem.mousePressEvent(self, event)
Esempio n. 5
0
    def selectToolMousePress(self, tool, part_item, event):
        """Summary

        Args:
            tool (TYPE): Description
            part_item (TYPE): Description
            event (TYPE): Description
        """
        part = part_item.part()
        part.setSelected(True)
        # print("monkey")
        alt_event = GridEvent(self, self.offset)
        tool.selectOrSnap(part_item, alt_event, event)
        return QGraphicsEllipseItem.mousePressEvent(self, event)
Esempio n. 6
0
 def selectToolMousePress(self, tool: SelectGridToolT,
                          part_item: GridNucleicAcidPartItemT,
                          event: QGraphicsSceneMouseEvent):
     """
     Args:
         tool: :class:`SelectGridTool`
         part_item: :class:`GridNucleicAcidPartItem`
         event: the mouse event
     """
     part = part_item.part()
     part.setSelected(True)
     # print("GridPoint MousePress for select")
     alt_event = GridEvent(self, self.offset)
     tool.selectOrSnap(part_item, alt_event, event)
     return QGraphicsEllipseItem.mousePressEvent(self, event)
Esempio n. 7
0
 def selectToolMousePress(self,  tool: SelectGridToolT,
                                 part_item: GridNucleicAcidPartItemT,
                                 event: QGraphicsSceneMouseEvent):
     """
     Args:
         tool: :class:`SelectGridTool`
         part_item: :class:`GridNucleicAcidPartItem`
         event: the mouse event
     """
     part = part_item.part()
     part.setSelected(True)
     # print("GridPoint MousePress for select")
     alt_event = GridEvent(self, self.offset)
     tool.selectOrSnap(part_item, alt_event, event)
     return QGraphicsEllipseItem.mousePressEvent(self, event)