KDE 5, Qt 5 and QML - What is advised for writing new (KDE) applications in the long term?

Shaun Reich shaun.reich at kdemail.net
Fri Aug 12 16:11:04 BST 2011


On Fri, Aug 12, 2011 at 10:22 AM, Mark <markg85 at gmail.com> wrote:
> 1. Write the application in Qt mostly and use kdelibs where needed?
> 2. Same as 1. but make the GUI in QML like i did in the example above?
> 3. Skip C++ altogether and make in in QML only?
> .. more options?
>
> I personally like option 2 the best since i get everything i want and
> i just dislike making an entire desktop application in JavaScript
> whatever the performance is.
>
> But what is the goal (or desire) for KDE with the plasma desktop and
> all KDE apps?

For Plasma, and plasma-desktop, the answer is "qml as much as is
possible" which in this case tends to be just about everything.

>Full QML all the way? or like option 2?
> I know Dragon is going to use the phonon QML and some more QML elements.

Dragon's use case is a bit simple if you think about it. You need to
display a video on the entire scene, and then just have a small popup
panel that is used for e.g. seeking, pausing the video. (you can see
that in the pko screenshot for instance).


Well for starters, #3 is out of the question. You need *some* C++ to
actually expose the data and perform actions and such. QML should just
be seen as the UI, that's all it is. Especially since data retrieval
and the corresponding actions in general, have a lot to do
performance-wise.

#2 is fine for this particular case, since it isn't really doing a
whole lot of complex actions.

I don't know how practical making "entire desktop application[s]" in
QML is. I'd say it's good for "light" things, but full-blown resource
intensive applications I would not use it for. Ones that require
complex layouts/UI features, and heavy model usage (I've found the
view classes to be sort of limited). Your example was rather simple,
and that tends to be the scope of Plasma Applets, which is why it
makes it easy for them.

Of course, qt quick desktop components isn't even out yet.

My .5 cents.

-- 
Shaun Reich,
KDE Software Developer (kde.org)




More information about the kde-core-devel mailing list