Unifying GTK & QT Theme Engines
An anonymous reader writes "Some guy on kde-look recently released code that
makes gtk apps use the current qt theme. Seems
this would be a major development for unifying
the 2 environments. From the URL:
This GTK theme engine uses the currently selected QT style to do it's drawing. Basically, it makes your GTK apps look like QT ones. "
______
/ \
| | < FROM THIS DISEASED MOUTH
|,
| )(__/ \__)( | AWRY BE THE WORDS AND OPINIONS
|/
(_ ^^ _) NO HEED OF THEM.>
\__|IIIIII|__/
|-\IIIIII/-|
\
`--------`
.::::TROLL-KORE FOREVER!!!
.::::I hate you, I hate your country, and I hate your face.
How QuTe.
Second Post
While this may seem like a minor thing to some people, every bit of interoperability and unification helps. Naysay as much as you want regarding Microsoft, but the reason why they have the market share is because of the unification present (at least in appearance ;-). If OSS projects (and non-OSS friends of them) can't come together, they should at least work together.
Seems like a start in the right direction, but don't expect something ready to roll (as I did until I checked the site):
:)
Currently the code is very buggy and incomplete - a few widgets do not yet use the QT drawing code. However it is still perfectly usable. This theme is slightly slower than that of most native GTK themes, but the difference is hardly noticed on a fast machine.
Known bugs: * Menus do not have borders
* The background colour doesn't change when text is highlighted
* Colours are incorrect when using certain styles (eg. Keramik)
* Buttons, and other widgets, may be the wrong size
* Scrollbars sometimes misbehave
This is a 0.x release - do don't expect it to work perfectly
everything in moderation
I'm using Windows XP... seems pretty unified to me.
Isn't this what Redhat's Bluecurve does?
You're right, I wouldn't steal a car. But if it were possible, I sure as hell would download one!
Really, I mean, QT is nice and all, but what do we really need it for? GTK+ 2.x is far superior to the QT widget family as it provides antialiased fonts, superb localization and a better application framework in one package (all this can be gotten with QT, but not without downloading the source and patching it, which can be a pain to the new Linux user.) Hopefully this is a step toward unification of the two widgets, I'm sure the QT team can find a way to contribute to the GNOME project, and with one desktop having twice the amount of applications as before, it should really be ready to blow m$ away. Me, I still like TK the best ;-)
It's actually just a style that makes them both look more consistant. Unifying the API is the hardest job and I don't really want to see a unified API as it would be a bit of a mongrel. To me I think the best way forward is for either QT or KDE to die and the developers of the losing project to join the winning side.
Merging QT and KDE would be like merging Linux and one of the BSDs.
David Sansome... at least name the person who put in the effort to make this happen.
X11 is for wannabe Windows users
Replace KDE with GTK, sorry I have KDE on the brain :)
When I can choose a widget theme once, using a central theme selector, such as GNOME's, and it shows up in all versions of Qt, GTK, Gtk2, Tk, Mozilla, and other applications, then I'll take notice.
The proliferation of toolkits does such a disservice to the desktop, even moreso than the proliferation of desktop environments. Why are there so many?
It seems like most OSS developers must go through the same milestones of skill development: a new C++ string class, a new IRC client, a new window manager, a new toolkit, and a new update package manager. Stop rewriting the wheel and improve what's out there in meaningful new ways.
[
Love and bong hits, no cock.
"making GTK2 apps use QT" != "Unifying"
"making GTK2 apps use QT" == "How to migrate off GTK2"
(some of us like the speed, stability, etc. of gnome 2.4 - why would i want to quit using it?)
http://kered.org
I think the real problem with integrating KDE and Gnome isn't with the GUI, but is that with closed software you hold yourself accountable to different forces than with open software. While KDE isn't technically closed, it seems to me that they still hold themselves more financially accountable to the closed software model of doing business. Unlike Gnome, this diverts some of their talent, focus, and resources into gaining revenue from controlling people's copying behavior rather than thru more efficient services and support, or business models more accountable to the free (as in freedom) software paradigm.
IMHO, the closed method is a dead end, and KDE isn't doing themselves a long term favor by being so split brained. They'll never win on one end, because they can't compete againse Microsoft, and they never lead on the other because they cant keep their focus like gnome.
Like I said, I use Gnome, in part because I like the way it looks as opposed to QT. QT is hard on the eyes. I'd prefer to see something that made QT Apps look like GTK.
I'm sorry man but the QT widgets support EVERYTHING you just listed and every distro i have used in the last two years i think (redhat,mandrake,gentoo) support all of these functions out of the box/rpm/src - heck even the direct KDE sources supports these WITHOUT patches.
;)
o r-application-framework user
I'm not saying that QT is better etc... but this comment is complete flamebait and (even though you like 'TK the best') one has to be impartial...
well no this is slashdot so fsck it but u get my point.. dont take it personally.. im tired and cant sleep
GRRRR - annoyed QT widget-with-antialiased-fonts-localization-superi
the pathetic pervert that he is
If you make a unified trailer hitch that will hook any load to any automobile, then you'll be sure to find someone trying to pull a truckload of anvils with a VW Rabbit.
This is a minor bit of neat hackery, nothing earth-shaking though, and nowhere near a step to unified environments.... If you want to create that illusion, surely it would be better to make something that creates two sets of themes (gtk and qt... or even more toolkits) from one single source, think DocBook. Fortunately, I don't think the author of this software claimed that he was trying to unify anyway.
The only true way to unify the two DEs is to get both camps to agree on a common widget set.
I, like many other Gnome users, chose the Gnome DE because of it's professional appearance - something which I feel KDE doesn't even come close to. There is no way I'd want to replace my Gnome widgets with KDE widgets, and I'd bet the farm that KDE people would feel the same way about the reverse.
There are many half hearted, rush desktop unification jobs at the moment. Unfortunately the only way that we're ever going to see true unification is if everyone agrees to work on it simultaneously at a deeper level than just aesthetics.
How can you unify two groups of people that aren't even on the same page?
Sunday you're Thinking Different, Monday you're a huge tool, paying too much and waiting to think like everyone else.
GTK is LGPLd. That means it can be used by proprietary software (and in fact, sometimes is). If I use this theme engine does that mean I can no longer run proprietary software that uses GTK because I'd be linking it with GPLd code?
Perhaps the same concept should be applied but in reverse - a Qt theme engine to use GTK. There seems to be more experience going this way too, for instance XUL is already GTK themable and it works nicely.
I'd prefer to see something that made QT Apps look like GTK.
That's right. We've got a big group of people who use GTK and also the occasional QT program and another big group of people who use QT and also the occasional GTK program. And a bunch of other groups too.
So ideally it would be nice to have a system that let QT apps fit in GTK apps, as you say you'd like, and a system that lets GTK apps fit in with QT apps which is what was announced here. Well this means that we're part way there. Doesn't resolve every issue, but it's progress.
The real Ralph Yarro posts as Anonymous Coward. Anyone else is an impostor.
I want Mozilla and OpenOffice to use a widget set of my choice (no matter which one I choose - qt, gtk, gtk2 ....)
btw, it reminds me of wxWindows - a set of tools that allow you to compile your programs under different OSes using native widget sets of your choice. All widget sets are supported, but the widget set is chosen during compile time.
#
#\ @ ? Colonize Mars
#
I've tried using both Gnome and KDE, and I feel like Gnome isn't as advanced as KDE, despite what some of the other people on Slashdot may feel.
For one thing, I can change the individual colors of my widgets in my theme on the fly in KDE, something that a friend of mine who has used Gnome for over 4 years says is still not possible- the theme specifices one color set.
For another- most users never change some defaults, and the default Gnome icons are UGLY. Dark and uninspired.
Something to let me use excellent programs written for GTK, but with a more QT feel is nice. I'll have to check it out.
I already use ThinGeramik, a GTK style that looks to QT ThinKeramik for it's colors and such (also on kde-look.org).
This statement is solely an opinion. Kindly take it as such in all cases.
You don't understand the difference between a style engine and a default style.
QT is hard on the eyes.
No, QT is hard on your eyes. As shocking as it might be, different people have different artistic tastes. Personally I've never seen a GTK theme I didn't think was painful to look at, excluding those based on QT themes, but I'd never say they're hard on the eyes - just because it's obvious many people do like them. Having an opinion on matter which by its very nature is nonobjective does not make it fact.
Everything will be taken away from you.
This has nothing to do with the article.
shutup dude !!!
gtk is but ugly. not even close to kde's elegant look. not to mention that almost useless file dialog.
Is SodiPodi, the famous vector image editor. It is a GTK program that uses the KDE file and print dialogs.
Dopn't forget trolltech is a canopy company. Yarro sits on trolltech's BOD. Canopy and canopy companies have already sued msft, and ca. Scox, another canopy company is now suing IBM. All over IP violations. This is Canopy's real business.
Once you start mixing code, you open yourself up to lawsuits. Especially if you are mixing code with the lawuit-happy canopy. Canopy's entire existance is based on these kinds of lawsuits.
I can call the Linux API from closed source apps with no license fee.
/dev for that right.
I can not do the same thing with QT, it costs 1,200+
Jesus, you're a sensitive little bitch. Do you really think you need share this little bit of wisdom? Of course the opinion "QT is hard on the eyes" is just a fucking opnion of one person, you don't have to point that out sherlock. The opinion is self-evident, "my eyes" or "the eyes" doesn't make a whit of difference. It's assclowns like you that make people have to prepend everything they say with "i think" when it should be obvious that an opinion is being expressed. Get a grip.
Both of you should stop be so fanatical about your favorite toolkits, too.
Gnome is a rival to KDE, the popular collection of programs for Linux and freinds. Unfortunatley, ever since Gnome 2.4 (and the BETA 2.5) was released, I have found more and more Zealots who MUST advocate it at every possible moment. Here are some of their most common claims and what they REALLY MEAN.
:Gnome has a new web browser
Claim : Unlike KDE, Gnome is free
Translation : GPL is freerer than LGPL. LGPL allows corporations like Novell
and Sun to have propeitry forks and lock away their changes from the user. Now
that Novell has taken over Ximian you can expect Gnome to get put under
corpirate lock. With KDE you have the choice, you either PAY UP or pay with
your source code. Most companies agree, the majority of commerical software for Linux is written in Motif and Qt, and NOT GTK. Apart from Ximian's desktop, there is no major product using GTK.
Claim : Nautilus is much better than konqueror.
Wrong, if your using nautilus for anything more than a simple finder clone you
can forget it. No split screen, no ioslaves (gnome-vfs can't compare, sorry) and forget about being able to
have a decent file dialog, not to forget that it is as unstable as hell and is
STILL slow on >3 Ghz machines. The latest version decided to copy Windows 95, complete with a my computer icon on the desktop.
Claim : Gnome is easier to use than KDE
Yep, nothing like using gconf-editor to edit all except the most trivial of
settings. Want tear off menus? Want a useable file dialog? You won't find it
here. Gnome was a lot more usable back in the 1.4 series, before sun came along with their usabillity "study".
Claim : Gnome has eye candy
Yes, my pirated Win32 fonts with the patent infringing font renderer. Bit
stream vera sans looks like Tahoma put through a shreadder! Of course I still
reboot into windows to print using "Comic Sans MS. Gnome themes don't even let you change the colour scheme. Looking at sites like art.gnome.org you will see that the majority of themes are the same one in different colours!
Claim : Gnome is not ugly like KDE
I am too stupid to realise that the look of KDE can be changed by going to the Appearence and themes section in KDE, not to mention that KDE has more themes wrote for it. Popular themes such as Keramik, Liquid, dotNET, Plastik and Alloy were wrote for KDE first, but somebody wrote a crappy port of it on art.gnome.org, so Gnome must be good.
Claim
Yawb! Along with Galeon, mozilla, thunderbird, konqueror, atlantis, lynx,
netscape and w3m. Yes I need another browser! Not to mention that its got a
religiously offensive name and it dosen't allow bookmark folders. It also
crashes like a crazy! Apple chose khtml for a REASON! its stable and light! Epiphany is also a faliure, it has gone through 6 major bug fixes and none of the major distrobutions use it because they stick with decent browsers.
Claim : Gnome is more popular than KDE
Despite the fact that the only mainstream Gnome based distro has been EOL'd,
and all the newbie distros such as Mangadrake, Lindoze, $u$E, Lycoris,
Xandroze, Gentoo use kde default, bruce perens decided to make a gnome based distro and everybody hated it because KDE wasn't in it.
Klaim : You KDE guys must be sick of the K
Our G's and monkeys are SO MUCH better, gedit, glib, gconf, bobono, ghex,
gless, same-gnome, gstreamer.
Claim : Gnome has multimedia framework
Its a kludge of esd combined with broken xine libraries. No wonder it crashes
all the time and dosen't work on 95% of video files. But we have Rhythmbox, a cheesy Itune clone using it, so it rules!
Zealot : My Gnome work station.....
My 2Ghz G5 box my mum bought for me from PC world, that is made of
made to break components and running Debian Gnu/Linux, but it has a GEFORCE RADEON 9000 card and a CUTE one button mouse, so it
Many times when there is a debate about Gnome vs KDE , the argument of the API popup often like comments like this one:
>"A GNOME spreadsheet you want Miguel? Don't worry. The way things are
>looking, I can hack one out in a few days. We will borrow from X, Y, and Z
>projects since they have most of the functionality we need. It will be a
>matter of fitting them all together."
I find it always funny that KDE supporters always list re-use of existing libraries as a big minus point of Gnome, as if it is a bad thing to re-use and adopt none-Gnome supporting libraries,
It is my vision that this is one of the great strengths of Gnome. In Gnome the supporting libraries are almost never Gnome dependent they often use already existing libraries or help to modify them too their needs, without Gnome-ifying them. When they create a new one for use in Gnome they tend too make it as generic as possible, With this sort of philosophy you create functionality that is easily adopted by other projects or was already in use or planned to get used. Things like Cairo (X-server), Fontconfig, ATK, etc. This is exactly why this functionality is popping up everywhere in open-source land. Which makes the KDE supporters scream that Gnome is taking everything over. This isn't true, but Gnome by using the above philosophy, doesn't alienate itself from other Linux/*nix projects in stark contrast too KDE. Gnome is not only about building a great desktop, it is about building modular desktop technology that can be used and reused by more projects then Gnome only, which make Gnome more cooperative too other projects then KDE. Look at the way KDE looked at Open-Office, They trashed everything about it and Koffice (or anything which was KDE-ified was much better), only now, after Gnome (Ximian) has showed the way by starting to make Open-Office better merge able into other widget sets they realize what opportunities Open-Office has too offer, but don't expect any thank you for the groundwork Ximian has done, making the integration as generic as possible so that a qt variant is also possible. No they will scream and whine till the end that Gnome is about adopting and Gnome-ifying, while little somebody else can use is coming from the KDE community (it is all of the KDE or die, look at Red-hat and userLinux how KDE treads other visions).
The question is: Do you want a *nux/Linux community desktop which takes from (Fontconfig, Cairo, librsvg, etc) and gives too (GTK+, Freedesktop.org, Gstreamer, ATK, Pango, etc) other projects (Xfree86, XFCE4, etc) without making everything it touches Gnome or do we want the none-*nix/Linux philosophy of one big API in the form of a win32 clone which alienates everything none C++/QT/KDE bolted on *nux/Linux (KDE). Which is more *nix/Linux one great API for everything or take the tools and merge it too what you need?
I find the KDE community extremely vicious against everything not KDE, The Borg like mentality of adapting everything into the KDE frame-work without keeping it generic alienates it from everything none C++/QT/KDE, but especially the whining they do that libraries that Gnome uses are also used in other important projects is something that keeps amazing me. It is the KDE community that uses embrace and KDE-ify it as there mantra! They turning the reality upside down.
While I agree that GTK generally looks better, this theme is intended for KDE users who want GNOME apps to integrate well into their desktop. GNOME users such as yourself are not the targeted audience here.
It's hard to be religious when certain people are never incinerated by bolts of lightning.
One of the things I like the most about GTK is that it doesn't look like QT. Is change always progress?
"With sufficient thrust, pigs fly just fine. However, this is not necessarily a good idea...."
RFC 1925
There's plusses and minuses to this. On one hand, unified theming is a win, no question. But doing so by adding yet another layer of interface could perpetuate the core differences rather than helping unify them. The world is rife with short-term hacks that are still running; it's one of the big contributors to bloatware.
In addition, it's a one-way change. When the author completes his work, Gnome apps can follow KDE themes, but not vice-versa. That's good for KDE, but not particularly good for Gnome.
It also leads to some subtle UI traps. When I run a Gnome app under KDE, it stands out. In one sense that's bad, as it can be visually jarring. In another sense that's good, as I'm visually alerted to expect some different UI rules. If one can't determine which ruleset to follow by a casual glance at the app, it's going to lead to user confusion.
It's also going to dilute the UI guidelines to both KDE and Gnome. Application writers tend to model their UIs on other apps, not from reading the UI guidelines. An app developer running Gnome apps under KDE look (but not feel!) will assume that either the KDE rules are loose or that he should be developing Gnomish features.
I'm not saying the author shouldn't do this; it's a noble goal and (from the responses on the author's posting) pretty decent code for an alpha/beta release. But we should hope for and work towards better long-term theme engines.
Sure, I'd like to trade in my Bluecurve theme for typical KDE garishness.
I respect his choice for whatever software he wants, thats for sure.
But he doesn't offer any real nor insightful reason for why he chooses GNOME over KDE.
You can take his post, and replace GNOME with KDE and KDE with GNOME. The post still says the same thing. See how pointless his post is ?
Sunny Dubey
rm -rf /opt/gnome
apt-get install kde
No more gnome for me!
KDE has a better file manager?!?! Great, maybe one day if I see the need for one it will matter.
I really don't understand most Slashdot readers. In every news about KDE or Gnome people start fighting on what is better, Qt or Gtk, C or C++, Gnome or KDE, with theory on how SuSE buyout will end KDE, why Qt isn't free, that Linus uses KDE, Trolltech is owned by SCO, etc. People who keeps posting things like this must be new to free software, or just don't understand it at all. The goal is *NOT* to kill Microsoft Windows and every OS and have just GNU/Linux with one desktop installed on all computers. The goal is freedom, is choice. I don't want to be like 10 years ago, when I thought DOS/Windows were the only operationg system available. Also, most free software projects are coded for fun. I can assure you, even if the whole world start using Gnome and KDE is just used by it's own developers, KDE will keep existing! There's no desktop war, so there is not going to be a winner. So, understand the community, and stop flames. We should be discussing how great it is that someone is trying to make GTK apps integrate better to the KDE environment, and hoping a GTK coder will start doing the same. I use KDE and I get really happy when I see a new feature on Gnome, cause probably KDE will have it too soon, Gnome users should feel the same way when KDE gets a new feature. And, while we're still talking about this, please, when a project is posted here, let's not comment on how there was already a project with the same goal and how duplicate effort is lame: if someone think it'll be fun to code another mp3 player, let him do it, *For coders, projects are mostly about fun!*
Since when is the GPL propretiary?
cue Microsoft provocateurs, *BSD License zealots, and SCO apologists...
I can smell the flamage of the battle to come from here.
You are right. The anti-qt FUD is just that, FUD, and no less so for being propogated by zealots that were once representative of a more mainstream ("gentler, kinder, more corporate, less political") version of free software renamed open source (and who have replaced the politics of freedom with the politics of gratis beer, of subjective preferences vis-a-vis Gnome v. KDE, gtk v. qt, and Open Source non-GPL with GPL where it make sense to unerscore their position on gtk v. qt, while maintaining a hypocritically and diametrically opposed opinion on the very same license for the other 90% of the software that makes up the system they are trying to promote).
QT is GPLed, just as is the Linux kernel, gcc, and most of GNU. Any statement claiming qt is closed or proprietary is FUD and likely a troll (whether it is a Microsoft financed troll or not is an interesting debate for another time), as it is equivelent to saying that the GPL is closed or propriatery, a nonsensical stance taken by *BSD Licensing zealots, Microsofties, and others who would prefer to take the hard work of others and not give back in return, and resent not being allowed to do so.
I have no preference for qt vs. gtk, and I find both the GPL and BSD-style licenses to be useful in the appropriate place, but as you point out, only an idiot (syn. "troll"), a FUD-mongering zealot with an axe to grind, or an agent provocatuer from the anti-free software crowd (Microsoft et al) would seriously argue that a GPLed library is "closed."
The Future of Human Evolution: Autonomy
I respect his choice for whatever comments he wants, thats for sure.
But he doesn't offer any real nor insightful reason for why he chooses the grandparent post over his own for moderation.
You can take his post, and replace GNOME with KDE and KDE with GNOME. The post still says the same thing. See how pointless his post is ?
When MS crashes, big business will pour tons of money into the Linux Desktop PC. They are going to pick only one desktop toolkit because it gives a better ROI than splitting the money to 2 or more projects. It is likely that the other desktops will survive for quite some time (reference people still using Amigas), but the others will fall behind unless they use software like the project in this article to borrow from the leader.
if you insist on unification, you destroy most of the features of Open Source / Free Software development that are meant to be its strengths.
I know there is still strong development of the BSDs, but most of the corporate money for OSes is going into Linux. Is it "destroying the features of OSS/FS?" (Be careful how you answer. This is Slashdot and we do not tolerate criticism of the Linux development model.) The BSDs will survive just like the alternate desktops, but eventually the leader will far surpass them both in features and marketshare.
The key to the desktops is the toolkits. Eventually one will be chosen. We (all techies) will have little input into which is chosen. The first large software company that makes the choice and puts the money into one toolkit will make the choice for the entire world. It will probably be IBM, although Novell or SUN could take the role; Redhat has already given up. The final choice may be decided by one business manager that has been using Desktop Linux for some time and does not want to change.
Maybe Bruce Perens can influence the decision. As much as he likes KDE, he thinks Gnome is the better choice for a universal desktop (reference Slashdot article from last month.)
Yes, what you will get is a lot of people who are dissatisfied. Nobody says you cannot keep using Slackware 3 at home. But in a few years, all computer software jobs will require knowledge of the primary Linux desktop. Plan accordingly.
I spend my life entertaining my brain.
I have heard for years (How many? Almost ten? Might be wrong) that KDE was going to come to a "dead end" because of (inster one: non-GPL, strict-GPL-non-commercial, closed development, pact with the devil, etc.), and that Gnome would eventually dominate due to its keeping with the "true spirit" of the FOSS movement.
I'm still waiting.
So will the GIMP Tool Kit now have a look and feel similar to QuikTime (Light blue bar above everything) or Quiktrip (red and yellow) or Quentin Tarintino? (Bring out the GIMP...)
Support the FairTax
He said "Qt is hard on the eyes" not "I think Qt is hard on the eyes." It therefore wasn't expressed as an opinion. Elementary my dear Watson.
That's quite interesting - I was just uploading version 0.2, when I suddenly noticed kde-look.org slowing down... now I know why :)
Anyway, 0.2 should fix some problems people have been having.
-- Wibble
>> KDE will never be the dominant desktop.
;-)
/. moderators with an agenda only hurt the forum, not me.)
>Care to substantiate that is not _currently_ the dominant desktop?
That was not my intent, but...
Substantiate? That's impossible to do for either desktop. There is no registration or accounting mechanism.
We can use circumstantial evidence:
*) most users run the distro's default desktop.
*) Red Hat is not just the leading distro, but also the the majority distro.
That's not perfect science, but I'll wager on it anyways. I don't give much weight to how loud any particular demographic/group is.. the minority factions in life are always trying to compensate for size.
(NOTE: Light sarcasm is meant to be humorous. By no means would I intend disrespect to the general KDE community, and especially not to hardworking, generous developers.
I've toyed with QT designer, it's a good bit of software.
I'd sooner see QT and KDE win over Gnome and GTK. When I first started running Linux I used Gnome and GMC was ok but Nautilus crashed. I left Linux for a while and next time I installed it I used KDE, I found it much nicer and I've stuck with Linux and KDE ever since.
no thank you.
The fact that big business will start pushing money into toolkits doesn't mean that control will be lost.
Control would not (and cannot) be lost, but big business can push the priorities that are important to them.
ROI does not apply to big businesses as a group. IBM's investment can't be recouped by Sun, after all, so there's no reason to think that they shouldn't back different horses.
With OSS, IBM's investment can be recouped by Sun, IF SUN CHOOSES THE SAME PROJECT. If IBM puts a few million into Gnome, then Sun only benefits if they also choose Gnome. If Sun chooses KDE, they probably have to repeat the work that IBM has done. But Sun could choose Gnome, receive the benefits of IBM's work, and then continue with what is important to Sun. That is why I feel the first influential company to choose will have a great impact on all succeeding choices.
more importantly, control in an OS/FS project is going to tend to stick with the fork that produces the best code. Doesn't your reasoning mean that you think that big business, with its big bucks to spend, will be churning out more and better code, than OS coders can, and hasn't that long since been shown to be untrue?
The community will still decide the best code. But wouldn't the ability to spend a few million tend to increase the possibility of writing some decent code?
Why are you distinguishing between "big business" and "OS coders"? The whole SCO/IBM lawsuit is because some IBMers are OS coders. If a company is willing to pay (or hire) programmers to work on OSS, then those coders must become part of the OSS community to be effective. That their priorities are set by the company should not affect their coding abilities.
(Well, there is the part about scratching your own itch, but a paycheck is rather good incentive to scratch someone else's itch. And you would still want to write great code for the reputation/karma.)
Try not to disparage this too much. I am certain that many Slashdotters have been dreaming of the day when big business decides that OSS programming is important, and have their OSS resumes ready.
I spend my life entertaining my brain.
Mirror of the pertinent files are up here.
What I want to know is what do we need GTK for? The only reason Gnome exists is because of giant egos. KDE has a development lead of one year on Gnome and it shows. What I never understood was why has Gnome gotten consistently worse with every major release. Gnome was an good desktop environment pre version 2.0. But every time they make a release things get worse and worse and more people jump ship to KDE and Win XP. Not even Redhat uses Gnome anymore (they have Bluecurve). Can't the Gnome team take a hint? Gnome is a textbook example of how not to run a free software project: created for all the wrong reasons and poorly managed.
You're an asshat (I think).
XML causes global warming.
I surely do, after reading a bunch of comments like your's. Pro-{KDE,Gnome} ppl that is, arguing about "how their oppinions/tastes are better/grander then the oppositions, what-else & what-not...".
In a quick sentense; Neither matter more or less then the other. Because einstein's "relativity theory" extends to other tings then just physics; and arguing which "choice" is better or worse or equal than the other, simply doesn't exist in the mind of a true "relativity nutcase" as me ;-) - they just exist *end of story*.
So if we stop biquering, for awhile, and step back a few step; and try to analyze things in a pacifistic way - maybe we'll get the picture.
*IMHO* - the 'picture' I see, from all of this, is actually, "more choices, then less" & "more satisfaction".
Howcome? *you (might) ask?* - let me put it in a breif anology:
KDE equals eg. 'Orange juce', while Gnome equals eg. 'Graphefrute juce'. There are three sort of ppl in this world,
I, happen to be one of the 'Case A)' ppl, *Am utterly, horrified over the taste of Graphfrute*, "just one of those things in life I can't do", is drink it. And who am I to bash on 'Graphfrute juce'-lovers out there, and who are they to bash me? And by now one might be content to say everyone should be more like 'Case C', and while I might understand your thought for awhile; things in life just are, so anyhow you try to 'bend it', in some or other way, all of the 'Cases' will forever exist.
!Thus, It's not a matter of 'which case one is', but more in the lines of "how can we get along, with each other, the way we are, with our tastes & dislikes?"
So for me this "GTK 2 QT Engine" is something that'll convert that horrid 'Graphfrute juce' I so dislike into something I love, 'Orange Juce'. *now, that's a pice of work, really - from my POV*
And while the quick thought out there, may start to think 'I found a flaw in his thinking' - That this, this engine, will extinct/exterminte Gnome / 'Case B' / 'Grapefrute juce'. And such a scenari is thus not my intention, thinking nor would I as a KDE lover go along with such a scheme - mearly because 'What if the tables would be the other way around?'; I know I wouldn't like extingtion to stumble upon my choices. So, what's missing, at present (to my knowledge), is a "QT 2 GTK Engine" that'll convert horrid 'Orange juce' into sweat 'Graphfrute juce' for those who drink it.
So, a "GTK 2 QT" & "QT 2 GTK" Engine - would be something both KDE & Gnome should invest in, to give us, the ppl, even "more choices, then less" & "more satisfaction", untop of those that they allready bless us with - After all, both are just a UserInterface, with a 'G' infront of them; what matters are the 'function(s)' unerneeth the 'hood we really don't see, unless we take a look underneeth' *emphasis on "Give us functions, and let us decide the UI of the G; after all isn't function(s) what we strive to use computers for?"*
brief, as brief as such a thing could be explained in...
//danalien
I don't claim I know more than I know, and if you know you know more than I know, then by all means, let me know.
What the fuck kind of moron moderators are scanning this thread today? This is the second horrible use of the redundant moderation I've seen in this article and this is one of the first damn posts! How can someone be redundant for asking a question that no one else has asked yet? I mean, it's not like he deserves a +5 insightful or anything, but redundant?! Christ.
Its interesting how people ar deriding this sort of "look-based" unification. The truth is that "look-based" unification has worked just fine for Microsoft. I use a mostly KDE desktop, and only once in a while do I have to start a GTK app. The same thing is probably true for GNOME people --- they only have to start a non-GNOME app on occasion. If you use MS Office, you're automatically using at least two toolkits on a Windows desktop. Windows has many toolkits that major apps use on a regular basis. Its nearly impossible to run a normal Windows desktop without regularly encountering at least a few.
Now, why do Windows users think their desktop is so unified, when in practice, *NIX desktops are really more unified? Because Windows toolkits look kinda the same! Windows's "unified look and feel" is based entirely on unification of themes, rather than on any real technical unification.
A deep unwavering belief is a sure sign you're missing something...
I use the "classic" skin for Windows Media Player, which unobtrusively looks like any other stereotypical Windows app. A "classic" skin exists for Winamp as well, leaving the brushed-metal QuickTime Player as the only oddball.
copy&paste, drag&drop is. what ims saying is that in windows you have one set of rules for the clipboard, so that any program doing a copy&paste job have the same calls to make.
i dont care if my xchat looks like my conqueror as long as i can copy a url from one and paste it in the other:)
oh and there are a lot of people that messes around with the windows looks, litestep or plan 9 anyone? hell you can even run blackbox as your windows desktop:)
comment first, facts later. http://chem.tufts.edu/AnswersInScience/RelativityofWrong.htm
Take an English class.
This is the kind of thing we're really missing. Most people don't give a damn about what widgets a program uses, and a lot of people want their programs to all look the same. The common answer to this seems to be "Well let's drop (GTK|QT) and then we'll have unification." This is a very Bush attitude, right up there with "If everyone does what I say then we have cooporation."
True unification will come when it doesn't matter to the user which widget set something is written in. This will involve a special theme setting for each kind of widget out there which basically says "Generate yourself a theme from tis here meta-information."
We need a neutral theme format. One which describes looks in a way which is not specific to any theming system. Then, each widget set can (when told to) copy this information into a format it can use directly, and use that for its theme.
With modifications to allow such an operation to each of the themeable widgets sets out there, porgrams could get a reasonably similar look with no further rewriting, and no need to "compromise" on a unified widget set. Maybe the look achieved would not be exact, but exact is not necessary.
If you consider Windows, many apps don't look exactly the same. They use slightly newer or slightly older widgets, from perhaps different incarnations of the Windows API. But since they all look to roughly the same place for information on (for example) what color to be, the user largely does not notice.
I want my Cowboyneal
Go ahead and put an output statement in your copy constructor, and see how many times your object is copied.
It would take a PhD in C++ to effectively heavily rely upon using dynamic memory in any large-scale C++ project.
dynamic memory in C=slicker code
dynamic memory in C++=disaster
Solution: STL?
Are we talking about same code with a different compiler or the same job done with different languages? For the former, you make sense. For the latter, you don't.
Who mediates your information?
contrary to what most /.ers think, you can dynamically link a program to a gpl-ed library. You should make sure however that it is not vitally important to it, the program should be able to run without it.
See for instance the fact that you can run propriety programs on a linux system. It may make (gpl-ed) kernel calls, but is not tainted by the gpl, because it is assumed the program can be run in other unices too.
It can even be argued that the desktop environment is part of the system just like the kernel, and that propriety programs can hook directly into those. The GPL allows that interpretation.
This space is intentionally staring blankly at you
Yet Another QT Hacker will soon write a similar style for QT to use GTK to draw widgets, the result will be:
GTK: Please QT, draws me a button
QT : Please GTK, draws me a button
GTK: Please QT, draws me a button
QT : Please GTK, draws me a button
GTK: Please QT, draws me a button...
Have to wait before having anything drawn on the screen...
What are you talking about? I don't know about you, but i pass my objects by reference most of the time. Most of my classes don't even use copy constructors.
Who needs the English class? You can't infer an opinion from someone's statement then I would say you need an English class. Language isn't just about literal statements. English isn't C++. There's inference throughout the language and yes I'M the on e who THINKS QT is hard on the eyes. And *I* *THINK* anyone who thinks it isn't is either blind or lying, but that is an opinion, whether or not I preface it with "I think". Sheesh.
It is even better than you think. Qt is dual licenced, you may use it with the GPL or QPL licences, or you can pay a wad of cash to trolltech and do what you cannot do with the GPL/QPL.
In other words, Qt gives you more freedom (of choice) than gtk does.
This space is intentionally staring blankly at you
I agree. I wasn't lamenting my plight as a Gnome user. Rather taking the opportunity to joke that making a GTK app look like a QT app didn't seem like a good idea to me. Just a personal opinion.
There are some aspects of a toolkit that cannot be changed by a theme (look at bluecurve-gtk1 vs. bluecurve-gtk2 vs. bluecurve-qt, they all look slightly different). It's quite valid to think that one toolkit inherently looks better, regardless of the actual theme used.
It's hard to be religious when certain people are never incinerated by bolts of lightning.
I agree that a universally applied "one size fits all" 'strategy', would take away a core strenght/concept from Linux. But I don't think your assertions about choice really invalidates the grandparent's belief that 'choice' in the (G)UI isn't always a good thing.
Perhaps the use of (the keyword) "choice" there is misleading, but I think you're mixing up choice, constraints, and freedom, in you post.
I view choice (in the "core-concept-of-Linux" sense), as the freedom to choose, based on open source and licenses that give you powerful rights, to use, share, modify, build on, etc. On the other hand, constraints (to disallow certain things in favor of other benefits) are vital. Your own claim that interop between Gnome and KDE is a good thing, shows that you too understand this.
As an example, Roy T. Fielding's (W3C, Apache foundation, et al.) dissertation Architectural Styles and the Design of Network-based Software Architectures (describing the architecture of WWW) is illustrative. Fielding coined the term Null style: Obviously, the Null style gives you unlimited choice (absolute freedom). It's also practically useless as you can't build anything without constraints.
Another example: OOP wouldn't be very useful (or, indeed, object-oriented) if one chose to disregard the principles of abstraction, encapsulation, inheritence, polymorphism, etc.
I think we all can agree that solutions (such as this GTK-QT Theme Engine) that aim to bridge various gaps throughout the "Unix universe" are good things.
Sometimes these efforts might constrain our choices, but they don't necessarily limit our freedom.
668.5
So go change your Qt theme if you don't like whatever default it uses on your system. If the default is Keramik, then change it to Highcolor, Plastic or Qinx. Duh!
Don't blame me, I didn't vote for either of them!
I find the KDE open/save dialogs vastly more useful than the GNOME ones, for example.
There are some people who feel the other way.
What is needed is a way to make it so that I always get KDE open/save dialogs, even when using GNOME apps, and so that the GNOME dialog fans always get GNOME dialogs, even when using KDE apps.
Choice is great, but this kind of thing should be the user's choice, and the current system makes it the programmer's choice, indirectly by which toolkit the programmer uses or which desktop environment the programmer writes for.
I switched from BSD to Linux because the Linux community is large enough, and evangelical enough, that every single question I have ever posted to a Linux newsgroup (or followup in private email) has offered at least a sympathetic response, and 75% of the time at least some useful info, and often a pointer to the complete solution. And never an obnoxious flame. That attitude, in turn, has stroked me enough to post my own solutions in public, search-indexed websites. The BSD community is small and crabby, so despite my perception of the BSD tech superiority, that marginal advantage is drowned in BSD's limited potential for actual problemsolving. Linux is an artifact of a community of collaborators, inherently more powerful and resilient than BSD, merely an artifact without the community. It's worth noting that a large community of mutually supportive developers is what got Microsoft where they are today, and where the actual platform competition is. And why Linux is gaining so quickly on MS, Apple, Unix, and any others.
--
make install -not war
This is one-way unification: turns GNOME apps into KDE apps. I prefer the GNOME style, and want to use KDE apps. I'm looking for the reverse. Or even better, true unification, in a middle layer, with KDE/GNOME style selectable on top. A 3tier architecture version of KDE-look would be a good approach: KDE & GNOME API mapping in the "data" layer, unified widget functions in the "business" layer, and selectable KDE/GNOME syles in the "presentation" layer. Any GNOME hackers want to seed the KDE-look source into a new project, and flip the script?
--
make install -not war
With the recent non-X11 KDE port to Mac OS-X (cocoa based) does this hack permit Gnome apps to be compiled to run on the MAC too?
When the non-X11 KDE port to windows gets running will this permit both KDE and Gnome apps to run on windows?
If one or both of these are true then computing will get very interesting....
Redhat is not the majority distro worldwide, only in the USA. Worldwide, Mandrake is the majority distro (see distrowatch (the web site) and other sources), and defaults to KDE. Unlike Redhat and KDE, Mandrake don't spitefully break GNOME, though. A lot of american user's hatred of KDE stems from the way Redhat cripples their KDE rpms (the monstrosity of "bluecurve" is only the latest iteration of this), probably because redhat has a degree of control over GNOME.
I just fired up MediaPlayer, and it looks like a Windows program to me...
File View Play Tools Help
huh?
This issue is a bit more complicated than you think.
So why do Office and Visual Studio.NET look different to other Windows applications?
Karma: It's all a bunch of tree-huggin' hippy crap!
That's not the same. See in theory with this Gtk->Qt theme 'wrapper', when you change the Qt theme, all Qt and Gtk+ applications will automatically repaint with the new theme. Now they just have to get it up to v1.0 and I can toss out Geramik. :-)
Karma: It's all a bunch of tree-huggin' hippy crap!
It would also be useful to have common 'drawing' routines for things like text areas. I have quoted the word 'drawing' because the feel of the widgets should also be uniform. I should be able to modify the context menus so that every application's right-click menu will use the same list of actions.
Unified look is a start. Unifeed feel is next. Surely Mac OSX can't be the only one who gets this right.
Karma: It's all a bunch of tree-huggin' hippy crap!
See I don't understand that. The Qt theme Keramik (which happens to be the KDE default at the moment) looks great, and is easy on the eyes. Meanwhile, Gtk's theme takes a whole lot of tweaking so it doesn't look so damn fuzzy.
Gtk's default theme wasn't just hard on the eyes, it actually caused me eye strain to the point where it was causing headaches. Luckily I learned about 'switch' and 'switch2', and changing the fonts and so forth eventually I got it to look just as sharp as Qt.
If users of GNOME would realise there is an equivalent tool for Qt called "qt-config", the bitching about Qt being "hard on the eyes" may go away overnight.
Karma: It's all a bunch of tree-huggin' hippy crap!
> With the recent non-X11 KDE port to Mac OS-X (cocoa based) does this hack permit Gnome apps to be compiled to run on the MAC too?
Theoretically, but there is a great deal more than that for gtk to truly integrate with OSX (menubar, dock, bundle support, etc..) and there are easier ways (like using the Appearance Manager directly).
I'd like to see a similar thing for QT that uses the current GTK theme, but what happens when you turn on both of these!?!
"Naysay as much as you want regarding Microsoft, but the reason why they have the market share is because of the unification present"
So there was no need for Microsoft's "dirty tricks" then?
That sounds like the best thing ever!
Karma: It's all a bunch of tree-huggin' hippy crap!
No, this development is relevant to the visual styles of gtk applications. It has nothing to do with native gtk on OSX.
Yet Another QT Hacker will soon write a similar style for QT to use GTK to draw widgets, the result will be:
GTK: Please QT, draws me a button
QT : Please GTK, draws me a button
GTK: Please QT, draws me a button
QT : Please GTK, draws me a button
GTK: Please QT, draws me a button...
I've read this a couple of times and it still isn't funny.
why run from Vincenzo?
Ok, I understand better now and would like to retract the elitist (correctly spelled this time) accusation, my apologies.
Your elaborations on willful ignorance, the problems with lack of incentives to learn, meritocracy, etc., are educational, and I agree. Also, the clarification/definition of "desktop" in this context makes sense. And I believe it points towards some form of consensual view.
I too, think it would be a bad idea, a very 'costly' and ultimately destructive evolution, if developers and users were constrained (forced) into conforming to one-and-only-one 'desktop'.
As a *nix 'semi-beginner', my interests lie in the empowering "development and programming aspects" of the OS/toolkits, community, and culture as a whole. In this context, I see many possibilities with tools that try to bridge incompabilities; tools that 'translate' between different cultural and/or technical views/solutions - or at least try to. (And I think this GTK-QT Theme Engine is an attempt in this general direction.)
Sometimes they create a new, unified and more powerful "Way" - deep down in the kernel, or high up in a GUI. More often, they probably (re)introduce weaknesses an original model or fork tried to overcome. Evolution hopefully continues to do its stuff.
The ability to put "everything" in a pipe is ingenious, for example. It's intriguing when people try to achieve something related at other levels of the system ecology.
668.5
Multiple layers of indirection always offer some performace hit. It's a tradeoff against features - if all you need is a paperweight, an unplugged computer is instantaneous ;). Proper design into tiers can minimize performace hits, eg. keeping all loops inside the same layer, rather than looping across multiple pointer dereferences. And the elimination of redundancy makes the call graphs more readable, therefore optimizable - by both programmer and compiler. That GTK and Qt are written in C (not C++ or other OO lang) indicates lots of cleanable spaghetti code, especially to my experienced GTK programming eye. Factoring code into layers of encapsulated objects has overhead, but real programs leverage that overhead into greater efficiency in the complex code of eg. GUIs. I remember the performance tweaks we got at Apple when we switched from the Pascal toolkit to native C++, (System7). And Apple has never looked back. Linux GUIs can learn a lot more than just look & feel from the Mac desktop.
The extra performance cost is much smaller than the benefit. KDE-look, by mapping GTK app calls to the Qt API, unifies the GUI layer into something describable as an inverted Y:
KDE-app GNOME-app
| |
+--KDE-look--+
|
Qt-libraries
Adding a "GNOME-look" equivalent would merely add another library set to the bottom layer:
KDE-app GNOME-app
| |
+--K/G-look--+
| |
Qt-libs GNOME-libs
With the extra logic in the "K/G-look" logic layer. The call graphs would not be any longer or more complex, in terms of extra layers. The extra logic would be precomputed at app startup, to switch given apps to their preferential toolkit libraries, and amount to fast switch/case statements for routing to the preferred library.
The better organization of the code, and the actual low cost of the runtime switching, offer a good benefit/cost ratio, at runtime. The state of the old project (called?) code, and the complexity of integrating it, is the benefit/cost ratio for coding it. On that, I'm talking out of my hat. Any ideas?
--
make install -not war
I track Debian unstable and run a GNOME desktop environment. No such problems.
Once. Read that: ONCE in the last year have I had a dist-upgrade result in such an incompatibility. It was with 1 app and it was fixed in less than a day.
It wasn't a library related problem. I could have fixed it myself by modifying the package, but it wasn't an important application.
Is it possible to go the other way, producing a Qt theme that draws using GTK?
Cut that out, or I will ship you to Norilsk in a box.
Theoretically, davidsandsome wouldn't need to do this. He can take a Gtk or Qt theme and produce a modified theme (i.e., softening edges). Such modified theme would work better in both DEs than a conversion of the original theme.
There isn't much of a performance loss at all.
- The GTK drawing logic in this GTK engine is a simple blit, which is *extremely* fast. Thus, the performance matches the performance of the Qt Style Plugin.
- Other platforms work like this- see WindowsXP's uxtheme.dll and MacOS 8.x/9.x/OSX's Appearance Manager.
- With both Qt and GTK, you can get function stacks about 30 function calls (I've seen this quite a few times while gdb'ing some apps)
One day I rewrote a gtk/glade-based application in C# (just to try out mono). Source code size went from 20kB in C to 18kB in C#. The size of the unwritten C++ version will probably lie somewhere in between (I don't use many things that can be simplified by using STL, while in C# a lot of "free"/"delete"s can be omitted). The problem in your logic is that, although "gtk_tree_path_append(path, 1)" is significantly longer than "path->append(1)", such library calls is usually only a not-so-big part of the UI code, which is in turn a not-so-big part of the whole program. Considering that most of the time is spent on designing and debugging, rather than typing, it is hard to see such simplification will help productivity much. A good library (such as Glib/STL/standard library of java and c#) or certain other language features (mostly just garbage collection) helps much more.
Make copy constructors with output statements and you'll see. Especially if you use the STL. If you don't, you probably reimplement it on your own, which is a pretty bad way to be a generic programmer.
I didn't invent the idea, my grad school Advanced Programming Concepts II professor suggested it. If you disagree with my statements, make your argument to him. You'll be doing a service to all, I suppose.
http://www.monm [anti-email-harvesters] outh.edu/~rclayton
Who mediates your information?
I said dynamic memory. In C++ with classes that means the "rule of three:" if you have any one, you probably need all three of:
copy constructors
assignment operators
destructor
If you're never writing copy constructors, and you're passing by reference, you're not using dynamic memory. And the STL uses it for you, you're not using it there.
Put your objects in a vector, and put a verbose copy constructor in it, and see what happens throughout your program.
Who mediates your information?
I use dynamic memory in C++ all the time and it's minimally just as easy as C and usually better because you can leverage other features of C++ (e.g. RAII). I write C++ professionally, but no, I don't have a PhD in C++
As far as you last statement, I'm talking minimally about the same code, people that dislike C++ often forget that C++ encompasses C; i.e. C programming styles are part of the toolbox of C++. However, beyond that, C++ provides additional tools and paradigms that give the advantages I mentioned.
Please, concrete examples where dynamic memory management in C++ is a disaster? Afterall, you can use (and I sometimes do) use malloc/realloc/free in C++.
XML causes global warming.
If the objects are small, then the copying done by the vector will be likely inconsequential. If the objects are larger, but the vector doesn't get rearranged very often (e.g. things are only added to it), you'll still do ok because of the growing behaviour of vectors (constant amortized time). If the objects are large, and you're worried about this, you can use a vector to pointers to the object - just like you would maintain an array of things in C but with lots more features. Then the copy constructor won't be invoked for any of the vector operations. Finally, a called copy constructor represent the same amount of work you'd have to do with C initializations and memcpy style struct copying. The copy constructor provides a convenient way to abstract this work to improve the life of the programmer. In C++, the copy constructor can often be inlined, and is often largely optimized away, though your instrumentation will likely be the most expensive part of the code, after the optimization.
XML causes global warming.
I bet you were the anonymous coward that submitted the story, and then you posted this comment to try to fool us... well... you certainly didn't fool me! :) just kidding
nice job.
If I wasn't a part of this thread, I'd mod you up. Thanks for an intelligent response as opposed to the standard anonymous flaming without any technical base we've grown so accostomed to on /.
Who mediates your information?
Well hell, my KDE apps go "File View ... Help" too. That doesn't make them look like Windows apps. My point is that WMP, by default anyway, uses completely different seperators, buttons, scrollbars, sliders, etc, than a normal Windows app. It doesn't even have a menu until you move your mouse towards where the menu should be, and one appears. That doesn't exactly strike me as usable.
A deep unwavering belief is a sure sign you're missing something...
HA HA you got devoiced. Wish we could do that to *all* the GNOME fanatics here.
;-)
IF KDE has less market share than GNOME it's because Redhat is biased against European programmers and made KDE the defualt desktop.
Assuming of course you believe Red Hat is the number one distro, and that users are too stupid to change their default desktop settinsg. That's what GNOEMN fanatics do.. they feel users are stupid and cannot make choices on their own,. Since you cannot measure free Linux installations, it's quite possible there are more SuSE installs than Redhat.
So quiet u troll!