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()