Qt 4 Beta 1 Available for Download
scc writes "Get it here. Trolltech's press release gives the details, including the projected release date: late first quarter 2005. Qt is the cross-platform GUI framework at the heart of KDE. At the same time, Trolltech released under the GPL Qtopia 2.1, an implementation of their GUI framework for Linux-based PDAs."
I think Qt is great, I use it for most of my projects, the only annoying thing is that the Windows version isn't free. There are free Linux and Mac versions released under the GPL, but no Windows version. \
The whole point of Qt is to make it easier to have software run on multiple OS's, but I can't test any of my stuff on Windows. Oh well, still kick ass software.
I'm especially happy about Arthur and the new Qt Designer, we will finally have an accelerated OpenGL? desxtop and all will be smooth due to double buffering.
My only gripe is that the performance is still not great, but that should be expected with debugging code and all.
Trolltech is doing great work.
Qt designer and assistent apparently can be embedded into kdeveloper, visual studio etc.
Other improvements include
a new paint engine
a new text rendering engine
new containers (which are lighter than the STL ones)
better support for multithreading
a new docking architecture
and last but not least better performance and smaller memory footprint.
Please login to access my lawn
So basically your saying that they shouldn't be allowed to make money off Qt, but you should be allowed to make money off your software that uses it? Nice.
Qt has done more for C++ than any other single project. Kudos to the Trolls.
It costs a lot of money to develop commercial software with Qt (and by extension KDE) because they use the full GPL license (as opposed to something more reasonable like the LGPL) for the Qt library to extort money from developers. Trolltech effectively control any possible commercial software market for KDE (or anything that uses Qt).
So what if you have to buy a licence for commercial development? If you're out to make money on your software then you deserve to pay. Show me another cross-platform development suite as flexable and powerful as Qt that's free. Go on, I'll wait right here till you get back.
But naturally, Trolltech are benign lovable types, aren't they? Sure they are... except they are part-owned by SCO and Canopy -- the Linux IP grab and sue specialists. Avoid Qt. It's poisonous to free software.
If you're going to troll, at least take the time to write something with fewer holes in it. Trolltech is partially owned by Canopy but not SCO. Big deal. If you were to discover that the Unibomber owned 5% of Nabisco, would you really avoid eating thier crackers? Qt ( and Trolltech ) are great friends to FOSS.
Democracy is two wolves and a lamb voting on what to have for lunch. Liberty is a well-armed lamb contesting the vote.
Having programmed in both Qt/C++ and Java/Swing for several years I can say that Qt kicks Swing's butt for ease of programming, speed and simply a better looking interface. The subset of C++ that Qt employs can be quickly mastered by any programmer - professional or novice. KDE is proof of that. When you are thinking about a cross-platform GUI think twice before going with Swing. It may be free - but you get exactly what you pay for.
The article at KDE.news
The roots of education are bitter, but the fruit is sweet.
--Aristotle
Don't be ridiculous.
The elegance of Qt far surpasses that of WxWindows, and Qt offers many more powerful classes than WxWindows does (containers, database connection, etc.).
GTK+ may be a contender, but is there a native Mac OS X version? Additionally, last I checked, which was admittedly awhile back, the documentation was terrible and the support for the Windows port was sub-par. Additionally, since much of today's programming is OO, Qt is probably a more sensible choice for many programmers.
C# may offer some powerful functionality, but from my understanding, there is no cross-platform GUI toolkit. Windows Forms for windows, GTK# for *nix, etc...
Java, IMO, is the only one that matches (and surpasses) Qt, from that list. Personally, I like both Java and Qt, and pick whichever is more appropriate for the project I'm working on.
QT is released under the GPL on Linux and OS X. People claim it isn't free because use to it was ONLY under the QPL, but now you can use it under either license for non-commercial use. If you want to make money off of it do the honest thing and pay them for using their product, and you will be able to license it under any license you wish.
Don't forget that it costs a lot of money to develop Qt with this quality.
Pulled this from the newsgroups...and it covers most diffenences between GTk and QT:::
- Qt is C++ based but it uses C++ in its own way because of its cross-platform
nature (through a special preprocessor)
- GTK is C based but it uses its own "object oriented" approach.
- Qt can rely on QtDesigner and KDevelop that, together, make up a real IDE
(similar to Visual Studio)
- GTK must rely on Glade only, that is a GUI builder equivalent to QtDesigner.
There is nothing like KDevelop for GTK (AFAIK).
- Qt runs (with recompilation) on Linux/Unix, MacOS X and Windows (all
versions)
- GTK runs on Linux. There is a porting of the old GTK1.2 for Windows. A
Porting for Mac OS X is under development (AFAIK)
- Qt has internal support for scripting (QAS)
- Should you need to add scripting capabilities to a GTK application, you have
to embed your own engine (Python, LUA...)
- Qt has integrated data-aware widget for data-centric applications.
- GTK has a separate project (gnome-db) for data-aware widgtes
- Qt-based applications and the KDE desktop "talks" each other via DCOP
- GTK applications and Gnome "talks" each other via CORBA
- Qt has exhaustive bindings for Python and a few other language (maybe Perl
and Scheme)
- GTK has exhaustive bindings for C++ (GTKmm), Python (PyGTK) and Ruby. There
are less complete bindings for Perl, Scheme, Lua and so on. Have a look at
www.gtk.org for a complete listing of the available bindings and their
development status.
- Qt has exhaustive documentation and a lot of examples form Trolltech and the
KDE team
- GTK has exhaustive documentation and a lot of examples from GTK team
- Qt is freeware on Linux only
- GTK is always freeware (but it is not completely available on Windows and
MacOS X)
Should you need to develop x-platform applications, have a look at wxWindows
(and wxPython) as well. The Linux implementation of wxWindows relies on GTK+
but wxWindows can run on Windows (all versions) as well, thanks to MFC, and
on MacOS (all versions), thanks to a specific GUI engine.
I personally think it looks nicer. That's subjective, of course. And that's not to say it looks more like windows. There is a "Ximian version" of openoffice available which can incorporate Qt widgets. It makes the interface much nicer. Some credit goes to the KDE folks though.
I hear QT is good stuff. This isn't a slam on QT in particular.
However, I'm still waiting for the day when mainstream GUI libraries catch up to where BeOS was ten years ago, and put drawing in a separate thread from everything else.
There is absolutely no reason why GUI applications need to become sluggish when they are doing something computationally intensive. There's no reason that an application should stop posting redraws every time it makes a blocking call (like, for example, doing file i/o).
My eyes were opened to this shortcoming of "modern" GUI libraries by an entry in Bram's diary a while ago.
As for Qt being doomed, having programmed with Qt and the alternatives I could find, I don't think so. Qt is still much, much nicer to program with than GTK, especially since you now have to implement your own confirmation dialog box. Wx is getting there but still a nightmare to install (IME of course) and working through GTK rather than natively hurts it. As for SDL, it's great for 3d renderers etc, but would you seriously want to write a word processor (for example) with SDL widgets? I'm not sure where eclipse comes in, I thought that was a java IDE, in which case Qt is still the best toolkit to use with java on linux, IME, it's much faster than swing and fits in with the most popular desktop environment.
I am trolling
its supposed to be 20% faster overall. Ignore the trolls.
- GTK while being C based has excellent C++ bindings.
Anyone who has used them will tell you the Qt way, despite being nonstandard, is much easier to write an actual program in.
- GTK can rely on glade/libglade / any editor of your choice, including KDevelop
That's a sign of the quality of KDevelop rather than the toolkit.
- Anjuta is an excellent IDE, many GTK developers also make use of Eclipse.
True; however, KDevelop is an even better one.
- GTK 2.x works fine on windows, not sure on the MacOS X status, but people seem to run Gimp just fine.
IIRC it will only work under X on Macs, wheras Qt can be "properly native" on Macs.
- GTK has no internal support for scripting because it is a GUI toolkit, no added bloat, you want scripting? embed perl / python / language of your choice, which provides a scripting language that people know and use that have significantly more power than QTs
I think this is the core difference. GTK aims to be purely a GUI toolkit, wheras Qt tries to include anything that most people want. I've used Qt purely for its threading and networking libraries without needing it for GUI at all. This doesn't mean bloat, especially with this new version, as the libraries are split up and you don't have to link against them all.
- gnome-db not being part of GTK is an advantage, if you don't need it, you don't have the bloat.
The libraries are there if you need them, if you don't don't link against them.
- GTK based applications can talk to each other via the freedesktop.org DBUS protocol, which KDE will be migrating to as well. DBUS bindings exist for glib, python, c# so you can talk to other non GTK applications as well, not just limited to QT apps like DCOP.DCOP is incredibly easy to embed, more mature although DBUS is now getting there, and included by default with your actions, so the IPC is there with zero effort from the programmer. Yes this means bloat, but it's worth it. CORBA is far bloatier to include, and limits you to applications which have explicitly included corba support, which is very few.
- GTK is completly available on Windows, even following the WinXP theme.
So is QT. You just have to pay for it.
I am trolling
Just try programming in it. Write an mp3 player or something (that's how I learnt). I found I enjoyed it a lot more than doing the same thing in GTK, and just found it simpler. But it's your choice.
I am trolling
Well then his post makes even less sense, you stupid anonymous jackass.
He says "working through GTK rather than natively hurts it". There is no "native" toolkit on X. Unless you're talking about raw Xlib or perhaps Athena since thats the widget set that actually comes with X. I can't imagine having wxWindows wrap Athena being any better than wrapping GTK, and if you want it to use Xlib directly theres the wxUniversal port.