from PySide import QtGui, QtCore class QMLabel(QtGui.QLabel): mousePressed = QtCore.Signal(QtGui.QMouseEvent) mouseMove = QtCore.Signal(QtGui.QMouseEvent) mouseReleased = QtCore.Signal(QtGui.QMouseEvent) def __init__(self, parent): super(QMLabel, self).__init__(parent) self.setMouseTracking(True) def mousePressEvent(self, event): self.mousePressed.emit(event) super(QMLabel, self).mousePressEvent(event) def mouseMoveEvent(self, event): self.mouseMove.emit(event) super(QMLabel, self).mouseMoveEvent(event) def mouseReleaseEvent(self, event): self.mouseReleased.emit(event) super(QMLabel, self).mouseReleaseEvent(event)