aboutsummaryrefslogtreecommitdiffstats
path: root/sources/pyside2
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@qt.io>2020-10-06 15:41:05 +0200
committerFriedemann Kleint <Friedemann.Kleint@qt.io>2020-10-06 15:42:54 +0200
commitd81f111a13177f1fc78e770baa645a02125feaac (patch)
treeee2ce603bb14fd1d883595e8398c774583e66130 /sources/pyside2
parent0e3a58441644faa14698a44f2ed682150430529a (diff)
parent80f8731ee894d3cd40be9a2a0f3778f60dbc6afa (diff)
Merge remote-tracking branch 'origin/5.15' into dev
Diffstat (limited to 'sources/pyside2')
-rw-r--r--sources/pyside2/tests/pysidetest/CMakeLists.txt3
-rw-r--r--sources/pyside2/tests/pysidetest/flagstest.cpp36
-rw-r--r--sources/pyside2/tests/pysidetest/flagstest.h55
-rw-r--r--sources/pyside2/tests/pysidetest/pysidetest_global.h1
-rw-r--r--sources/pyside2/tests/pysidetest/typesystem_pysidetest.xml6
5 files changed, 101 insertions, 0 deletions
diff --git a/sources/pyside2/tests/pysidetest/CMakeLists.txt b/sources/pyside2/tests/pysidetest/CMakeLists.txt
index 972793519..bbdeb6a98 100644
--- a/sources/pyside2/tests/pysidetest/CMakeLists.txt
+++ b/sources/pyside2/tests/pysidetest/CMakeLists.txt
@@ -15,12 +15,14 @@ add_definitions(-DRXX_ALLOCATOR_INIT_0)
find_package(Qt${QT_MAJOR_VERSION}Widgets)
set(pysidetest_SRC
+flagstest.cpp
testobject.cpp
testview.cpp
hiddenobject.cpp
)
set(pysidetest_MOC_HEADERS
+flagstest.h
testobject.h
testview.h
hiddenobject.h
@@ -29,6 +31,7 @@ hiddenobject.h
qt_wrap_cpp(pysidetest_MOC_SRC ${pysidetest_MOC_HEADERS})
set(testbinding_SRC
+${CMAKE_CURRENT_BINARY_DIR}/testbinding/flagsnamespace_classforenum_wrapper.cpp
${CMAKE_CURRENT_BINARY_DIR}/testbinding/testobject_wrapper.cpp
${CMAKE_CURRENT_BINARY_DIR}/testbinding/intvalue_wrapper.cpp
${CMAKE_CURRENT_BINARY_DIR}/testbinding/pysidecpp_wrapper.cpp
diff --git a/sources/pyside2/tests/pysidetest/flagstest.cpp b/sources/pyside2/tests/pysidetest/flagstest.cpp
new file mode 100644
index 000000000..2bd0c454e
--- /dev/null
+++ b/sources/pyside2/tests/pysidetest/flagstest.cpp
@@ -0,0 +1,36 @@
+/****************************************************************************
+**
+** Copyright (C) 2020 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of the test suite of Qt for Python.
+**
+** $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$
+**
+****************************************************************************/
+
+#include "flagstest.h"
+
+namespace FlagsNamespace
+{
+ ClassForEnum::ClassForEnum(FlagsNamespace::Options) {}
+
+ ClassForEnum::~ClassForEnum() = default;
+}
diff --git a/sources/pyside2/tests/pysidetest/flagstest.h b/sources/pyside2/tests/pysidetest/flagstest.h
new file mode 100644
index 000000000..7f070361c
--- /dev/null
+++ b/sources/pyside2/tests/pysidetest/flagstest.h
@@ -0,0 +1,55 @@
+/****************************************************************************
+**
+** Copyright (C) 2020 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of the test suite of Qt for Python.
+**
+** $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$
+**
+****************************************************************************/
+
+#pragma once
+
+#include "pysidetest_macros.h"
+
+#include <QtCore/QObject>
+
+namespace FlagsNamespace
+{
+
+enum Option {
+ NoOptions = 0x0,
+ ShowTabs = 0x1,
+ ShowAll = 0x2,
+ SqueezeBlank = 0x4
+};
+Q_DECLARE_FLAGS(Options, Option)
+Q_DECLARE_OPERATORS_FOR_FLAGS(Options)
+
+class PYSIDETEST_API ClassForEnum : public QObject
+{
+ Q_OBJECT
+public:
+ ClassForEnum(FlagsNamespace::Options opt = FlagsNamespace::Option::NoOptions);
+ virtual ~ClassForEnum();
+};
+
+} // namespace FlagsNamespace
diff --git a/sources/pyside2/tests/pysidetest/pysidetest_global.h b/sources/pyside2/tests/pysidetest/pysidetest_global.h
index f65662cb5..6f9b187ba 100644
--- a/sources/pyside2/tests/pysidetest/pysidetest_global.h
+++ b/sources/pyside2/tests/pysidetest/pysidetest_global.h
@@ -32,6 +32,7 @@
// PySide global.h file
#include "testobject.h"
#include "testview.h"
+#include "flagstest.h"
#include "hiddenobject.h"
#endif // PYSIDETEST_GLOBAL_H
diff --git a/sources/pyside2/tests/pysidetest/typesystem_pysidetest.xml b/sources/pyside2/tests/pysidetest/typesystem_pysidetest.xml
index 1e777edd2..c959e7fd3 100644
--- a/sources/pyside2/tests/pysidetest/typesystem_pysidetest.xml
+++ b/sources/pyside2/tests/pysidetest/typesystem_pysidetest.xml
@@ -60,6 +60,12 @@
</modify-argument>
</modify-function>
</object-type>
+
+ <namespace-type name="FlagsNamespace" visible="no">
+ <enum-type name="Option" flags="Options"/>
+ <object-type name="ClassForEnum" />
+ </namespace-type>
+
<suppress-warning text="type 'QPyTextObject' is specified in typesystem, but not defined. This could potentially lead to compilation errors." />
<!-- Qt5: I never really understood this warning. Probably it is because there
is no way to instantiate the class. Anyway, why must this class emit this warning?