From e50abf01fd7a7192a964184f74463491cacc9185 Mon Sep 17 00:00:00 2001 From: Uwe Rathmann Date: Thu, 29 Oct 2020 18:00:10 +0100 Subject: [PATCH] blocking warnings about names starting with capitals --- qmlexport/QskQml.cpp | 37 +++++++++++++++++++++++++++---------- 1 file changed, 27 insertions(+), 10 deletions(-) diff --git a/qmlexport/QskQml.cpp b/qmlexport/QskQml.cpp index f24cf51a..1327131f 100644 --- a/qmlexport/QskQml.cpp +++ b/qmlexport/QskQml.cpp @@ -276,16 +276,33 @@ void QskQml::registerTypes() QSK_REGISTER_FLAGS( QskDialog::Actions ); - QSK_REGISTER_GADGET( QskRgbValue_Gadget, "RgbValue" ); - QSK_REGISTER_GADGET( QskStandardSymbol, "StandardSymbol" ); - QSK_REGISTER_GADGET( QskCorner, "Corner" ); - QSK_REGISTER_GADGET( QskGradient, "Gradient" ); - QSK_REGISTER_GADGET( QskGradientStop, "GradientStop" ); - QSK_REGISTER_GADGET( QskIntervalF, "IntervalF" ); - QSK_REGISTER_GADGET( QskLayoutHint, "LayoutHint" ); - QSK_REGISTER_GADGET( QskSizePolicy, "SizePolicy" ); - QSK_REGISTER_GADGET( QskTextOptions, "TextOptions" ); - QSK_REGISTER_GADGET( QskMargins, "Margins" ); + { +#if QT_VERSION >= QT_VERSION_CHECK( 6, 0, 0 ) + /* + The QML engine warns about registering uncreatables with names starting with + a capital letter. But as those classes usually appear only as scope for + local enums in QML, we do want to have capitals. f.e.: + + - "policy.horizonalPolicy : SizePolicy::Minimum". + + Maybe we need to introduce some dummy gadgets exposing the enums + in capital letters by using QML_FOREIGN_NAMESPACE, while the + original gadget is exposed in lower letters. TODO ... + */ + WarningBlocker warningBlocker; +#endif + + QSK_REGISTER_GADGET( QskRgbValue_Gadget, "RgbValue" ); + QSK_REGISTER_GADGET( QskStandardSymbol, "StandardSymbol" ); + QSK_REGISTER_GADGET( QskCorner, "Corner" ); + QSK_REGISTER_GADGET( QskGradient, "Gradient" ); + QSK_REGISTER_GADGET( QskGradientStop, "GradientStop" ); + QSK_REGISTER_GADGET( QskIntervalF, "IntervalF" ); + QSK_REGISTER_GADGET( QskLayoutHint, "LayoutHint" ); + QSK_REGISTER_GADGET( QskSizePolicy, "SizePolicy" ); + QSK_REGISTER_GADGET( QskTextOptions, "TextOptions" ); + QSK_REGISTER_GADGET( QskMargins, "Margins" ); + } // Support (lists of) GradientStop QMetaType::registerConverter< QJSValue, QskGradientStop >(