Cross-platform gui?

Member
Posts: 567
Joined: 2004.07
Post: #1
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?

It's not magic, it's Ruby.
Quote this message in a reply
Sage
Posts: 1,482
Joined: 2002.09
Post: #2
wxWidgets seems to be nice. I think that comes installed on newer versions of OSX.

Scott Lembcke - Howling Moon Software
Author of Chipmunk Physics - A fast and simple rigid body physics library in C.
Quote this message in a reply
Member
Posts: 715
Joined: 2003.04
Post: #3
We're currently using FLTK.

We used Revolution for a few years too.
Quote this message in a reply
Luminary
Posts: 5,143
Joined: 2002.04
Post: #4
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.
Quote this message in a reply
Member
Posts: 715
Joined: 2003.04
Post: #5
Adobe also has some C++ GUI source libraries

Not sure if that fits the bill.
Quote this message in a reply
Sage
Posts: 1,482
Joined: 2002.09
Post: #6
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

Scott Lembcke - Howling Moon Software
Author of Chipmunk Physics - A fast and simple rigid body physics library in C.
Quote this message in a reply
Moderator
Posts: 608
Joined: 2002.04
Post: #7
Qt isn't too bad but check the licensing.
Quote this message in a reply
Luminary
Posts: 5,143
Joined: 2002.04
Post: #8
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...
Quote this message in a reply
Sage
Posts: 1,199
Joined: 2004.10
Post: #9
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.
Quote this message in a reply
Member
Posts: 257
Joined: 2004.06
Post: #10
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.

The brains and fingers behind Malarkey Software (plus caretaker of the world's two brattiest felines).
Quote this message in a reply
Luminary
Posts: 5,143
Joined: 2002.04
Post: #11
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.
Quote this message in a reply
Moderator
Posts: 608
Joined: 2002.04
Post: #12
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.
Quote this message in a reply
Sage
Posts: 1,199
Joined: 2004.10
Post: #13
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.
Quote this message in a reply
Member
Posts: 53
Joined: 2006.10
Post: #14
Quote this message in a reply
Post Reply 

Possibly Related Threads...
Thread: Author Replies: Views: Last Post
  Cross platform question kordeul 13 5,033 Aug 22, 2007 03:09 AM
Last Post: kordeul
  Best cross platform API for PC & MAC Tarek Demiati 6 3,193 Apr 16, 2006 03:07 PM
Last Post: Dan Potter
  cross-platform code leggo 35 12,143 Jul 18, 2004 05:05 PM
Last Post: Fenris
  Cross platform game code on a budget Carlos Camacho 7 3,672 Apr 19, 2003 09:29 PM
Last Post: Mars_999
  Cross-platform Solutions DJBlufire 13 4,908 Feb 16, 2003 02:40 PM
Last Post: athomson