← Back to team overview

ubuntu-phone team mailing list archive

Re: Go + QML on Ubuntu Touch

 

On Tuesday 24 September 2013 13:54:32 Robert Park wrote:
> On Tue, Sep 24, 2013 at 1:47 PM, Gustavo Niemeyer
> 
> <niemeyer@xxxxxxxxxxxxx> wrote:
> > Besides the initial fiddling around the desktop file, it all worked very well:
> >     http://youtu.be/HB-3o8Cysec
> > 
> So what I'm seeing here is a user-facing QML app written in Go. Is it
> also possible to write QML components with go (eg, at the SDK level)
> and then export those components for QML apps to use?

Hi,

Can you explain a bit more about this? I don't really see how this video is related to Go. It just 
shows the QML particle effect and a MouseArea with dragging enabled. Instantiating a 
QQuickView from Go doesn't really count as "binding" I'd say. The other video shows some 
method invokation which is one step further but still not really what QML is supposed to offer.
The interesting question is really: How do you bind properties from your Go objects to the QML 
context?

> 
> (I might need to write some reusable QML components soon and I'd
> rather use Go than C++ ;-)

Note that Qt is quite different than pure C++. It changes the language _a lot_. Especially the 
QML facing parts don't have much to do with what you know from C++ even though you can 
use all the power from C++ if you want.

I don't think you can write the full QML plugin in Go. You gotta have at least the public API in Qt. 
>From within there you probably can invoke your Go stuff (just like any other thing that you can 
bring together with C/C++ somehow). However, if you actually use Qt and QML as it is intended 
to be used (in a declarative way instead of procedural coding), I really doubt spending the effort 
for that Go wrapping layer is a good thing to do. In that case you'll probably hit every aspect of 
C++ you were originally afraid of.

Cheers,
Michael

Follow ups

References