Qt Opens Source Code Repositories
sobral writes "Following the announcement of the LGPL license model, since yesterday the Qt source code repositories are open to the public together with their roadmap. The contribution model is online and will enable developers from the community to submit patches through a single click process, avoiding the previous hassle of sending in signed paperwork. The code is hosted at qt.gitorious.org and an instant benefit of this launch is that Qt Software has been working together with Gitorious maintainers for the last four months to improve Gitorious and all these new features are already submitted upstream."
Yes, QuickTime is definitely shitty but what does that have to do with Qt?
Sales of Linux netbooks collapsed. Google is providing a standardized UI on top of Linux. Symbian is dead. Basically, there is very little need for a specialized UI toolkit like Qt now that there are both fewer platforms for it to run and more mature competitors on the remaining platforms.
Sayonara, Qt. Hope you beat Gnome on the desktop!
The only complain developers had with QT/KDE was that it was not LGPL. It was one of the main reasons behind creation of horrible GNOME/GTK. Now lets hope that god awful GTK dies and opens-source developers embrace QT resulting in unification of open-source GUI.
Amen..
This is like ... well .. 18 years to late ..
echo '[q]sa[ln0=aln80~Psnlbx]16isb572CCB9AE9DB03273snlbxq' |dc
I hope Gnome switches to Qt one day, its so much nicer than GTK.
I worked on the software for a Motorola unit that used Qt UI framework. What is interesting is that Moto moved away from Qt when one of their major competitors (Nokia) bought Trolltech (the company that makes Qt). Two years later they open source it, I don't quite get it...
1) replace Qt memory management with TR1::shared_ptr (or boost).
2) replace Qt collections with STL collections.
3) replace Qt threads with boost::threads.
4) replace Qt signals and slots with boost::signals.
In other words, make Qt play nice with STL and boost, which are the foundations for developing C++ code these days.
Maybe now that QT is LGPL, Mathworks will finally transition MATLAB on OS X out of X11 and make it behave like a proper OS X app. ...One can dream....
Then let the better UI win. Will it be one that's Java-only, or one that can be used in its native C++ environment or with Python, Ruby, or even Java?
Even if it were true, and with about half of the smartphones in the world running Symbian I don't think it is, what has that to do with Qt?
Huh? There are more platforms than ever for Qt to run. Do you mean Microsoft isn't delivering operating systems anymore?
I have to say, I'm glad of this trend lately for open source projects to primarily publish their source through Git, and particularly through these very able Git hosting sites like gitorious and github. If you've worked with CVS and SVN open-source projects most of your career, the experience is simply incomparable. With the way Git works, and particularly with the implementations the hosting companies provide, it's very easy to fork a project, make the changes you want, and always have the power to commit to a remote repository that not only keeps track of all your commits but ALSO how all your commits relate back to the original forked project...
Instead of downloading someone's tarball and (maybe) emailing them a diff (or just posting your own duplicate of their source with your little changes), it's like you're making a shadow copy of a projects source, where you have all the control but no information is duplicated or lost.
Don't blame me, I voted for Baltar.
I wasn't aware that software could smell at all. Unless...
Oh Python, I love you...
If it's in you sig, it's in your post.
It does have a certain shitness to the look, for some reason, at least in KDE. I noticed a while back that a bug was fixed in KDE 4 that rendered stuff with too many borders -- so when a widget was inside another widget, or adjoining another widget, they would both render a border. Kind of hoped that would solve the vague cluttered/weird/awkward feel, but it's hard to tell, since KDE 4 went with the horrible Oxygen theme which could make any widget library look like crap. I suspect Qt itself can still look very nice though. I don't mind the look of Google Earth, for instance, and QtDesigner is quite nice in places at least, though simplistic, even WITH it's horrible KDE4-like colors etc.
That said, Qt is way more than than a widget look/theme. It's a very nice OO library for cross-platform GUI (and non-GUI) applications, with modern threading and event-driven programming support, etc. It's one of the few libraries that make me even consider using C++ these days, as opposed to nicer, more rapid languages like python++. I also think that, if GNOME had used a library of similar quality** and similar OO features, then the GNOME desktop, and Free Software in general, would probably be a lot more advanced at this stage.
++ Yes, I know PyQt is available
** Yes, I know that GNOME was a reponse to Qt's early licenses, and that Harmony didn't pan out
Qt 4.5 has an excellent GTK style that makes Qt and KDE applications look just like GTK/GNOME applications, down to button ordering.
Also, Qt Creator, their new C++ IDE, is a good illustration of what a Qt application can look like. Delicious.
Michel
Fedora Project Contribut
This doesn't work. They tried it with Vista.
I didn't know the GNOME-compatible look/feel had improved much with Qt4.5, thanks.
On QtCreator... yeah, that's what I meant when I said QtDesigner. Just tried it last night, and it was quite... interesting. I really can't say nice, because it showed more potential than actual beauty, but it did make me stop and think a little :)
the shared_ptr equivalent in Qt is QSharedPointer (surprise!) not QPointer which is something quite different. I do suggest not using shared_ptr as the Qt version has better cross-platform support and is easier to use and like most Qt things has better readability.
What reactionaries are modding this "troll"? It's a perfectly valid comment, for anyone who has actually sat down and compared the libraries. Also, it's a perfectly reasonable issue to consider, now that both desktops' core libraries share common licenses and have essentially become interchangeable. Yes, that interchange would involve hard work, which may lead reactionaries to reject it, but what progress doesn't involve hard work? It would at least be nice to see a study of some GNOME app re-implemented in Qt, and what the pros/cons are. I know for a fact that at least a few apps have have been ported from GNOME to Qt (Qt3, though, I think), and probably some have been ported the other way too. Even just those historical cases with Qt3, the case study would be interesting.
Now all that is needed is a decent version of KDE for ubuntu.
I swear, I've never heard of kubuntu before.
Last I checked QT 4.5 Visual Studio compiler still required a license and lots of money. Only the MinGW + QT was free. I guess it's ok if you use sharedevelop and tell it to use the MinGW compiler toolchain, but for someone wanting the VS integration it is not too good. Has this changed?
Kubuntu is not a decent version of KDE. Or KDE really sucks.
If they put half the time into kubuntu that they put into ubuntu it could become a great operating system.
It's not going to happen. Qt makes sense if you develop in C++. Gnome is going to move gradually to Python and C# development; C++ is just not on its roadmap.
Is there any kind of Mercurial hosting for open source projects you can recommend?
To be fair QSharedPointer showed-up in 4.5, hence the reason I had never heard of it until now. OPointer was forced upon me due to everything being a QObject, but then there was the other non-Qt half of the code that used boost, it was not pretty.
Sory we can't make every one happy, we worked very hard in Oxygen to make it pretty and usable, many people find it so, and it was the qt software that made it possible.
The fact that you find it ugly, it is compensated by the fact that many, many, others dont.
Its not a finished joob I think it will never be but we do our best, and I think its a fantastic start.
Yours Nuno Pinheiro Oxygen coordinator
Gnome is going to move gradually to Python and C# development
Seriously? C# in mono and all that?
Sometimes the decisions development teams make absolutely mystify me.
What can I say... Qt is becoming a dream platform thanks to Nokia's insight!
- a powerful language/library (C++)
- real cross-platform
- support for embedded and mobile applications (a great alternative for the difficult Symbian C++ language)
- open source and nice licence (LGPL)
- exemplar own IDE but also Eclipse/VS integration
- additional languages supported
What else could one ask?!
"Sum Ergo Cogito"
Anybody else misread that as a specific part of the female anatomy?
Why? it's a wonderful platform, and an excellent language. Yes, it has some potential problems with patents, but so does half of Linux' multimedia apps and nobody cares much.
If your country has backwards patent laws it's your problem after all, not ours.
No problem is insoluble in all conceivable circumstances.
or depending on the code... Python, you stink!
>>> import odour
Traceback (most recent call last):
File "", line 1, in
ImportError: No module named odour
:(
After such a huge change when will see an LGPL version of PyQT ? Crosses fingers...
I second the comments about Kubuntu! I have even posted a brainstorm idea on ubuntu's site about releasing a default Ubuntu with KDE4 rather than GNOME.
The QtUiTools is not meant to be linked against, its a library that is shipped with designer (an development-application) so its kind of odd to judge all of Qt on a bundled application. Perhaps you should try to move the classes you require from this library into QtGui. You may want to file a feature request or even do the work yourself (this post is about the repos being open!!). The tools-library you seem to want to use is not for major consumption, doesn't have binary compatibility and all that. So its great that you *can* use it, but maybe you are expecting a bit too much to get it without any investment at all ;)
As posted elsewhere in this story the Qt APIs promote a certain design that make your application and your code easier to maintain and read.
So to answer your point 1;
The parent-child relationship is there for memory management purposes. Which directly links to having an owner of an object. If your object is owned by someone else, that someone is responsible for deleting it. This is free in Qt when you use QObject. If your object is not owned by one thing but shared between many you use a QSharedData based concept which immediately makes you stop using pointers too.
This makes it absolutely clear what is what in common usage of the code and you'll notice that memory leaks or crashes due to dangling pointers become very easy to avoid.
So, you may be right Qt is not as flexible as STL. But I don't mind a bit of structure. Less rope to hang myself.
Another point that probably needs clarification;
I think it does, you can't have powerful signals/slots without introspection. The huge advantage of using introspection to do connections is that you don't need a pre-compiled interface to code to. Which then avoids a lot of nastyness in C++ with library loading and linking etc.
Which makes it possible to have a GUI designer as powerful as QtDesigner, among others.
Its not so much that many must find Oxygen pretty, its much more that people that don't are not whining about it like the original poster did. They just use another style that looks better to them. Frankly; saying that a theming toolkit looks ugly is kind of silly. Especially since there is a native Windows look&feel as well as a native MacOSX l&f which, well, look native.
Gtk+ is a mess, but it's really an apples and oranges comparison. Gtk+ is purely a GUI library, with Glib below it performing some utility functions, and Gnome above it for more convenience functionality.
Qt is a full application framework, with all levels of networking and graphical sub-libraries/plugins.
If Gnome switched to Qt, development would be set back by years. It's no small task to convert all those programs. Some are C-based (pure Gnome libraries and Gtk+), others C++ (Gnomemm and Gtkmm). Gnomemm and Gtkmm is more pleasant to code with, in my opinion, but they still doesn't abstract many tasks beyond a GUI.
I like how this is flamebait, but my comment below saying kubuntu sucks is insightful.
No, it's only silly to selfish people like you who only care about making themselves happy. Personally, I'm concerned about all unix users (and all computer users in fact), so yes, having a default choice of theme that's not pretty is a problem.