diff options
author | Oswald Buddenhagen <oswald.buddenhagen@qt.io> | 2017-05-22 16:44:51 +0200 |
---|---|---|
committer | Oswald Buddenhagen <oswald.buddenhagen@qt.io> | 2017-05-22 17:49:10 +0200 |
commit | 39236c01ae6c9bc99ee3a02d8294679e12d9b734 (patch) | |
tree | 7ae55d4e33d5d34109ca7d014db791e73cddbcb5 /sources/pyside2/tests/manually | |
parent | 315a9ce2e7b443fa7485ed8c21189e62fe2e2165 (diff) |
move everying into sources/pyside2
in preparation for a subtree merge.
this should not be necessary to do in a separate commit, but git is a
tad stupid about following history correctly without it.
Diffstat (limited to 'sources/pyside2/tests/manually')
-rw-r--r-- | sources/pyside2/tests/manually/README.txt | 5 | ||||
-rw-r--r-- | sources/pyside2/tests/manually/bug_841.py | 79 |
2 files changed, 84 insertions, 0 deletions
diff --git a/sources/pyside2/tests/manually/README.txt b/sources/pyside2/tests/manually/README.txt new file mode 100644 index 000000000..da20e3824 --- /dev/null +++ b/sources/pyside2/tests/manually/README.txt @@ -0,0 +1,5 @@ +To run these tests is necessary some manuall input (most of then not supported by QTest[1]), +because of that this is not part of automatic test context. + + +[1]http://bugreports.qt.nokia.com/browse/QTBUG-13397 diff --git a/sources/pyside2/tests/manually/bug_841.py b/sources/pyside2/tests/manually/bug_841.py new file mode 100644 index 000000000..dce0a3a75 --- /dev/null +++ b/sources/pyside2/tests/manually/bug_841.py @@ -0,0 +1,79 @@ +############################################################################# +## +## Copyright (C) 2016 The Qt Company Ltd. +## Contact: https://www.qt.io/licensing/ +## +## This file is part of the test suite of PySide2. +## +## $QT_BEGIN_LICENSE:GPL-EXCEPT$ +## Commercial License Usage +## Licensees holding valid commercial Qt licenses may use this file in +## accordance with the commercial license agreement provided with the +## Software or, alternatively, in accordance with the terms contained in +## a written agreement between you and The Qt Company. For licensing terms +## and conditions see https://www.qt.io/terms-conditions. For further +## information use the contact form at https://www.qt.io/contact-us. +## +## GNU General Public License Usage +## Alternatively, this file may be used under the terms of the GNU +## General Public License version 3 as published by the Free Software +## Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT +## included in the packaging of this file. Please review the following +## information to ensure the GNU General Public License requirements will +## be met: https://www.gnu.org/licenses/gpl-3.0.html. +## +## $QT_END_LICENSE$ +## +############################################################################# + +from __future__ import print_function + +import sys + +from PySide2.QtGui import QStandardItem, QStandardItemModel +from PySide2.QtWidgets import QMainWindow, QTreeView, QAbstractItemView, QApplication, QMessageBox + +class Item(QStandardItem): + def __init__(self, text): + super(Item, self).__init__() + self.setText(text) + self.setDragEnabled(True) + self.setDropEnabled(True) + + def clone(self): + ret = Item(self.text()) + return ret + +class Project(QStandardItemModel): + def __init__(self): + super(Project, self).__init__() + self.setItemPrototype(Item("Prototype")) + # add some items so we have stuff to move around + self.appendRow(Item("ABC")) + self.appendRow(Item("DEF")) + self.appendRow(Item("GHI")) + +class MainWindow(QMainWindow): + def __init__(self): + super(MainWindow, self).__init__() + + self.model = Project() + self.view = QTreeView(self) + self.view.setModel(self.model) + self.view.setDragEnabled(True) + self.view.setDragDropMode(QAbstractItemView.InternalMove) + self.setCentralWidget(self.view) + + def mousePressEvent(self, e): + print(e.x(), e.y()) + return QMainWindow.mousePressEvent(self, e) + +def main(): + app = QApplication(sys.argv) + w = MainWindow() + w.show() + QMessageBox.information(None, "Info", "Just drag and drop the items.") + sys.exit(app.exec_()) + +if __name__ == "__main__": + main() |