moc on enums in namespaces before Qt 5.8 workaround fixed

This commit is contained in:
Uwe Rathmann 2018-10-26 16:24:57 +02:00
parent 1f517d0cd1
commit 856af42ec1

View File

@ -25,14 +25,15 @@
#define QSK_NAMESPACE( name ) namespace name #define QSK_NAMESPACE( name ) namespace name
#define QSK_ENUM( name ) \ #define QSK_ENUM( name ) \
inline const QMetaObject *qt_getEnumMetaObject(name) noexcept { return qt_getQtMetaObject(); } \ inline const QMetaObject *qt_getEnumMetaObject(name) noexcept { return &staticMetaObject; } \
inline constexpr const char *qt_getEnumName(name) noexcept { return #name; } inline constexpr const char *qt_getEnumName(name) noexcept { return #name; }
#endif #endif
QSK_NAMESPACE( QskAspect ) QSK_NAMESPACE( QskAspect )
{ {
extern const QMetaObject staticMetaObject;
enum Subcontrol : quint16 enum Subcontrol : quint16
{ {
Control = 0, Control = 0,
@ -116,8 +117,6 @@ QSK_NAMESPACE( QskAspect )
AllStates = 0xFFFF AllStates = 0xFFFF
}; };
QSK_ENUM( State ) QSK_ENUM( State )
extern const QMetaObject staticMetaObject;
} }
QSK_DECLARE_OPERATORS_FOR_FLAGS( QskAspect::State ) QSK_DECLARE_OPERATORS_FOR_FLAGS( QskAspect::State )