About G’s, Q’s and M’s
During last years, I’ve been collaborating in the development of the 5th version of Maemo. As you already know, almost everything in this version has been created using GNOME technologies, so these were my tools to help with the development.
But some time ago, Nokia announced that they have changed their mind, and that the new upcoming Maemo6 will be Qt powered. And a bit after that, this new Meego initiative was announced, as the fusion of Maemo and Moblin to create the “ultimate mobile technology that will rule them all”. Well, I must say that these movements attracted my curiosity, so I decided to rescue my Qt knowledge and give a look to what’s really being done in/with Qt inside Maemo. Of course, having some knowledge about the Maemo5 environment and being the proud owner of a N900 made me start with the “what can be done with Qt in Maemo5?” question.
You may (or may not) know that Qt4 is already in your N900 if you have installed the Nokia released updates. It’s the 4.5 version. Nothing new under the sun. But the most interesting stuff is not there, but in the beta 4.6 version that lives in the extras-devel repository (how to enable it?). A lot of work has been and is being doing there to (among other things) ease the development of Qt applications and to be able to use the Maemo5 Hildon widgets from it. You can find more information about it here and here.
So, what’s the cool stuff? For the lazy ones, who don’t want to read all the documentation, these are the main ones regarding app development:
- The Maemo5 style has been implemented so, by default, all the QWidgets you use will look maemized
- Panning support for almost every QAbstractScrollArea
- Qt based desktop widgets
- App windows can be told to behave as HildonStackableWindows
- Window’s QMenuBar is automatically shown as a HildonAppMenu
- Basic Maemo5 Hildon widgets or equivalences are available to use:
- … and much more stuff I’m not mentioning here
Ok, there are a lot of resources available. Great!. But… are they useful? Are they usable? Can we do cool software with them? The best way to test that is by using them, of course, so a while ago I started to develop an old idea I got for my N900 and… well, I guess that’s a story for another post…