aboutsummaryrefslogtreecommitdiffstats
path: root/examples/remoteobjects/modelview
diff options
context:
space:
mode:
Diffstat (limited to 'examples/remoteobjects/modelview')
-rw-r--r--examples/remoteobjects/modelview/modelview.pyproject3
-rw-r--r--examples/remoteobjects/modelview/modelviewclient.py61
-rw-r--r--examples/remoteobjects/modelview/modelviewserver.py88
3 files changed, 41 insertions, 111 deletions
diff --git a/examples/remoteobjects/modelview/modelview.pyproject b/examples/remoteobjects/modelview/modelview.pyproject
new file mode 100644
index 000000000..0b3a1b5e3
--- /dev/null
+++ b/examples/remoteobjects/modelview/modelview.pyproject
@@ -0,0 +1,3 @@
+{
+ "files": ["modelviewserver.py", "modelviewclient.py"]
+}
diff --git a/examples/remoteobjects/modelview/modelviewclient.py b/examples/remoteobjects/modelview/modelviewclient.py
index 319135886..c311d1fe1 100644
--- a/examples/remoteobjects/modelview/modelviewclient.py
+++ b/examples/remoteobjects/modelview/modelviewclient.py
@@ -1,52 +1,15 @@
-#############################################################################
-##
-## Copyright (C) 2017 Ford Motor Company
-## Copyright (C) 2019 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$
-##
-#############################################################################
+# Copyright (C) 2017 Ford Motor Company
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+from __future__ import annotations
-"""PySide2 port of the remoteobjects/modelviewclient example from Qt v5.x"""
+"""PySide6 port of the remoteobjects/modelviewclient example from Qt v5.x"""
import sys
-from PySide2.QtCore import QUrl
-from PySide2.QtWidgets import (QApplication, QTreeView)
-from PySide2.QtRemoteObjects import (QAbstractItemModelReplica,
- QRemoteObjectNode)
+from PySide6.QtCore import QUrl
+from PySide6.QtWidgets import (QApplication, QTreeView)
+from PySide6.QtRemoteObjects import QRemoteObjectNode
if __name__ == '__main__':
app = QApplication(sys.argv)
@@ -54,9 +17,9 @@ if __name__ == '__main__':
node.setHeartbeatInterval(1000)
view = QTreeView()
view.setWindowTitle("RemoteView")
- view.resize(640,480);
+ view.resize(640, 480)
model = node.acquireModel("RemoteModel")
- view.setModel(model);
- view.show();
+ view.setModel(model)
+ view.show()
- sys.exit(app.exec_())
+ sys.exit(app.exec())
diff --git a/examples/remoteobjects/modelview/modelviewserver.py b/examples/remoteobjects/modelview/modelviewserver.py
index 069cc1d2c..518dc72c8 100644
--- a/examples/remoteobjects/modelview/modelviewserver.py
+++ b/examples/remoteobjects/modelview/modelviewserver.py
@@ -1,57 +1,21 @@
-#############################################################################
-##
-## Copyright (C) 2017 Ford Motor Company
-## Copyright (C) 2019 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$
-##
-#############################################################################
-
-"""PySide2 port of the remoteobjects/modelviewserver example from Qt v5.x"""
+# Copyright (C) 2017 Ford Motor Company
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+from __future__ import annotations
+
+"""PySide6 port of the remoteobjects/modelviewserver example from Qt v5.x"""
import sys
-from PySide2.QtCore import (Qt, QByteArray, QModelIndex, QObject, QTimer, QUrl)
-from PySide2.QtGui import (QColor, QStandardItemModel, QStandardItem)
-from PySide2.QtWidgets import (QApplication, QTreeView)
-from PySide2.QtRemoteObjects import (QRemoteObjectHost, QRemoteObjectNode,
- QRemoteObjectRegistryHost)
+from PySide6.QtCore import (Qt, QByteArray, QModelIndex, QObject, QTimer, QUrl)
+from PySide6.QtGui import (QColor, QStandardItemModel, QStandardItem)
+from PySide6.QtWidgets import (QApplication, QTreeView)
+from PySide6.QtRemoteObjects import QRemoteObjectHost, QRemoteObjectRegistryHost
+
class TimerHandler(QObject):
def __init__(self, model):
- super(TimerHandler, self).__init__()
+ super().__init__()
self._model = model
def change_data(self):
@@ -60,7 +24,7 @@ class TimerHandler(QObject):
QColor(Qt.blue), Qt.BackgroundRole)
def insert_data(self):
- self._model.insertRows(2, 9);
+ self._model.insertRows(2, 9)
for i in range(2, 11):
self._model.setData(self._model.index(i, 1),
QColor(Qt.green), Qt.BackgroundRole)
@@ -83,38 +47,38 @@ class TimerHandler(QObject):
def add_child(num_children, nesting_level):
result = []
if nesting_level == 0:
- return result;
+ return result
for i in range(num_children):
- child = QStandardItem("Child num {}, nesting Level {}".format(i + 1,
- nesting_level))
+ child = QStandardItem(f"Child num {i + 1}, nesting Level {nesting_level}")
if i == 0:
- child.appendRow(add_child(num_children, nesting_level -1))
+ child.appendRow(add_child(num_children, nesting_level - 1))
result.append(child)
- return result;
+ return result
+
if __name__ == '__main__':
app = QApplication(sys.argv)
- model_size = 100000;
- list = []
+ model_size = 100000
+ data_list = []
source_model = QStandardItemModel()
horizontal_header_list = ["First Column with spacing",
"Second Column with spacing"]
source_model.setHorizontalHeaderLabels(horizontal_header_list)
for i in range(model_size):
- first_item = QStandardItem("FancyTextNumber {}".format(i))
+ first_item = QStandardItem(f"FancyTextNumber {i}")
if i == 0:
first_item.appendRow(add_child(2, 2))
- second_item = QStandardItem("FancyRow2TextNumber {}".format(i))
+ second_item = QStandardItem(f"FancyRow2TextNumber {i}")
if i % 2 == 0:
first_item.setBackground(Qt.red)
row = [first_item, second_item]
source_model.invisibleRootItem().appendRow(row)
- list.append("FancyTextNumber {}".format(i))
+ data_list.append(f"FancyTextNumber {i}")
# Needed by QMLModelViewClient
role_names = {
- Qt.DisplayRole : QByteArray(b'_text'),
- Qt.BackgroundRole : QByteArray(b'_color')
+ Qt.DisplayRole: QByteArray(b'_text'),
+ Qt.BackgroundRole: QByteArray(b'_color')
}
source_model.setItemRoleNames(role_names)
@@ -137,4 +101,4 @@ if __name__ == '__main__':
QTimer.singleShot(12000, handler.remove_data)
QTimer.singleShot(13000, handler.move_data)
- sys.exit(app.exec_())
+ sys.exit(app.exec())