diff options
author | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2021-11-23 20:07:08 +0100 |
---|---|---|
committer | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2021-11-26 11:45:55 +0100 |
commit | 4750567706f0e993ca5637071815bfee9841e13b (patch) | |
tree | d48d048b3b711ea373f007cf338a4a982b7153fb /examples/widgets | |
parent | 106b9c0871f6de63b78f2c59bcf16c21d60bb5a8 (diff) |
Diffstat (limited to 'examples/widgets')
4 files changed, 39 insertions, 47 deletions
diff --git a/examples/widgets/effects/blurpicker/blureffect.py b/examples/widgets/effects/blurpicker/blureffect.py index 6aeb7074c..2d9e00348 100644 --- a/examples/widgets/effects/blurpicker/blureffect.py +++ b/examples/widgets/effects/blurpicker/blureffect.py @@ -47,11 +47,11 @@ from PySide6.QtWidgets import QGraphicsBlurEffect class BlurEffect(QGraphicsBlurEffect): def __init__(self, item): super().__init__() - self.m_base_line = 200 - self.item = item + self._base_line = 200 + self._item = item def adjust_for_item(self): - y = self.m_base_line - self.item.pos().y() + y = self._base_line - self._item.pos().y() # radius = qBound(qreal(0.0), y / 32, qreal(16.0)); which is equivalent to radius = max(0, min(y / 32, 16)) @@ -59,7 +59,7 @@ class BlurEffect(QGraphicsBlurEffect): self.setBlurRadius(radius) def set_base_line(self, base_line): - self.m_base_line = base_line + self._base_line = base_line def boundingRect(self) -> QRect: self.adjust_for_item() diff --git a/examples/widgets/effects/blurpicker/blurpicker.py b/examples/widgets/effects/blurpicker/blurpicker.py index 560a6dcad..af08e1765 100644 --- a/examples/widgets/effects/blurpicker/blurpicker.py +++ b/examples/widgets/effects/blurpicker/blurpicker.py @@ -57,35 +57,38 @@ from blureffect import BlurEffect class BlurPicker(QGraphicsView): def __init__(self, parent=None): super().__init__(parent) - self.m_index = 0 - self.m_animation = QPropertyAnimation(self, b"index") - self.path = Path(__file__).resolve().parent + self._index = 0 + self._animation = QPropertyAnimation(self, b"index") + self._path = Path(__file__).resolve().parent - self.setBackgroundBrush(QPixmap(self.path / "images" / "background.jpg")) + self._background = QPixmap(self._path / "images" / "background.jpg") + self.setBackgroundBrush(self._background) self.setScene(QGraphicsScene(self)) - self.m_icons = [] + self._icons = [] self.setup_scene() - self.set_index(0) + self.index = 0 - self.m_animation.setDuration(400) - self.m_animation.setEasingCurve(QEasingCurve.InOutSine) + self._animation.setDuration(400) + self._animation.setEasingCurve(QEasingCurve.InOutSine) self.setRenderHint(QPainter.Antialiasing, True) self.setFrameStyle(QFrame.NoFrame) - def read_index(self) -> float: - return self.m_index + @Property(float) + def index(self) -> float: + return self._index - def set_index(self, index: float): - self.m_index = index + @index.setter + def index(self, index: float): + self._index = index base_line = 0.0 - iconAngle = 2 * pi / len(self.m_icons) + iconAngle = 2 * pi / len(self._icons) - for i, icon in enumerate(self.m_icons): - a = (i + self.m_index) * iconAngle + for i, icon in enumerate(self._icons): + a = (i + self._index) * iconAngle xs = 170 * sin(a) ys = 100 * cos(a) pos = QPointF(xs, ys) @@ -101,27 +104,19 @@ class BlurPicker(QGraphicsView): def setup_scene(self): self.scene().setSceneRect(-200, -120, 400, 240) - names = [ - self.path / "images" / "accessories-calculator.png", - self.path / "images" / "accessories-text-editor.png", - self.path / "images" / "help-browser.png", - self.path / "images" / "internet-group-chat.png", - self.path / "images" / "internet-mail.png", - self.path / "images" / "internet-web-browser.png", - self.path / "images" / "office-calendar.png", - self.path / "images" / "system-users.png", - ] + names = ["accessories-calculator.png", "accessories-text-editor.png", + "help-browser.png", "internet-group-chat.png", + "internet-mail.png", "internet-web-browser.png", "office-calendar.png", + "system-users.png"] for name in names: - pixmap = QPixmap(name) + pixmap = QPixmap(self._path / "images" / name) icon: QGraphicsPixmapItem = self.scene().addPixmap(pixmap) icon.setZValue(1) icon.setGraphicsEffect(BlurEffect(icon)) - self.m_icons.append(icon) + self._icons.append(icon) - bg: QGraphicsPixmapItem = self.scene().addPixmap( - QPixmap(self.path / "images" / "background.jpg") - ) + bg: QGraphicsPixmapItem = self.scene().addPixmap(self._background) bg.setZValue(0) bg.setPos(-200, -150) @@ -132,20 +127,16 @@ class BlurPicker(QGraphicsView): elif event.key() == Qt.Key_Right: delta = 1 - if self.m_animation.state() == QAbstractAnimation.Stopped and delta: - self.m_animation.setEndValue(self.m_index + delta) - self.m_animation.start() + if self._animation.state() == QAbstractAnimation.Stopped and delta: + self._animation.setEndValue(self._index + delta) + self._animation.start() event.accept() def mousePressEvent(self, event): - if event.position().x() > (self.width() / 2): - delta = 1 - else: - delta = -1 + right = event.position().x() > (self.width() / 2) + delta = 1 if right else -1 - if self.m_animation.state() == QAbstractAnimation.Stopped: - self.m_animation.setEndValue(self.m_index + delta) - self.m_animation.start() + if self._animation.state() == QAbstractAnimation.Stopped: + self._animation.setEndValue(self._index + delta) + self._animation.start() event.accept() - - index = Property(float, read_index, set_index) diff --git a/examples/widgets/effects/blurpicker/blurpicker.pyproject b/examples/widgets/effects/blurpicker/blurpicker.pyproject index 0a29f519c..6ae303265 100644 --- a/examples/widgets/effects/blurpicker/blurpicker.pyproject +++ b/examples/widgets/effects/blurpicker/blurpicker.pyproject @@ -1,5 +1,6 @@ { "files": [ + "main.py", "blurpicker.py", "blureffect.py", "images/accessories-calculator.png", diff --git a/examples/widgets/effects/blurpicker/main.py b/examples/widgets/effects/blurpicker/main.py index 8bd708fbe..2174d247e 100644 --- a/examples/widgets/effects/blurpicker/main.py +++ b/examples/widgets/effects/blurpicker/main.py @@ -38,7 +38,7 @@ ## ############################################################################# -"""PySide6 Multimedia Camera Example""" +"""PySide6 port of the widgets/effects/blurpicker example from Qt v6.x""" import sys from PySide6.QtWidgets import QApplication |