diff options
| author | Cristian Maureira-Fredes <Cristian.Maureira-Fredes@qt.io> | 2021-02-05 10:07:19 +0100 |
|---|---|---|
| committer | Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> | 2021-02-09 07:43:07 +0000 |
| commit | 33743aeb2be37d166bcc3291a98dd22026871cef (patch) | |
| tree | cd45b08ef2a8c80e5e250e1050a41d8ece6fa199 /examples/quick/customitems/painteditem | |
| parent | ad01b159e02067ba46d6433412cb1e690553e946 (diff) | |
examples: directory structure
When generating the gallery automatically, the structure
of the examples was not the same for all the modules.
This reorganization was made under the following assumption:
An example requires:
- its own directory,
- a '.pyproject' file,
- one or more '.py' files,
- extra files (likes images, .rc, .ui, etc)
Even for cases when subdirectories are made to depict categories, like
'widgets/state-machine/...', one directory is required per example.
There should not be '.pyproject' files for categories,
except for the general 'examples.pyproject' to open all of them.
Task-number: PYSIDE-1490
Pick-to: 6.0
Change-Id: Ie690773c816a248016dbebaad90fbb1d1c2aeea5
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
Diffstat (limited to 'examples/quick/customitems/painteditem')
| -rw-r--r-- | examples/quick/customitems/painteditem/main.qml | 114 | ||||
| -rw-r--r-- | examples/quick/customitems/painteditem/painteditem.py | 106 | ||||
| -rw-r--r-- | examples/quick/customitems/painteditem/painteditem.pyproject | 3 |
3 files changed, 0 insertions, 223 deletions
diff --git a/examples/quick/customitems/painteditem/main.qml b/examples/quick/customitems/painteditem/main.qml deleted file mode 100644 index d3404cad6..000000000 --- a/examples/quick/customitems/painteditem/main.qml +++ /dev/null @@ -1,114 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2020 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the Qt for Python examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of The Qt Company Ltd nor the names of its -** contributors may be used to endorse or promote products derived -** from this software without specific prior written permission. -** -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -import QtQuick 2.0 -import TextBalloonPlugin 1.0 - -Item { - height: 480 - width: 320 - - //! [0] - ListModel { - id: balloonModel - ListElement { - balloonWidth: 200 - } - ListElement { - balloonWidth: 120 - } - } - - ListView { - anchors.bottom: controls.top - anchors.bottomMargin: 2 - anchors.top: parent.top - id: balloonView - delegate: TextBalloon { - anchors.right: index % 2 == 0 ? undefined : parent.right - height: 60 - rightAligned: index % 2 == 0 ? false : true - width: balloonWidth - } - model: balloonModel - spacing: 5 - width: parent.width - } - //! [0] - - //! [1] - Rectangle { - id: controls - - anchors.bottom: parent.bottom - anchors.left: parent.left - anchors.margins: 1 - anchors.right: parent.right - border.width: 2 - color: "white" - height: parent.height * 0.15 - - Text { - anchors.centerIn: parent - text: "Add another balloon" - } - - MouseArea { - anchors.fill: parent - hoverEnabled: true - onClicked: { - balloonModel.append({ - "balloonWidth": Math.floor( - Math.random( - ) * 200 + 100) - }) - balloonView.positionViewAtIndex(balloonView.count - 1, - ListView.End) - } - onEntered: { - parent.color = "#8ac953" - } - onExited: { - parent.color = "white" - } - } - } - //! [1] -} diff --git a/examples/quick/customitems/painteditem/painteditem.py b/examples/quick/customitems/painteditem/painteditem.py deleted file mode 100644 index 5476bdbaf..000000000 --- a/examples/quick/customitems/painteditem/painteditem.py +++ /dev/null @@ -1,106 +0,0 @@ -############################################################################# -## -## Copyright (C) 2020 The Qt Company Ltd. -## Contact: http://www.qt.io/licensing/ -## -## This file is part of the Qt for Python examples of the Qt Toolkit. -## -## $QT_BEGIN_LICENSE:BSD$ -## You may use this file under the terms of the BSD license as follows: -## -## "Redistribution and use in source and binary forms, with or without -## modification, are permitted provided that the following conditions are -## met: -## * Redistributions of source code must retain the above copyright -## notice, this list of conditions and the following disclaimer. -## * Redistributions in binary form must reproduce the above copyright -## notice, this list of conditions and the following disclaimer in -## the documentation and/or other materials provided with the -## distribution. -## * Neither the name of The Qt Company Ltd nor the names of its -## contributors may be used to endorse or promote products derived -## from this software without specific prior written permission. -## -## -## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -## -## $QT_END_LICENSE$ -## -############################################################################# - -import sys - -from PySide6.QtGui import QPainter, QBrush, QColor -from PySide6.QtWidgets import QApplication -from PySide6.QtQml import qmlRegisterType -from PySide6.QtCore import QUrl, Property, Signal, Qt, QPointF -from PySide6.QtQuick import QQuickPaintedItem, QQuickView - - -class TextBalloon(QQuickPaintedItem): - - rightAlignedChanged = Signal() - - def __init__(self, parent=None): - self._rightAligned = False - super().__init__(parent) - - @Property(bool, notify=rightAlignedChanged) - def rightAligned(self): - return self._rightAligned - - @rightAligned.setter - def rightAlignedSet(self, value): - self._rightAligned = value - self.rightAlignedChanged.emit() - - def paint(self, painter: QPainter): - - brush = QBrush(QColor("#007430")) - - painter.setBrush(brush) - painter.setPen(Qt.NoPen) - painter.setRenderHint(QPainter.Antialiasing) - - itemSize = self.size() - - painter.drawRoundedRect(0, 0, itemSize.width(), itemSize.height() - 10, 10, 10) - - if self.rightAligned: - points = [ - QPointF(itemSize.width() - 10.0, itemSize.height() - 10.0), - QPointF(itemSize.width() - 20.0, itemSize.height()), - QPointF(itemSize.width() - 30.0, itemSize.height() - 10.0), - ] - else: - points = [ - QPointF(10.0, itemSize.height() - 10.0), - QPointF(20.0, itemSize.height()), - QPointF(30.0, itemSize.height() - 10.0), - ] - painter.drawConvexPolygon(points) - - -if __name__ == "__main__": - - app = QApplication(sys.argv) - view = QQuickView() - view.setResizeMode(QQuickView.SizeRootObjectToView) - qmlRegisterType(TextBalloon, "TextBalloonPlugin", 1, 0, "TextBalloon") - view.setSource(QUrl.fromLocalFile("main.qml")) - - if view.status() == QQuickView.Error: - sys.exit(-1) - view.show() - - sys.exit(app.exec_()) diff --git a/examples/quick/customitems/painteditem/painteditem.pyproject b/examples/quick/customitems/painteditem/painteditem.pyproject deleted file mode 100644 index 0c70ebe59..000000000 --- a/examples/quick/customitems/painteditem/painteditem.pyproject +++ /dev/null @@ -1,3 +0,0 @@ -{ - "files": ["main.qml", "painteditem.pyproject"] -} |
