[Development] QTCS2019 Notes from QtQml session

Dmitriy Purgin dpurgin at gmail.com
Fri Nov 22 17:21:38 CET 2019


Hi Damian,

that seems to be an interesting case. Could you provide an example of why
would you need such a pattern?

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.

Cheers
Dmitriy

On Fri, Nov 22, 2019 at 4:50 PM Damian Ivanov <damianatorrpm at gmail.com>
wrote:

> How would .qml files that are singletons and instantiated from c++ be used
> currently I do this and am able to access it from qml and c++
> QQmlComponent* component = new QQmlComponent(application_engine,
> "qrc:/Component.qml");
> QObject* obj = component->create();
> obj->setParent(this);
> application_engine->rootContext()->setContextProperty("obj", obj);
>
> I don't see this anywhere documented how this could be done using a
> singleton.
> If I register it as singleton the application_engine doesn't find it
> findChild->
> Using component->create would create it again since it is already
> registered as a singleton.
>
> Any suggestions?
>
>
> ;
>
> On Fri, Nov 22, 2019 at 12:53 PM Kai Uwe Broulik <kde at privat.broulik.de>
> wrote:
> >
> > Hi,
> >
> >  > these are the notes on the QtQml session:
> >
> >  > Versioning
> >  > ----------
> >  >
> >  > Once we get rid of unqualified lookups we don't need any QML
> versioning
> >  > anymore. At least the minor version will become optional already in
> 5.15
> >  > for well-behaved QML documents. In QML 3 it won't be allowed.
> >
> > While I agree with this overall, there's still one caveat which I
> > haven't seen discussed yet:
> >
> > Imagine I have the following code:
> >
> > Item {
> >      id: foo
> >      property color prettyColor: "#f0f"
> >
> >      Rectangle {
> >          color: foo.prettyColor
> >      }
> > }
> >
> > Right now "foo" refers to the Item. What if in a future update,
> > Rectangle gains a new property "foo". Unless you want to force everyone
> > to be explicit by using "this" (e.g. width: this.height) everywhere,
> > which would be annoying, I don't see how this can be made future-proof
> > without some form of versioning or some other magic solution?
> >
> > Cheers
> > Kai Uwe
> > _______________________________________________
> > Development mailing list
> > Development at qt-project.org
> > https://lists.qt-project.org/listinfo/development
> _______________________________________________
> Development mailing list
> Development at qt-project.org
> https://lists.qt-project.org/listinfo/development
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/development/attachments/20191122/f4e8953a/attachment.html>


More information about the Development mailing list