Source code for schrodinger.ui.qt.label
from schrodinger.Qt import QtCore
from schrodinger.Qt import QtWidgets
[docs]class ClickableLabel(QtWidgets.QLabel):
    """
    A label that emits a 'clicked' signal when clicked
    :ivar clicked: emitted when the lable is clicked,
    :vartype clicked: `QtCore.pyqtSignal`
    """
    clicked = QtCore.pyqtSignal()
[docs]    def mouseReleaseEvent(self, event):
        # mouse release event will be triggered when press event was initiated
        # in this widget; make sure mouse hasn't moved out of the label:
        QtWidgets.QLabel.mouseReleaseEvent(self, event)
        if self.rect().contains(event.localPos().toPoint()):
            self.clicked.emit()