Register | Login
Views: 19364387
Main | Memberlist | Active users | ACS | Commons | Calendar | Online users
Ranks | FAQ | Color Chart | Photo album | IRC Chat
11-02-05 12:59 PM
0 user currently in Programming. | 3 guests
Acmlm's Board - I2 Archive - Programming - Options for cross platform gui coding? | |
Add to favorites | "RSS" Feed | Next newer thread | Next older thread
User Post
loadingNOW

Red Paragoomba
Level: 14

Posts: 40/61
EXP: 10382
For next: 2689

Since: 07-15-04
From: Silent Hill

Since last post: 136 days
Last activity: 3 days
Posted on 02-22-05 09:31 PM Link | Quote
well obviously winapi is not an option.
i know i could go the following routes:
- Qt (but that's quite costy for win32)
- GTK (but that's confusing - or maybe i've read the wrong documentations)
- MonoDevelop (C#) + GTK# (there has been quite a lot of hype about that solution lately - I don't know what to think about it mainly because I am not exactly fond of .net - due bad experiences with java)
- Java (*ugg*)

Now is any of these actually useable? And if so, which one? why?
Parasyte

Bullet Bill
Level: 35

Posts: 316/514
EXP: 267348
For next: 12588

Since: 05-25-04

Since last post: 104 days
Last activity: 32 days
Posted on 02-22-05 09:57 PM Link | Quote
I have been looking into the same sort of thing recently. And though I have not decided, GTK and Qt are definitely the only real choices. And in actuality, I would probably pick GTK over Qt. (Even if only because Tcl looks bad)
Of course, there is another option -- a self-rendered GUI, such as those available in ZSNES, Meka, Red Dragon, etc. There are quite a few GUI engines to choose from, depending on which graphics lib you want to use. (Allegro, SDL, etc.)


(edited by Parasyte on 02-22-05 12:58 PM)
dan

Snap Dragon
Level: 43

Posts: 445/782
EXP: 534516
For next: 30530

Since: 03-15-04

Since last post: 20 hours
Last activity: 14 hours
Posted on 02-22-05 10:23 PM Link | Quote
Ultimate++ has a half decent cross platform toolkit. The next version of Qt on Windows will apparently be free. There's also a free port of Qt (not by Trolltech) available, but I'm not sure on the quality of it.

Mono's implementation of System.Windows.Forms is coming along nicely, so if you write a GUI application using Microsoft's .NET SDK (or VS .net whatever), it may compile and run fine on Mono.

Generally, I'm not a fan of GTK+, as it usually looks like ass on Windows. (Even with the WIMP theme)

You might also want to try wxWidgets, as it does a half decent job of abstracting GUI stuff away, and you can use it from a wide variety of languages.
HyperLamer
<||bass> and this was the soloution i thought of that was guarinteed to piss off the greatest amount of people

Sesshomaru
Tamaranian

Level: 118

Posts: 3400/8210
EXP: 18171887
For next: 211027

Since: 03-15-04
From: Canada, w00t!
LOL FAD

Since last post: 2 hours
Last activity: 2 hours
Posted on 02-23-05 12:56 AM Link | Quote
I thought .Net was only a Windows thing. Self-rendered is a neat option if you're good at graphics, but done badly it can really suck. I, for one, hate ZSnes's GUI.
neotransotaku

Baby Mario
戻れたら、
誰も気が付く
Level: 87

Posts: 2387/4016
EXP: 6220548
For next: 172226

Since: 03-15-04
From: Outside of Time/Space

Since last post: 11 hours
Last activity: 1 hour
Posted on 02-23-05 01:22 AM Link | Quote
.NET is primarily a windows thing--but coding with C# isn't--there are open source C# compilers that will compile to x86 environments for different OS

As for self-producing GUI, that is one way to be platform independent. If you do that, might I suggest using GLUT, which is an openGL wrapper that will take care of some basic level windowing for you depending on what OS you compile on.
dan

Snap Dragon
Level: 43

Posts: 448/782
EXP: 534516
For next: 30530

Since: 03-15-04

Since last post: 20 hours
Last activity: 14 hours
Posted on 02-23-05 01:53 AM Link | Quote
Originally posted by HyperHacker
I thought .Net was only a Windows thing.


Where have you been for the past few years? There's the already mentioned Mono, and DotGNU, another open source .NET implementation.
HyperLamer
<||bass> and this was the soloution i thought of that was guarinteed to piss off the greatest amount of people

Sesshomaru
Tamaranian

Level: 118

Posts: 3405/8210
EXP: 18171887
For next: 211027

Since: 03-15-04
From: Canada, w00t!
LOL FAD

Since last post: 2 hours
Last activity: 2 hours
Posted on 02-23-05 06:02 AM Link | Quote
Er, avoiding .Net.
dan

Snap Dragon
Level: 43

Posts: 451/782
EXP: 534516
For next: 30530

Since: 03-15-04

Since last post: 20 hours
Last activity: 14 hours
Posted on 02-23-05 04:21 PM Link | Quote
For no doubt ridiculous reasons.
FreeDOS

Lava Lotus
Wannabe-Mod :<
Level: 59

Posts: 1157/1657
EXP: 1648646
For next: 24482

Since: 03-15-04
From: Seattle

Since last post: 6 hours
Last activity: 4 hours
Posted on 02-23-05 10:48 PM Link | Quote
The only real options are GTK or Java. Qt has yet to be on Windows freely, and compiling programs in Qt for Windows is a much worse nightmare than GTK. Heh.... I like the GTK themes much better, too.

.NET is only a solution for Windows. It's a rare occurance to see any *nix user with Mono or dotGNU.

Java is cross-operating system and cross-hardware. It's still really limited to systems that Sun decides to support, but that is a very large number. The problem with Java, though, is that you have to make your own GUI from scratch or take someone else's.
Dish

Spiny
Level: 38

Posts: 281/596
EXP: 355646
For next: 14801

Since: 03-15-04
From: Disch

Since last post: 18 days
Last activity: 18 days
Posted on 02-23-05 10:57 PM Link | Quote
Why isn't wxWidgets being listed as a "real option"? From what I've seen it's as capable as GTK -- I think it even uses GTK for *nix, and uses the 'natural' API for other platforms. It also appears to be way easier to use and is documented much much better.

From the research I've done, I'd take wxWidgets over GTK any day of the week. Although they both suffer from the same problem: lack of graphics/audio/input
dan

Snap Dragon
Level: 43

Posts: 453/782
EXP: 534516
For next: 30530

Since: 03-15-04

Since last post: 20 hours
Last activity: 14 hours
Posted on 02-23-05 11:32 PM Link | Quote
Originally posted by FreeDOS
The only real options are GTK or Java. Qt has yet to be on Windows freely, and compiling programs in Qt for Windows is a much worse nightmare than GTK. Heh.... I like the GTK themes much better, too.


Unfortunately, GTK looks so out of place on Windows, it can put users off using applications written using it. Still, the same is true of Java (with Swing).

Originally posted by FreeDOS
The problem with Java, though, is that you have to make your own GUI from scratch or take someone else's.


Last I checked, the "problem" exists in virtually every programming language that allows you to create GUIs.
FreeDOS

Lava Lotus
Wannabe-Mod :<
Level: 59

Posts: 1159/1657
EXP: 1648646
For next: 24482

Since: 03-15-04
From: Seattle

Since last post: 6 hours
Last activity: 4 hours
Posted on 02-23-05 11:41 PM Link | Quote
Well... for Win32, I've found the GTK+ build at http://silverex.info/ to be the most compatible (too many cases where you run into DLL hell for just GTK+), and it comes with a theme switcher. There's a theme called Gtk-Wimp (Windows IMPersonator) which grabs windows' style controls into GTK apps. There can be problems with WindowBlinds, though. Also, Win32 GTK+ applications don't allow dynamic theme changes, unlike the *nixes. So... if you want users to use that version, you just host that file.
Parasyte

Bullet Bill
Level: 35

Posts: 318/514
EXP: 267348
For next: 12588

Since: 05-25-04

Since last post: 104 days
Last activity: 32 days
Posted on 02-24-05 01:14 AM Link | Quote
A correction to my post, above; I managed to confuse Qt with Tk. So the whole time I was saying "Qt", I actually meant "Tk". So yeah, there's also Tcl/Tk to consider.
HyperLamer
<||bass> and this was the soloution i thought of that was guarinteed to piss off the greatest amount of people

Sesshomaru
Tamaranian

Level: 118

Posts: 3436/8210
EXP: 18171887
For next: 211027

Since: 03-15-04
From: Canada, w00t!
LOL FAD

Since last post: 2 hours
Last activity: 2 hours
Posted on 02-24-05 03:15 AM Link | Quote
Originally posted by dan
For no doubt ridiculous reasons.

I won't argue with you there. Personally, I wouldn't use Java for anything serious; it's a huge resource hog. (Heck, I couldn't even get it to run. )

Dan: I'm pretty sure he meant you have to actually draw the GUI and keep track of controls, coordinates etc manually, as opposed to telling the OS to put a button here, a text box there, etc.
neotransotaku

Baby Mario
戻れたら、
誰も気が付く
Level: 87

Posts: 2403/4016
EXP: 6220548
For next: 172226

Since: 03-15-04
From: Outside of Time/Space

Since last post: 11 hours
Last activity: 1 hour
Posted on 02-24-05 08:14 AM Link | Quote
Originally posted by HyperHacker
Dan: I'm pretty sure he meant you have to actually draw the GUI and keep track of controls, coordinates etc manually, as opposed to telling the OS to put a button here, a text box there, etc.
In Java, that is what Swing is for--all you have to do is specify layouts and what you want to go onto a panel and where to place a panel. No need to worry about how to draw a button, making mouse support, figuring out where exactly to draw the button, etc.

As for Java UI out of place, well--i wouldn't say that. Sun has included a windows look and feel theme; which makes java programs have a Windows look. Sun also has probivded a Unix look and feel as well.

As to answer loadingNOW's question--they are all viable because they all do what you want in terms of producing a cross-platform, write-once GUI interface.
loadingNOW

Red Paragoomba
Level: 14

Posts: 41/61
EXP: 10382
For next: 2689

Since: 07-15-04
From: Silent Hill

Since last post: 136 days
Last activity: 3 days
Posted on 02-24-05 07:04 PM Link | Quote
thx a lot for all the info. i have not made up my mind (and it's not that urgent) still some comments:
java swing might work in theory but actually working with it is a nightmare if you ask me. I'd even prefer MFC...
I didn't know tcl/tk before, looks interesting
Add to favorites | "RSS" Feed | Next newer thread | Next older thread
Acmlm's Board - I2 Archive - Programming - Options for cross platform gui coding? | |


ABII


AcmlmBoard vl.ol (11-01-05)
© 2000-2005 Acmlm, Emuz, et al



Page rendered in 0.010 seconds.