iDevGames Forums
Cross-platform gui? - Printable Version

+- iDevGames Forums (http://www.idevgames.com/forums)
+-- Forum: Development Zone (/forum-3.html)
+--- Forum: Graphics & Audio Programming (/forum-9.html)
+--- Thread: Cross-platform gui? (/thread-3199.html)



Cross-platform gui? - Duane - Jul 4, 2007 08:18 AM

I need to make a cross-platform gui with an OpenGL widget (the gui part is important, not the GL part); what do y'all recommend?
As I see it, there's Qt and Tk; any other major ones?


Cross-platform gui? - Skorche - Jul 4, 2007 11:03 AM

wxWidgets seems to be nice. I think that comes installed on newer versions of OSX.


Cross-platform gui? - igame3d - Jul 4, 2007 01:57 PM

We're currently using FLTK.

We used Revolution for a few years too.


Cross-platform gui? - OneSadCookie - Jul 4, 2007 02:00 PM

You should be aware that your GUI will *not* be nice on all 3 platforms at once if you use a single toolkit.

Qt sucks. I don't know wxWidgets. GTK+ is good (at least when programmed from Ruby/Python) but currently only targets X11 on Mac OS X. Swing isn't great, but is better than most of the rest. I haven't tried SWT.


Cross-platform gui? - igame3d - Jul 4, 2007 02:12 PM

Adobe also has some C++ GUI source libraries

Not sure if that fits the bill.


Cross-platform gui? - Skorche - Jul 4, 2007 03:52 PM

OneSadCookie Wrote:GTK+ is good (at least when programmed from Ruby/Python) but currently only targets X11 on Mac OS X.

Not exactly true anymore, but it requires a bit more work to get it going.

http://developer.imendio.com/projects/gtk-macosx


Cross-platform gui? - Josh - Jul 4, 2007 04:15 PM

Qt isn't too bad but check the licensing.


Cross-platform gui? - OneSadCookie - Jul 4, 2007 04:23 PM

Skorche Wrote:Not exactly true anymore, but it requires a bit more work to get it going.

http://developer.imendio.com/projects/gtk-macosx

All this gives you is no dependency on X11, it doesn't give you any native widgets or anything. So yes, what I said was technically incorrect, but...


Cross-platform gui? - TomorrowPlusX - Jul 5, 2007 05:06 AM

Qt suck on the mac, but in my opinion it's not as bad at OSC says. He -- for I assume good reason -- severely dislikes C++.

Qt does some dirty things with C++ requiring a metacompiler and as such is a PITA unless your toolchain is set up to work with the "moc". So long as that works, Qt's not really that bad. Your apps will look and feel native on Windows and Linux. They'll totally look and feel broken on OS X, though.


Cross-platform gui? - Malarkey - Jul 5, 2007 08:09 AM

I've used wxWidgets a couple times and really, I don't like it very much. On the Mac, it tends to look slightly off and it's hard to get things to work consistently between Mac and Windows.

Of course, if you're doing simple stuff, it's probably okay.


Cross-platform gui? - OneSadCookie - Jul 5, 2007 01:33 PM

Qt's hacked-on dynamism is bad, but it's not the worst thing about Qt. The worst thing about Qt is how programmatically changing the value of a widget fires all the change notifications, so you constantly have to disable change notifications and reenable them.

Of course, I haven't used Qt 4. I hear that they haven't fixed the issue, though they have added a new set of "MVC" APIs which help avoid it.


Cross-platform gui? - Josh - Jul 5, 2007 09:35 PM

The whole metacompiler thing for QT is annoying. But I haven't had many other problems with it. The GUI doesn't end up looking any more un-Mac-like than your typical Java application (not that that is good... just not *that* bad relatively speaking). And OSC, you don't *have* to disable notifications just choose when/how you fire those notifications.

Of course all that said, if I'm making something that has to be cross-platform I'd rather use Java. If not, I'd use Cocoa so I don't see that much of a place for it. And I've only ever use Qt 4 so I have no idea what it was like prior to that. I've heard Qt 4 was a good step forward.


Cross-platform gui? - TomorrowPlusX - Jul 6, 2007 04:47 AM

OneSadCookie Wrote:Qt's hacked-on dynamism is bad, but it's not the worst thing about Qt. The worst thing about Qt is how programmatically changing the value of a widget fires all the change notifications, so you constantly have to disable change notifications and reenable them.

Of course, I haven't used Qt 4. I hear that they haven't fixed the issue, though they have added a new set of "MVC" APIs which help avoid it.

Oh my, I forgot about that. I haven't done a lick of Qt programming since coming to the Mac and discovering Cocoa. I think the last version of Qt I worked with was an early version of 3.


Cross-platform gui? - mac_girl - Jul 6, 2007 06:38 PM

http://www.wxwidgets.org !! use it Love