def mousePressEvent(self, event): item = self.itemAt(event.pos()) name = item.text() drag = QtGui.QDrag(self) mime_data = QtCore.QMimeData() mime_data.setText(name) drag.setMimeData(mime_data) drag.exec_() super(NodeList, self).mousePressEvent(event)
def mouseMoveEvent(self, e): """Event for dragging out block to the Block Zone""" if e.buttons() != Qt.LeftButton: return mimeData = qtc.QMimeData() mimeData.setText(self.id) drag = qtg.QDrag(self) drag.setMimeData(mimeData) drag.setPixmap(qtg.QPixmap("img/block-plus.png")) drag.exec_(Qt.MoveAction)
def mouseMoveEvent(self, e): """Event for dragging out block to the Block Zone""" if e.buttons() != Qt.LeftButton: return self.parent().block_manager.remove_block(self) mimeData = qtc.QMimeData() mimeData.setText(self.config["abbr"] + " " + self.config["id"]) drag = qtg.QDrag(self) drag.setMimeData(mimeData) drag.setPixmap(qtg.QPixmap("img/block.png")) drag.exec_(Qt.MoveAction)
def mouseMoveEvent(self, event): if QtCore.QLineF( QtCore.QPointF(event.screenPos()), QtCore.QPointF(event.buttonDownScreenPos(QtCore.Qt.LeftButton)) ).length() < QtWidgets.QApplication.startDragDistance(): return drag = QtGui.QDrag(event.widget()) mime = QtCore.QMimeData() drag.setMimeData(mime) ColorItem.n += 1 if ColorItem.n > 2 and random(3) == 0: image = QtGui.QImage(':/images/head.png') mime.setImageData(image) drag.setPixmap(QtGui.QPixmap.fromImage(image).scaled(30, 40)) drag.setHotSpot(QtCore.QPoint(15, 30)) else: mime.setColorData(self.color) mime.setText( "#%02x%02x%02x" % (self.color.red(), self.color.green(), self.color.blue())) pixmap = QtGui.QPixmap(34, 34) pixmap.fill(QtCore.Qt.white) painter = QtGui.QPainter(pixmap) painter.translate(15, 15) painter.setRenderHint(QtGui.QPainter.Antialiasing) self.paint(painter, None, None) painter.end() pixmap.setMask(pixmap.createHeuristicMask()) drag.setPixmap(pixmap) drag.setHotSpot(QtCore.QPoint(15, 20)) drag.exec_() self.setCursor(QtCore.Qt.OpenHandCursor)