<div dir="ltr"><div>Hi Damian, <br></div><div><br></div><div>that seems to be an interesting case. Could you provide an example of why would you need such a pattern?</div><div><br></div><div>Why the other way round -- creating a C++ singleton and exposing it to QML -- doesn't work for you? That should be easier and more transparent.<br></div><div><br></div><div>Cheers</div><div>Dmitriy<br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Nov 22, 2019 at 4:50 PM Damian Ivanov <<a href="mailto:damianatorrpm@gmail.com">damianatorrpm@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">How would .qml files that are singletons and instantiated from c++ be used<br>
currently I do this and am able to access it from qml and c++<br>
QQmlComponent* component = new QQmlComponent(application_engine,<br>
"qrc:/Component.qml");<br>
QObject* obj = component->create();<br>
obj->setParent(this);<br>
application_engine->rootContext()->setContextProperty("obj", obj);<br>
<br>
I don't see this anywhere documented how this could be done using a singleton.<br>
If I register it as singleton the application_engine doesn't find it<br>
findChild-><br>
Using component->create would create it again since it is already<br>
registered as a singleton.<br>
<br>
Any suggestions?<br>
<br>
<br>
;<br>
<br>
On Fri, Nov 22, 2019 at 12:53 PM Kai Uwe Broulik <<a href="mailto:kde@privat.broulik.de" target="_blank">kde@privat.broulik.de</a>> wrote:<br>
><br>
> Hi,<br>
><br>
>  > these are the notes on the QtQml session:<br>
><br>
>  > Versioning<br>
>  > ----------<br>
>  ><br>
>  > Once we get rid of unqualified lookups we don't need any QML versioning<br>
>  > anymore. At least the minor version will become optional already in 5.15<br>
>  > for well-behaved QML documents. In QML 3 it won't be allowed.<br>
><br>
> While I agree with this overall, there's still one caveat which I<br>
> haven't seen discussed yet:<br>
><br>
> Imagine I have the following code:<br>
><br>
> Item {<br>
>      id: foo<br>
>      property color prettyColor: "#f0f"<br>
><br>
>      Rectangle {<br>
>          color: foo.prettyColor<br>
>      }<br>
> }<br>
><br>
> Right now "foo" refers to the Item. What if in a future update,<br>
> Rectangle gains a new property "foo". Unless you want to force everyone<br>
> to be explicit by using "this" (e.g. width: this.height) everywhere,<br>
> which would be annoying, I don't see how this can be made future-proof<br>
> without some form of versioning or some other magic solution?<br>
><br>
> Cheers<br>
> Kai Uwe<br>
> _______________________________________________<br>
> Development mailing list<br>
> <a href="mailto:Development@qt-project.org" target="_blank">Development@qt-project.org</a><br>
> <a href="https://lists.qt-project.org/listinfo/development" rel="noreferrer" target="_blank">https://lists.qt-project.org/listinfo/development</a><br>
_______________________________________________<br>
Development mailing list<br>
<a href="mailto:Development@qt-project.org" target="_blank">Development@qt-project.org</a><br>
<a href="https://lists.qt-project.org/listinfo/development" rel="noreferrer" target="_blank">https://lists.qt-project.org/listinfo/development</a><br>
</blockquote></div>