Why QNetworkAccessManager should not have the finished(QNetworkReply *) signal
I was recently writing some network code in Qt using QNetworkAccessManager and again I did the mistake I've already done a few times. The reason for my mistake was that QNetworkAccessManager provides the finished(QNetworkReply *) signal.
There are essentially two ways to request some data from the net using QNetworkAccessManager. In the first approach you have the QNetworkAccessManager as an instance variable in your class and you connect the finished(QNetworkReply *) signal from the instance variable to your slot. This is a tempting solution as it provides a quick and easy solution to fetch some data from the net.
Sneak peek: Integrate your application with the Nokia N9 events view.
I am working on a Qt C++ library that will integrate your application with the Nokia N9 MeeGo Harmattan event feed page. You can add and update items with your icon, text or even a list of images that will be shown on the event feed page. I still want to add some features and polish the code before publishing it, but the library will be open source.
So here's a video demonstrating what the library already can do. Stay tuned!
Update: The library has been published. More information here.
Introducing kQOAuth – Easy and Powerful OAuth library for Qt
kQOAuth is a powerful yet easy way to integrate OAuth authentication to your Qt application. kQOAuth handles OAuth request signing, request submitting and reply parsing for you. It also provides an easy way to retrieve user authorization to protected resources with a built in HTTP server. All this is done with Qt programming in mind, so you can use Qt's signals to react to OAuth events in your own application. This also means that the library works fully asynchronously. kQOAuth is licensed under the LGPL license.
You can read more about kQOAuth usage in my next post: Advanced use of kQOAuth. There is now also an official web page for kQOAuth: http://www.johanpaul.com/blog/kqoauth/
If you are unfamiliar with OAuth, it is worth first checking out some tutorials:
Nokia UI Extensions for Mobile compiled in Ubuntu and Maemo 5 SDK
Nokia has released a technical preview of their second Qt and C++ based UI Framework (the first being Maemo 6 UI Framework) called Orbit or DirectUI, this time with the name UI Extension for Mobile. Source code is publicly available under the LGPL license at Gitorious: http://gitorious.org/uiemo. I need take a closer look at the source code, but my initial impression is that the APIs are clean and very Qt-like. Nice job!
The nice thing is also that the source code compiled without problems in my Ubuntu 9.10 and in Maemo5 SDK with the latest Qt 4.6 packages. Unfortunately there are only two binaries (that I could find) included called hbthemeserver and themechanger.
I have a screenshot of themechanger below. This is the only actual application and glimpse of the UI framework in action (please let me know if you find anything else!).
Yes, it runs in Maemo5 too
A proper Twitter client for the Nokia N900
I use TweetDeck on my PC as my Twitter client and before that Gravity on my Nokia 5800 S60 phone. But I haven't yet found a proper Twitter client for my N900. Mauku has been there since the beginning and Witter is one of the newest additions to Twitter application on the N900, but both of them seem to be still work in progress and lack some important features. I am a fairly active Twitter user (Tweetdeck is occupying my secondary monitor on my PC
) so naturally I have been waiting for a proper Twitter client for my N900 too.
But I need to define what proper means. I want my N900 Twitter client to have a very good timeline view. Something that Gravity and TweetDeck have, with clear colors and avatar images. I also want to have separate views of my (hashtag-)searches and tweets that mentioned me. And of course it has to be simple to switch between these views. I also want to have some basic functionality in my mobile Twitter client such as opening URLs from Tweets, re-tweets and @-replies - direct messages are then probably not difficult to add, but I don't use them.
The overall look 'n feel has to be nice. This means the kinetic scrolling must be fluent for the timeline view.
Adding friends and searching for friends are maybe secondary features as my Twitter usage on the N900 would anyway me more fast paced and wanting to have an overview of what is going on.
This would be proper Twitter client in my opinion. If I ever start working on such a project, I would do it with Qt in C++. But I would probably not use QWidgets and the native user interface on the N900, but do it in GraphicsView instead for more control of the widgets and items. This would also allow me to use the Animation Framework with the Qt State Machine. I can already imagine how to utilize those for the items in the list and new tweets
What would your proper Twitter client be for the N900?

