Reply
Thread Tools
Posts: 6 | Thanked: 1 time | Joined on Jan 2010
#1
Hi all,

I read that GTK/Hildon will be replaced by Qt. However, checking the Qt website it seems that Qt also support networking and other non UI related stuff. What does this mean for Maemo? Does this mean that not only the UI will be replaced?

Thanks.
 
Guest | Posts: n/a | Thanked: 0 times | Joined on
#2
Qt started off primarily as a cross-platform UI toolkit, but yes, as you read, it does a lot more. The packages already available for Maemo 5 (4.5 (old, unofficial), and 4.6 (coming soon, fully ported)) include the entire set of Qt libraries, although they are split into functional sections, so you may not have to install all of them if your other installed software only needs some of the modules.
Maemo 5 will not be having its system UI replaced with a Qt-based solution, so nothing will change for you on the N900 except that you will be able to run a more diverse selection of apps once PR 1.2 is out.
Maemo 6/Meego is moving to a Qt-based system UI as encouraging application development with Qt. However, Qt is a set of libraries primarily intended to simplify various aspects of user-visible application development, and is not really used in the rest of the OS stack. (It could be, I suppose, but it isn't really, in practice.) QtNetwork, for example, provides functionality to make it easier to send data over the Internet, handle web encryption, etc. (see http://doc.trolltech.com/4.6/qtnetwork.html for brief descriptions), which saves the developer from having to find a (potentially less compatible) third-party library for every little thing. It doesn't actually control or manage your networking subsystem. If you've ever used a programming language such as Java or the .NET family, you'll recall that they come with substantial sets of libraries with commonly-used functionality (the JAVA runtime, or the .NET framework); C++ itself has almost nothing in the way of "standard" libraries, and so Qt fills a similar role as the aforementioned products. All this is to say that, no, Qt is not going to be replacing large parts of the OS.

I hope that answers your question.
 

The Following 4 Users Say Thank You to For This Useful Post:
Posts: 6 | Thanked: 1 time | Joined on Jan 2010
#3
Thanks Jeffrey. I already hoped that it would be like you described. This means I can reuse my old network code together with Qt. Although I only write C code I presume I could mix Qt and my code.
 
Guest | Posts: n/a | Thanked: 0 times | Joined on
#4
Originally Posted by CheeseMill View Post
Thanks Jeffrey. I already hoped that it would be like you described. This means I can reuse my old network code together with Qt. Although I only write C code I presume I could mix Qt and my code.
Yes, you can mix C and C++/Qt, but be aware that it may occasionally be messy. For example, Qt's Signals & Slots mechanism exists so you don't have to fiddle with things like callbacks, and it's really quite nice. However, ironically, that means that if you need to use callbacks with Qt code, it can sometimes be more inconvenient than usual.
Do note that Qt itself is not directly usable by C (to my knowledge), due to its object-oriented nature; if you have backend code written in C, you'll still have to write the GUI/frontend in C++ or another supported language.
 
Reply


 
Forum Jump


All times are GMT. The time now is 14:25.