From 3a0ebe44fb5b56b2366e35dc550eb19d11422ef5 Mon Sep 17 00:00:00 2001 From: Jakub Trllo Date: Fri, 19 Apr 2019 10:36:13 +0200 Subject: [PATCH] created shadow widget can be used when app is working --- .../widgets/widget_shadow.py | 40 +++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 pype/tools/standalonepublish/widgets/widget_shadow.py diff --git a/pype/tools/standalonepublish/widgets/widget_shadow.py b/pype/tools/standalonepublish/widgets/widget_shadow.py new file mode 100644 index 0000000000..1bb9cee44b --- /dev/null +++ b/pype/tools/standalonepublish/widgets/widget_shadow.py @@ -0,0 +1,40 @@ +from . 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()