Всем привет
Есть такой класс
class ComponentCacheManager : public QObject {
Q_OBJECT
public:
ComponentCacheManager(QQmlEngine *engine) : engine(engine) { }
Q_INVOKABLE void trim() { engine->clearComponentCache(); }
private:
QQmlEngine *engine;
};
сейчас он интегрируется в qml таким образом
engine.rootContext()->setContextProperty(QStringLiteral("componentCache"), new ComponentCacheManager(&engine));
Но хотелось бы создавать его в QML когда это нужно, а значит его нужно регистрировать как QML type таким образом
qmlRegisterType<ComponentCacheManager>("ComponentCacheManager", 1, 0, "ComponentManager");
в таком случае как мне вызывать конструктор? Или если делать дефолтный конструктор пустым то как проинициализировать поле QQmlEngine *engine;