mirror of
https://github.com/ynput/ayon-core.git
synced 2025-12-27 14:22:37 +01:00
42 lines
1.3 KiB
Python
42 lines
1.3 KiB
Python
from Qt import QtWidgets, QtCore, QtGui
|
|
|
|
|
|
class ShadowWidget(QtWidgets.QWidget):
|
|
def __init__(self, parent):
|
|
self.parent_widget = parent
|
|
super().__init__(parent)
|
|
w = self.parent_widget.frameGeometry().width()
|
|
h = self.parent_widget.frameGeometry().height()
|
|
self.resize(QtCore.QSize(w, h))
|
|
palette = QtGui.QPalette(self.palette())
|
|
palette.setColor(palette.Background, QtCore.Qt.transparent)
|
|
self.setPalette(palette)
|
|
self.message = ''
|
|
|
|
font = QtGui.QFont()
|
|
font.setFamily("DejaVu Sans Condensed")
|
|
font.setPointSize(40)
|
|
font.setBold(True)
|
|
font.setWeight(50)
|
|
font.setKerning(True)
|
|
self.font = font
|
|
|
|
def paintEvent(self, event):
|
|
painter = QtGui.QPainter()
|
|
painter.begin(self)
|
|
painter.setFont(self.font)
|
|
painter.setRenderHint(QtGui.QPainter.Antialiasing)
|
|
painter.fillRect(
|
|
event.rect(), QtGui.QBrush(QtGui.QColor(0, 0, 0, 127))
|
|
)
|
|
painter.drawText(
|
|
QtCore.QRectF(
|
|
0.0,
|
|
0.0,
|
|
self.parent_widget.frameGeometry().width(),
|
|
self.parent_widget.frameGeometry().height()
|
|
),
|
|
QtCore.Qt.AlignCenter | QtCore.Qt.AlignCenter,
|
|
self.message
|
|
)
|
|
painter.end()
|