Trolltech
today released Qt version 4.2. Highlights of the new release include support for styleable widgets and a new Graphics View 2D canvas framework.
Trolltech
today released Qt version 4.2. Highlights of the new release include support for styleable widgets and a new Graphics View 2D canvas framework.
QT is by far the best designed c++ API available, and better yet, it’s constantly evolving. Not only that, but it’s closely tied to the open-source world philosophically. Any project I’ve done in QT has gone quick and easy, with realatively few gotchas.
There’s even a QT IDE for windows – QIDE – that’s worth looking at.
All in all a very nice environment to get work done.
It all depends on your philosophy.
From my view Qt attempts to infiltrate the whole project from top to bottom instead of providing useful utilities.
The whole model/view/controller framework that came out with 4.0 is an example of this. Also Qt has some problems with getting too bloated and loaded down, note the QWidget class and too many different ways of handling gui events (pick either signal/slot, override QWidget event methods or install event filters).
I guess the more I’ve been coding the more I’ve moved to “simpler is better”. I appreciate having the fat cut out.
Of course at the same time I realize that C++ also needs to go away, D will make this possible (and obsolete Qt at that point also).
http://doc.trolltech.com/4.2/qt4-2-intro.html has the new features with screenshots. Happy hacking
Looking mighty sweet, thanks for that link.
Are these style sheets somewhat like Gtk themes? I don’t think Gtk themes cascade very well though, from the tiny bit of editing I’ve done with them.
Kinda but I think is more powerfull, you can not only change the looks but also the behavior, in other words, is going beyond than a simple theme.
From what I can see Gtk themes are more akin to Qt Styles
(see http://doc.trolltech.com/4.2/paintsystem.html#styling )
the Style sheets are rather text files looking similar to CSS Style Sheets loaded at runtime…here a short snippet from the http://doc.trolltech.com/4.2/widgets-stylesheet.html examples “coffee” style sheet.
/* Increase the padding, so the text is shifted when the button is
pressed. */
QPushButton:pressed {
padding-left: 5px;
padding-top: 5px;
background-color: #d0d67c;
}
QLabel, QAbstractButton {
font: bold;
}
/* Mark mandatory fields with a brownish color. */
.mandatory {
color: brown;
}
Are these style sheets somewhat like Gtk themes? I don’t think Gtk themes cascade very well though, from the tiny bit of editing I’ve done with them.
I remember seeing this post below from Zack Rusin a while back in planetkde, he outlined in rough strokes the flexibility of css style sheets for a GUI. Not sure if this helps answer your question, but I found it interesting when I first saw it.
http://zrusin.blogspot.com/2006/08/magic.html
The new Cleanlooks theme is a Qt theme which is intended to allow Qt apps to blend in with GTK ones when the app is being run in GNOME, much as Plastique was intended to let Qt 4 apps blend in with KDE. My main complaint with it is that, on some TFT monitors which have a pinkish tinge (like my Dell 1905FP) it really does bring out the pink, and Plastique doesn’t. But Cleanlooks is a Qt-based Clearlooks clone and so your windows should redraw nice and quick so you know it’s not GTK.
This will be nice for KDE development. Can’t wait for KDE 4.0 !!!
Qt 4.2 now contains support for the Glib eventloop. This makes it possible for Qt applications to use plugins made using other Glib-based frameworks, and even enables Qt plugins to be created for use with non-Qt applications.
This is by far the coolest feature. Finally the two desktops may begin to play nicely… and I thought portland was all smoke and mirrors 🙂
Edited 2006-10-04 20:54
That is what I’m thinking as well.
I’m not a coder myself but I like the new features provided by 4.2.
So especially the features that will make it easier to have a comprehensive desktop even though you are using Gnome and QT-applications are a step foward imo.
I don’t think that the user should be concerned with framework, programming language or whatever a program has been written in, he should be able to use it as he is used to.
“This is by far the coolest feature. Finally the two desktops may begin to play nicely… and I thought portland was all smoke and mirrors :-)”
That only seems to go one direction though. Trolltech created a theme to integrate into Gnome. Themes to integrate GTK apps into KDE come from KDE. Qt apps let you switch the button order (as do KDE apps). Gnome apps AFAIK do not offer the ability to change button order to fit into KDE. Qt is the one that integrates the other side’s event loop. A plugin for letting gtk apps use KDE file dialogs came from the KDE side.
KDE/Qt do work to integrate their apps into the other environment, and they are also left to do the work to integrate the other environment’s apps into their own.
While there may be stuff going on behind the scenes, I have seen absolutely nothing from Gnome that helps me integrate their apps into my DE of choice. They are completely inflexible, in a totally irritating my-way-or-the-highway sort of way (I’ll take the highway). If they are working behind the scenes to rectify this, show me the money.
I really don’t want to start a Gnome/KDE war, but the question is relevant to this topic. When we see Trolltech doing all this work to integrate across DEs, it should be pointed out, and it just makes a lack of such initiatives from Gnome stand out.
Well, the Gnome attitude is clear in this context: every idea they propose now become immediately a so-called freedesktop “standard”, and they start to complain KDE is not using it.
IMO Gnome simply self-proclamed itself “the standard” (obviously this isn’t the truth).
every idea they propose now become immediately a so-called freedesktop “standard”, and they start to complain KDE is not using it
This is not true.
The developers engaged in freedesktop.org activities understand very well that any kind of proposed specification or technology becomes a “standard” by being adopted, no by being added to the source repository.
If at all there might be a different focus, i.e. GNOME developers rather proposing technology/implementations while KDE developers rather proposing specifications
Unfortunately the problem with desktop cooperation has never been technical, but that GNOME has as a mission statement to replace KDE.
> Unfortunately the problem with desktop cooperation
> has never been technical, but that GNOME has as a
> mission statement to replace KDE.
This is true, and I’m surprised not more people have caught on to this. The GNOME mission statement reads as follows:
“create a computing platform for use by the general public that is completely free software… also, we will destroy the KDE project, and all that it stands for. We shall then dance on the burnt rubble of what used to be TrollTech HQ in Oslo.”
Edited 2006-10-05 12:41
You can be as sarcastic as you like, but the truth is the Gnome project is behaving like that. Examples of what is been doing in KDE and Trolltech to bridge the gap between desktops have been given in the comments for this discussion, and I’m glad that people are waking up and are more aware of this issue recently.
Therefore, I think the question is valid and still remains. What are they doing on the GTK/Gnome side of things to reach this goal?
Edited 2006-10-05 14:38
You can be as sarcastic as you like, but the truth is the Gnome project is behaving like that. Examples of what is been doing in KDE and Trolltech to bridge the gap between desktops have been given in the comments for this discussion, and I’m glad that people are waking up and are more aware of this issue recently.
Therefore, I think the question is valid and still remains. What are they doing on the GTK/Gnome side of things to reach this goal?
You’re bringing this point up like it’s a bad thing, but it’s actually a good thing IMHO. If you look at the big picture, Gnome is a DE for *nix based systems. KDE is also a DE for *nix based systems, but KDE 4.x will elevate it a little more into being a DE-agnostic complete application framework. Sure, there will be the KDE desktop, but you won’t be restricted to running it.
Think about the advantages developers and users will have with a platform agnostic comprehensive framework, and the ability to develop integrated applications that will run natively in other environments, whether it be Gnome, Windows or OS X.
I remember reading somewhere (can’t remember the link so take it with a grain of salt) that the majority of Trolltech’s customers are actually using Qt for Win-based development, if not exclusively. KDE 4.x will build on this by providing a somewhat OS-agnostic application framework with a library of common application functions, integration with other applications and access to kparts and the other goodies that KDE developers love since it cuts down coding requirements and development time. Qt/KDE development will open the door to a much broader market and install-base, without restricting itself to either freedesktops or ugly hacks to get it running on non-native platforms.
There’s no denying that GTK apps are best run in Gnome (or a similar GTK-based DE). Sure they’ll run in other environments, or can be ported, they’ll never integrate cleanly or have a universal integrated framework. If the Gnome team is happy with that and feels the onus is on “foreign” toolkits to integrate themselves cleanly without any quid pro quo, all the more power to them. If users are happy fleeing lockin from one environment to lock themselves into another in the name of “freedom”, all the more power to them as well.
But I think KDE 4.0 is going to shake things up, and it has nothing to do with HIG or GUIs. It has much, much bigger aspirations than overhyped linux desktop wars, me thinks.
Still, only time will tell…