Могу ли я использовать QScriptEngine.toScriptValue с QPointer для QObject?

документация по работе с QtScript и преобразование между значениями сценария и C ++ указывает, что вы можете использовать QScriptEngine.toScriptValue с типом QObject * и заставить его работать автоматически, приводя объект и возвращая ссылку на сценарий соответственно. Имеет ли это то же самое поведение с QPointer<QObject> или я должен создать свой собственный метатип? Если да, то работает ли он также для работы с QPointers для подкласса QObject?

Главное, что меня интересует, это то, будут ли свойства, объявленные с использованием Q_PROPERTY подкласса QObject, автоматически переноситься в сценарий, если я вызову QScriptEngine.toScriptValue на QPointer для экземпляра подкласса вместо обычного указателя.

0

Решение

Мне пришлось создать собственный метатип скрипта, чтобы QPointer был конвертирован правильно, он не работал из коробки. Тем не менее, в документации Qt упоминается, что нет никакого смысла указывать указатели как QPointers вне инициализации, так как QPointers можно обрабатывать так же, как обычные указатели, так что все это могло бы быть бессмысленным.

0

Другие решения


По вопросам рекламы [email protected]