login
v2
v1

jmoiron.net

Next generation toolkits

posted February4th, 2005 @ 13:18:05

- tags: development , site news

- comments: 0

Sometimes I wish that one toolkit would just win, and then I wouldn't need to waffle back and forth between them. They can look the same and function quite similarly; it IS possible; but in the example image, I had to wrestle with spacing issues in Qt for quite some time in order to get it identical to the Gtk version. Part of me has just wanted Gtk to get better than Qt so that I could actually use it and not feel like I'm implementing parts that should be done for me (like cut&paste).

Qt3 has outperformed Gtk2 thusfar; there are rendering issues on slower machines because Qt is not automatically double buffered, but other than that Qt apps outperform Gtk apps as far as responsiveness is concerned (and really, to the user, that's all that matters). I have been of the opinion for some time now that when Gtk eventually used Cairo (and more specifically, when you had Cairo set up to use Glitz) their speed issues would somehow vanish, their rastering would go vector based, and they'd totally wipe the floor with Qt in every way.

In GTK HEAD, they've gone Cairo. Qt's solution is interesting and perhaps better, though: Arthur uses whatever fast rasterizing (pixel or vector) backend exists on the system natively; when longhorn comes out in 2010, this will be double plus good for cross platform apps. I guess we'll have to wait and see what's better; Gtk+3(Cairo) or Qt4... and somehow, my money is somewhat sadly on Trolltech.

Qt will always be more delightful to use, because they have the developer in mind, and Gtk has the user in mind. Until the user experience of Gtk can approach that of Qt (as far as speed is concerned), no matter how nicely things are spaced and padded and margined in Gtk, it will always be inferior. Until I have to stop doing stupid things like iterate over entire tree/list views in order to do things for which there should be quick, builtin functions, when I'm using Gtk (out of necessity) I'll be wishing I was using Qt, too.

A quick note, work on my "new" backend (oi oi) is progressing at a slow yet comfortable pace. I've decided to stick it out with Python for now, and have relegated all of my HTML code to a seperate module that contains only strings (and functions that return strings for output). Its not exactly a template, but I don't exactly care that much; it enables drop-in replacement of HTML, and it's an improvement. As if the current design of this site was ever finished (my administration section looks like it was hit with a bomb), I'm finally happy enough with a motif that I'm sticking with it and only refactoring; you can follow my progress somewhere around here. I really like the way it feels; very clean, slick, and professional... but a number of people have made comments about centering and the like. Feel free to leave a comment somewhere if you feel you can improve upon my ideas (or if you think my ideas are shite and you have better ones); I'm specifically open to more ways in which to cleanly integrate color.

comments