diff --git a/scripts/mkqtdecl6/mkqtdecl.conf b/scripts/mkqtdecl6/mkqtdecl.conf index af859b78d..0706912dd 100644 --- a/scripts/mkqtdecl6/mkqtdecl.conf +++ b/scripts/mkqtdecl6/mkqtdecl.conf @@ -32,7 +32,15 @@ drop_method :all_classes, /::data_ptr/ # no private data drop_method :all_classes, /::x11/ # no X11 stuff drop_method :all_classes, /\(.*&&.*\)/ # no move semantics drop_method :all_classes, /.*\s+&&$/ # no move semantics +drop_method :all_classes, /\(.*std::nullptr_t.*\)/ # no nullptr arguments +drop_method :all_classes, /\(.*std::experimental.*\)/ # no experimental stuff +drop_method :all_classes, /\(.*std::chrono.*\)/ # no chrono +drop_method :all_classes, /^std::chrono::/ # no chrono as return value +drop_method :all_classes, /\(.*std::filesystem.*\)/ # no filesystem +drop_method :all_classes, /^std::filesystem::/ # no filesystem as return value drop_method :all_classes, /\(.*std::initializer_list.*\)/ # no brace initialization +drop_method :all_classes, /\(.*std::function.*\)/ # std::function not bindable +drop_method :all_classes, /^std::function # std::function not bindable as return value drop_method :all_classes, /::bindable/ # no QBindable available rename :all_classes, /::create\(/, "qt_create" # clashes with GSI/Ruby @@ -86,10 +94,12 @@ drop_class "QBasicUtf8StringView" drop_class "QBBSystemLocaleData" drop_class "QBigEndianStorageType" drop_class "QBindable" +drop_class "QBindingStorage" drop_class "QBitArray" drop_class "QBitRef" drop_class "QBool" drop_class "QByteArray" +drop_class "QByteArrayView" drop_class "QByteRef" drop_class "QCache" drop_class "QCborArray" # complex API & there are better alternatives @@ -241,6 +251,7 @@ drop_class "QStringEncoder", /DecodedData/ drop_class "QStringListIterator" drop_class "QStringList" # mapped otherwise drop_class "QString" # mapped otherwise +drop_class "QStringView" # mapped otherwise drop_class "QStringRef" drop_class "QStringTokenizerBase" drop_class "QStringTokenizerBaseBase" @@ -276,6 +287,8 @@ drop_class "QTypeInfoMerger" drop_class "QTypeTraits" drop_class "QUnhandledException" # (TODO) no mapping yet drop_class "QUntypedPropertyBinding" +drop_class "QUntypedBindable" +drop_class "QUntypedPropertyData" drop_class "QUpdateLaterEvent" drop_class "QUrlTwoFlags" drop_class "QUuid" @@ -296,6 +309,8 @@ drop_class "QWeakPointer" drop_enum_const "QEvent", /CocoaRequestModal/ # not available on WIN +drop_method "QObject", /QObject::bindingStorage/ # no QBindingStorage +drop_method "QPluginLoader", /QPluginLoader::staticPlugins/ # no QStaticPlugin drop_method "QKeyCombination", /QKeyCombination::operator<\(/ # deleted drop_method "QMetaAssociation", /QMetaAssociation::QMetaAssociation\(.*MetaAssociationInterface/ # interface class not available drop_method "QMetaContainer", /QMetaContainer::QMetaContainer\(.*MetaContainerInterface/ # interface class not available @@ -303,6 +318,12 @@ drop_method "QMetaSequence", /QMetaSequence::QMetaSequence\(.*MetaSequenceInterf drop_method "QCollator", /QCollator::compare\(.*QStringRef/ # clashes with QString version drop_method "QLocale", /QLocale::(toDouble|toFloat|toInt|toLongLong|toShort|quoteString|toUInt|toULongLong|toUShort)\(.*QStringRef/ # clashes with QString version drop_method "QRegularExpression", /QRegularExpression::(match|globalMatch)\(.*QStringRef/ # clashes with QString version +drop_method "QRandomGenerator", /QRandomGenerator::QRandomGenerator\(.*quint32\s+\*/ # no pointers +drop_method "QRandomGenerator", /QRandomGenerator::QRandomGenerator\(.*std::seed_seq/ # no std::seed_seq +drop_method "QRandomGenerator", /QRandomGenerator::seed\(.*std::seed_seq/ # no std::seed_seq +drop_method "QRandomGenerator64", /QRandomGenerator64::QRandomGenerator64\(.*quint32\s+\*/ # no pointers +drop_method "QRandomGenerator64", /QRandomGenerator64::QRandomGenerator64\(.*std::seed_seq/ # no std::seed_seq +drop_method "QRandomGenerator64", /QRandomGenerator64::seed\(.*std::seed_seq/ # no std::seed_seq drop_method "QSignalBlocker", /QSignalBlocker::QSignalBlocker\(.*&/ # clashes with pointer version drop_method "QQuaternion", /QQuaternion::toRotationMatrix\(/ # GenericMatrix not available drop_method "QQuaternion", /QQuaternion::fromRotationMatrix\(/ # GenericMatrix not available @@ -423,6 +444,8 @@ drop_method "", /::operator\s*==\(const\s+QVariant\s*&\w+,\s*const\s+QVariantCom drop_method "", /::operator\s*!=\(const\s+QVariant\s*&\w+,\s*const\s+QVariantComparisonHelper/ # requires QVariantComparisonHelper drop_method "QByteArrayMatcher", /QByteArrayMatcher::indexIn\(const\s+QByteArray/ # clashes with const char * variant drop_method "QRegion", /QRegion::setRects/ # gets a new implementation +drop_method "QRegion", /QRegion::crbegin/ # iterator not available +drop_method "QRegion", /QRegion::crend/ # iterator not available drop_method "QTimer", /static\s+void\s+QTimer::singleShot\(/ # requires slots, alternative impl? drop_method "QDebug", /QDebug::operator\s*<<\((?!const\s+QString\s*&)/ # don't map the others right now - too many (TODO: how to map?) drop_method "", /::operator\s*<<\(QDebug\s*\w*\s*,\s*(?!const\s+QString\s*&)/ # don't map the others right now - too many (TODO: how to map?) @@ -525,6 +548,7 @@ drop_method "QMessageLogger", /QMessageLogger::fatal.*\.\.\./ # does not support drop_method "QMessageLogger", /QMessageLogger::info.*\.\.\./ # does not support ... drop_method "QMessageLogger", /QMessageLogger::noDebug.*\.\.\./ # does not support ... drop_method "QMessageLogger", /QMessageLogger::warning.*\.\.\./ # does not support ... +drop_method "QPropertyObserver", /QPropertyObserver::setSource/ # needs private data add_native_impl("QMessageLogger", <<'CODE', <<'DECL') static void critical1(QMessageLogger *logger, const char *msg) { @@ -808,6 +832,10 @@ drop_method "QImage", /^\s*unsigned\s+char\s+\*\s*QImage::scanLine/ # TODO: requ drop_method "QImage", /QImage::QImage\(unsigned\s+char\s+\*data/ # TODO: requires non-const char * drop_method "QImage", /QImage::text\(const\s+QString/ # clashes with const char *version drop_method "QTextDocument", /QTextDocument::appendUndoItem/ # requires QAbstractUndoItem which is not available +drop_method "QTextDocument", /QTextDocument::resourceProvider/ # needs std::function +drop_method "QTextDocument", /QTextDocument::setResourceProvider/ # needs std::function +drop_method "QTextDocument", /QTextDocument::defaultResourceProvider/ # needs std::function +drop_method "QTextDocument", /QTextDocument::setDefaultResourceProvider/ # needs std::function drop_method "QAccessibleInterface", /QAccessibleInterface::editableTextInterface/ # requires QAccessibleEditableTextInterface which is not available drop_method "QAccessibleInterface", /QAccessibleInterface::tableInterface/ # requires QAccessibleTableInterface which is not available drop_method "QAccessibleInterface", /QAccessibleInterface::textInterface/ # requires QAccessibleTextInterface which is not available diff --git a/src/lay/lay/doc/programming/qt_binding.xml b/src/lay/lay/doc/programming/qt_binding.xml index ccb07a4e5..4d298d922 100644 --- a/src/lay/lay/doc/programming/qt_binding.xml +++ b/src/lay/lay/doc/programming/qt_binding.xml @@ -114,7 +114,7 @@ end