aboutsummaryrefslogtreecommitdiffstats
path: root/sources/pyside6/libpyside/pysideqenum.h
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@qt.io>2025-06-11 11:06:31 +0200
committerFriedemann Kleint <Friedemann.Kleint@qt.io>2025-06-17 12:04:42 +0200
commit4aa48368667bee64e48f7c9d6b3a935411d5f23c (patch)
treec19be3cd8624322bcee32272f1d4d410218e6abf /sources/pyside6/libpyside/pysideqenum.h
parent7ae471b49d0f38d7ac1c367bcfa3378f309c6b94 (diff)
Enable using @QEnum/@QFlag-decorated enums as custom widget properties
Create a dynamic QMetaType for @QEnum-decorated enumerations so that Qt Widgets Designer is able to recognize the properties. [ChangeLog][PySide6] It is now possible to use @QEnum/@QFlag-decorated enumerations as properties of custom widgets in Qt Widgets Designer. Task-number: PYSIDE-2840 Change-Id: I58a16002f89678856b7f33d687cf99f00c6f0cc7 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
Diffstat (limited to 'sources/pyside6/libpyside/pysideqenum.h')
-rw-r--r--sources/pyside6/libpyside/pysideqenum.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/sources/pyside6/libpyside/pysideqenum.h b/sources/pyside6/libpyside/pysideqenum.h
index cfc361004..edc15dc9e 100644
--- a/sources/pyside6/libpyside/pysideqenum.h
+++ b/sources/pyside6/libpyside/pysideqenum.h
@@ -12,6 +12,8 @@
#include <QtCore/qbytearray.h>
+QT_FORWARD_DECLARE_CLASS(QMetaType)
+
namespace PySide::QEnum {
// PYSIDE-957: Support the QEnum macro
@@ -25,6 +27,10 @@ PYSIDE_API void init();
// Ignore flags here; their underlying enums are of Python type flags anyways.
PYSIDE_API QByteArray getTypeName(PyTypeObject *type);
+// Create a QMetaType for a decorated Python enum (int), enabling
+// modification of properties by Qt Widgets Designer.
+QMetaType createGenericEnumMetaType(const QByteArray &name, PyTypeObject *pyType);
+
} // namespace PySide::QEnum
#endif