Kuro5hin.org: technology and culture, from the trenches
create account | help/FAQ | contact | links | search | IRC | site news
[ Everything | Diaries | Technology | Science | Culture | Politics | Media | News | Internet | Op-Ed | Fiction | Meta | MLP ]
We need your support: buy an ad | premium membership

[P]
Good cross-platform windowing API?

By in News
Fri May 26, 2000 at 03:58:52 PM EST
Tags: Help! (Ask Kuro5hin) (all tags)
Help! (Ask Kuro5hin)

I'd like to know if there are any good cross-platform windowing libraries out there. It seems like I can write a universal application by coding it on a web server somewhere, and all the clients can run a web browser. But if I want a real, client executed application, I don't know what API to code to. Java looked like it held out hope, but I've been worn down by the incompatibilities across pla tforms and the (incompatible) changes that Sun makes to the class libraries every release. Besides, I'd rather write in C or C++, and not have to use Java just to get portable windowing. Is there a common set of APIs that I can use to write portable, cross-platform windowing applications?


Sponsors

Voxel dot net
o Managed Hosting
o VoxCAST Content Delivery
o Raw Infrastructure

Login

Related Links
o Also by


Display: Sort:
Good cross-platform windowing API? | 47 comments (47 topical, editorial, 0 hidden)
It's probably already been mentione... (none / 0) (#14)
by PresJPolk on Fri May 26, 2000 at 08:44:37 AM EST

PresJPolk voted 1 on this story.

It's probably already been mentioned by the time I vote for this, but I'll say it anyway: Qt is sweet, especially Qt 2.1. Yes, the Windows version costs $1500, but the free version works on basically any unix.

Take a look at the Qt Nethack as an example of the cross-platform abilities of Qt.

No, Qt doesn't do MacOS or BeOS. Maybe you should have said which OSes you wanted to support.



I doubt it. But I'd like to hear a... (none / 0) (#6)
by eann on Fri May 26, 2000 at 09:27:12 AM EST

eann voted 1 on this story.

I doubt it. But I'd like to hear about it if there is.

Our scientific power has outrun our spiritual power. We have guided missiles and misguided men. —MLK

$email =~ s/0/o/; # The K5 cabal is out to get you.


Is there a common set of ... (none / 0) (#9)
by Pseudonymous Coward on Fri May 26, 2000 at 10:02:21 AM EST

Pseudonymous Coward voted 1 on this story.

Is there a common set of APIs that I can use to write portable, cross-platform windowing applications?

Yep. It's informally called X, but you can use a toolkit such as Motif or GTK to get the sort of results you're looking for without having to resort to B&D widget coding.

Break out the asbestos underwear, I... (none / 0) (#12)
by Rasputin on Fri May 26, 2000 at 10:06:22 AM EST

Rasputin voted 1 on this story.

Break out the asbestos underwear, I can see this turning into a warm discussion ;)
Even if you win the rat race, you're still a rat.

Well, There's QT and there's the V ... (none / 0) (#2)
by bmetzler on Fri May 26, 2000 at 10:35:27 AM EST

bmetzler voted 1 on this story.

Well, There's QT and there's the V C++ GUI. There are others too.
www.bmetzler.org - it's not just a personal weblog, it's so much more.

I haven't really done GUI stuff out... (none / 0) (#11)
by cthulhu on Fri May 26, 2000 at 11:18:30 AM EST

cthulhu voted 0 on this story.

I haven't really done GUI stuff outside Linux, Solaris and Windows but I think you'd have to put Gtk+ near the top of your list for consideration.



I happen to also be very interested... (none / 0) (#13)
by Anonymous Zero on Fri May 26, 2000 at 11:26:49 AM EST

Anonymous Zero voted 1 on this story.

I happen to also be very interested in seeing discussion on this. Personally I've opted to use curses (or ncurses rather) for client-side apps because it is GNU, ported to many platforms, and works fine through any remote shell session. Termcap stuff is not pretty but it is portable.

XPCOM... (2.00 / 1) (#10)
by dieman on Fri May 26, 2000 at 11:40:21 AM EST

dieman voted 1 on this story.

XPCOM
---
blah

Well, there are a couple that sprin... (4.00 / 1) (#16)
by Reed on Fri May 26, 2000 at 11:54:06 AM EST

Reed voted 1 on this story.

Well, there are a couple that spring to mind. If you really want to stick with C or C++, I'd recommend either qt or wxwindows. Qt is nicer, IMO, but the windows version will cost you (as will any version, if this is commercial software). Also, the range of platforms is large, but not complete; you are pretty much limited to Windows or Unix platforms.

Wxwindows is a fairly nice solution, as it has a very liberal license which allows for GPL'd or proprietary, commercial binaries. The C++ API is fairly decent, and there are a few other language bindings available. It also has a fairly decent set of supported platforms, including Windows, Mac, multiple unix and unix-ish platforms using either motif or gtk as the core, and more on the way. Ports under consideration or on the way include a port for unix using QT as the core (which would allow one set of code to support KDE and GNOME native users), BeOS, WindowsCE, QNX, and others.

interesting.. I've no clue what one... (none / 0) (#1)
by dblslash on Fri May 26, 2000 at 12:29:45 PM EST

dblslash voted 1 on this story.

interesting.. I've no clue what one would use aside from java, and the author's points on that note are good ones.

On a somewhat related topic, is there anything in the works for a "Ask k5" section? I have mixed feelings on the topic. I always enjoyed reading that section of <A HREF="http://www.slashdot.org>that other place, but I really do not want to see k5 turn into an exact copy.

Thoughts, comments?

Ask K5? (none / 0) (#17)
by error 404 on Fri May 26, 2000 at 04:04:03 PM EST

My question:

In what way, if any, would an "Ask k5" section be better than what we have now, which is the ability to post a question as an article?

..................................
Electrical banana is bound to be the very next phase
- Donovan

[ Parent ]
Re: interesting.. I've no clue what one... (none / 0) (#28)
by Anonymous Hero on Sat May 27, 2000 at 11:02:02 AM EST

Thoughts, comments?

Um, close your tags. :-)

I like the Ask k5 idea and don't see it contributing to a Slashdot replication. People here are a lot more tame, more interested in the information and topic than being heard.

I would go with the latest Java SDK.

[ Parent ]
You could try, for starters, wxwind... (none / 0) (#8)
by pwhysall on Fri May 26, 2000 at 12:37:50 PM EST

pwhysall voted 1 on this story.

You could try, for starters, wxwindows and QT.
--
Peter
K5 Editors
I'm going to wager that the story keeps getting dumped because it is a steaming pile of badly formatted fool-meme.
CheeseBurgerBrown

A good question; I'm looking forwar... (none / 0) (#4)
by raph on Fri May 26, 2000 at 12:48:36 PM EST

raph voted 1 on this story.

A good question; I'm looking forward to the discussion.

Of course, Gtk+ comes pretty close, being available for Windows and Unix. The BeOS port seems to be in relatively good shape, and there are noises about a Mac port (not sure how far along).

Yes.... (none / 0) (#5)
by alisdair on Fri May 26, 2000 at 01:50:52 PM EST

alisdair voted 1 on this story.

Yes.

In this case, I am not voting on th... (none / 0) (#7)
by error 404 on Fri May 26, 2000 at 02:47:43 PM EST

error 404 voted 1 on this story.

In this case, I am not voting on the quality of the article. 'Cuz there basicaly isn't an article, just a question. I am voting on the discussion I think it will provoke. I want the answers to that question. Really. I'm a *nix guy who somehow raised a Windows family (I blame lax church attendance) and I need to build some apps that I want non-reboot access to regardless of who's on the machine at the moment.
..................................
Electrical banana is bound to be the very next phase
- Donovan

You might want to look at a cross p... (3.00 / 1) (#3)
by Inoshiro on Fri May 26, 2000 at 03:02:09 PM EST

Inoshiro voted 1 on this story.

You might want to look at a cross platform toolkit. QT works on the Win32 API fragments (they are all subtley incompatible :-)), as well as most Unix implementations. Licencing could be an issue. GTK+ and glib (the abstraction layer between Window Manager/API and program) are also being ported to the Win32 family, as well as working on most Unix implementations (less than QT I think).

Another option is to use wxWindows, which is another cross platform windowing toolkit. Mahogany is a mail client written on top of this toolkit, and is a great example of how to work with it.

Good luck :-)



--
[ イノシロ ]
How about Simple DirectMedia Layer ... (none / 0) (#15)
by jmcneill on Fri May 26, 2000 at 03:15:07 PM EST

jmcneill voted 1 on this story.

How about Simple DirectMedia Layer or Qt?
``Of course it runs NetBSD.''

Re: How about Simple DirectMedia Layer ... (none / 0) (#43)
by Anonymous Hero on Tue May 30, 2000 at 09:53:38 AM EST

SDL isn't really a toolkit.. It's more like a crossplatform DirectX. You'd have to code your own GUI drawing in the framebuffer then.. Pretty much a waste of time..

[ Parent ]
Easy answer: GTK+ (none / 0) (#18)
by gleef on Fri May 26, 2000 at 04:09:09 PM EST

GTK+ is easy to write for, looks good, and it's widely ported. Currently it runs on pretty much every *nix with X11, as well as Windows and BeOS. You can write in both C and C++ in it, as well as many many other languages. It's covered under the LGPL, so you don't have the licensing issues you get with packages like Qt. Check it out at http://www.gtk.org.

TK? (none / 0) (#19)
by octos on Fri May 26, 2000 at 04:17:33 PM EST

What about using TK? It exists ot everything but BeOS, I belive. I'm a scripter, so I don't know how it would interact with C, but it works with TCL, Python, PERL, and others.

A different Java experience. (none / 0) (#20)
by mahlen on Fri May 26, 2000 at 04:19:32 PM EST

While the author would rather not use Java (fine by me, of course), I thought I should point out that my experience with cross-platform Java Swing apps has been surprisingly good.

My team wrote a pretty complicated (drag-n-drop, dynamic content, sorting tables in dialogs) Java application, and we only used it on Windows NT, as that was our intended usage of the app. But then i needed to hook the app up to a library that was only then available for Solaris. So, with some trepidation, i tried running it without modification under an X simulator (X-Win32) under NT connecting to a Solaris box. It worked. Perfectly. I was so surprised that i ran around the company showing it to people. Of course, it was slow as cold molasses due to the simulated X-windows complications, but when i tried it on the Solaris box it looked fine.

I'm not saying that there are no Java incompatibilities across platforms; I'm only pointing out that it's quite possible to write a serious app without running into any. Anonymous Hero, try Swing; it might be what you want.

mahlen

Critics are like eunuchs in a harem: They know how it's done, they've seen it
done, but they're unable to do it themselves.
--Brendan Behan

wxWindows/wxPython/Python (4.00 / 2) (#21)
by FFFish on Fri May 26, 2000 at 04:23:13 PM EST

I suggest using wxWindows. One of the key advantages to this is that you can then use wxPython, the Python API to wxWindows, to do your prototyping.

And one of the better things about prototyping with Python is that you may discover that you don't need to write compiled code for your application -- or that you can focus on compiling only the speed-critical parts, and leave the rest to the Python interpreter, which can become an intrinsic part of your application.

All of which adds up to rapid development with minimal effort. It's a great way to use your time/resources/skills most effectively. :-)

Re: wxWindows/wxPython/Python (none / 0) (#23)
by costas on Fri May 26, 2000 at 07:23:00 PM EST

I've been looking into Python just today, and I am intrigued... I really liked the cleanliness of the grammar and the power of the design, but some things irked me --e.g. I'd prefer a more C-like syntax, so I won't have to remember things like colons at the end of conditionals, etc.

But since you mentioned it, lemme jump in with a coupla questions re: Python and wxwindows... How easy is to deploy Python? is it just a matter of getting the interpreter binary going? do you have to actively maintain $PYTHONPATH like $CLASSPATH for java, or is it fire-and-forget? now, what about wxwindows?

You see, I like Java and respect Java as a platform, but it makes a really bad glue language for quick-and-dirty fixes. And Python lacks the widespread support that awk or Perl or even {shudder} shell-scripting has... so, if I am gonna commit precious time in learning Python, I wanna be able to deploy it almost instantenously if need be, with a zip file (or tag.gz :-) and an initialization script. You just can't do that with Java...



memigo is a news weblog run by a robot. It ranks and recommends stories.
[ Parent ]
Re: wxWindows/wxPython/Python (none / 0) (#27)
by Anonymous Hero on Fri May 26, 2000 at 09:55:56 PM EST

How easy is to deploy Python? is it just a matter of getting the interpreter binary going? do you have to actively maintain $PYTHONPATH like $CLASSPATH for java, or is it fire-and-forget?

You won't need to maintain PYTHONPATH if you install your packages in standard locations, or in your program's directory. A tgz/zip file should work fine, just include all the files/libraries you'll need. I've had no problems using Tkinter (which is included with the standard Python install), I've never tried wxWindows.

[ Parent ]

Re: wxWindows/wxPython/Python (none / 0) (#29)
by FFFish on Sat May 27, 2000 at 12:25:27 PM EST

wxWindows is fire-and-forget, too.

That said, though, I should warn that it is under very active development. While the base class APIs/functionality/etc aren't likely to change, there are some powerful meta-tools (grids, html) that are susceptible to change--at least, far more so than, I believe, TkInter.

OTOH, IMO, wxWindows is far easier to use and more Pythonish. Plus, Robin (developer of wxPython) is part of the wxWindows team. While wxWindows is a C/C++ project, they are actively incorporating suggestions and feedback from the wxPython community, which is cool.

My advice: try Tk and try wxPython, and use whichever seems to 'fit your brain better.'

[ Parent ]
Re: wxWindows/wxPython/Python (none / 0) (#33)
by Anonymous Hero on Sat May 27, 2000 at 10:31:28 PM EST

Not very cross platform considering python doesnt work properly on w2k.

[ Parent ]
Re: wxWindows/wxPython/Python (none / 0) (#46)
by Anonymous Hero on Sat Jun 10, 2000 at 09:27:18 PM EST

Warning: Topic drift Could you please enlighten me as to *how* python misbehaves under W2K? I am about to undertake a project in python and I would really like to know about these drawbacks. Thanks.

[ Parent ]
How does python fail on W2K ??? (none / 0) (#47)
by Anonymous Hero on Sat Jun 10, 2000 at 09:28:07 PM EST

ssia

[ Parent ]
Another toolkit (3.00 / 1) (#22)
by Doug Loss on Fri May 26, 2000 at 07:11:13 PM EST

There's also FOX. I don't know a lot about it, but it was announced recently on Freshmeat.

FOX (Re: Another toolkit) (none / 0) (#40)
by Anonymous Hero on Mon May 29, 2000 at 06:48:37 PM EST

I have just had a look at FOX and I like it very much. Infos can be found at: http://www.cfdrc.com/FOX/fox.html Besides the C++ there is also a Python binding at: http://home.HiWAAY.net/~johnson2/FXPy/

[ Parent ]
Qt (none / 0) (#24)
by dlc on Fri May 26, 2000 at 07:39:25 PM EST

If, by cross-platform, you mean Unix and Win32, then Troll Tech's Qt is worth looking at. Otherwise, you may be best suited by looking at a scripting language that has a Tk port (Perl, Python, Tcl) or native gui tools; these will generally run anywhere the host language runs.

darren


(darren)

Consider FLTK (4.00 / 2) (#25)
by Anonymous Hero on Fri May 26, 2000 at 09:30:15 PM EST

Go to www.fltk.org. It is one of the most underestimated toolkits out there. My company already sells one product based on FLTK and the toolkit is nothing short of amazing. Excellent portability (almost zero #ifdefs) . It is good C++ design which makes coding and extending the toolkit a joyful experience. They only use C++ as Bjarne intended and have no blooming slots and signals or message maps or any cruft like that.
If you think it's ugly (looks like SGI motif) think again. Themes and eye candy is on its way in the next major release so it will be pretty. But for now it is an extremely solid toolkit. No nonsense, no legacy just cross platform widgets. Oh, and their mailing list is very responsive and very tolerant of newbies (never ever seen an 'RTFM' there). People who maintain it are brilliant coders too. It doesn't have the hype of GTK or QT but it's by no means inferior. In fact from a programmer's standpoint it is vastly superior to them both. Give fltk a try you won't regret it. They have a GUI designer called fluid which produces human readable output which again is a big plus.

Re:Signals and slots (4.00 / 2) (#32)
by Anonymous Hero on Sat May 27, 2000 at 08:11:38 PM EST

Signals + slots *can* be done without using stupid preprocessors. I very much doubt Bjarne would have anything much against a decent, well designed implementation of them. Which Qt's moc isn't, of course.

However, the gtk++ spinoff libsigc++ does them very well - I'd love to see a Qt port that used libsigc++ instead of that braindead (actually rather clever, but fundamentally flawed) moc preprocessor. Thing is, at the time Qt was written, most C++ implementations lacked many of the features around today, and so moc was a workaround, and like most kludges, now they are stuck with it unless they want to axe backward compatibility. (Maybe Qt 3.0 would be a good time to actually do this.)

If you haven't seen libsigc++, here's a summary :

About:

This library implements a full callback system for use in widget libraries, abstract interfaces, and general programming. Originally part of the Gtk-- widget set, libsigc++ is now a seperate library to provide for more general use. It is the most complete library of its kind with the ablity to connect an abstract callback to a class method, function, or function object. It contains adaptor classes for connection of dissimilar callbacks and has an ease of use unmatched by other C++ callback libraries. Libsigc++ is licensed under the GNU Library General Public License, LGPL.

Features:

  • Compile time typesafe callbacks (faster than run time checks)
  • Typesaftey violations reports line number correctly with template names (no tracing template failures into headers)
  • No compiler extensions or meta compilers required
  • Proper handling of dynamic objects and signals (deleted objects will not cause seg faults)
  • Extendable API at any level Slot, Connection, Object, and Signal
  • Extensions do not require alteration of basic components to allow use of extensions
  • User definable marshallers
  • Provides headers for up to 7 arguments and 2 callback data
  • M4 Macros for building templates with various numbers of arguments and callback data
  • Easily build support for templates with number of arguments and callback data not defined in library headers
  • Now supports gcc 2.8.0, egcs all versions, gcc 2.95.x, HP aCC A.01.22, Irix MipsPro 7.3, RISC OS with gcc 2.95, and Visual C++ 5.0.

Developers:

The original library was composed by Tero Pulkkinen for the Gtk-- system, a C++ wrapper for the Gtk+ widget set. The revised library is written and mantained by Karl Nelson. Special thanks for Esa Pulkkinen for development tips.

[ Parent ]

Re: Consider FLTK (none / 0) (#42)
by Anonymous Hero on Tue May 30, 2000 at 09:46:39 AM EST

Yeah, FLTK really rocks.
I have coded only coded for the Amiga WB, GTK and Windows and then, now, FLTK so maybe my word won't be much worth. I have looked at QT coding, but people scared me off with their ranting about licensing ;)
So, well now I use FLTK for all my UI programs, I really like being able to make the programs available for Win if I like too, all though I currently only have a use for them in Linux.

There's some Mac port in alpha too, I think. Oh yeah, you can code in Python and Perl for FLTK too.

Oscar Campbell

[ Parent ]
Qt / Kylix may be the way to go. (none / 0) (#26)
by sugarman on Fri May 26, 2000 at 09:49:23 PM EST

If you can wait a bit, Borland may be the way to go. Kylix is en route, and the VCL works pretty sweet. On top of that, it looks like they are licensing Qt to use in Kylix. It may stick you with KDE native apps, but they should be consistent.

A word on portability: From the sounds of things, the VCL in Windows is not directly portable from Windows to Linux. However, apps done in Kylix will be portable to Windows with little to no modifications. Porting apps from the old Windows-based VCL may take some tweaking, but I imagine they can be made to run in short order.

So, you could start building in Delphi / C++ Builder now on Windows and port them when Kylix is done. I guess it is just a matter of how long you can wait.
--sugarman--

Crystal Space Windowing System. (4.00 / 2) (#30)
by Anonymous Hero on Sat May 27, 2000 at 12:31:24 PM EST

CSWS is probably the most poratable windowing library in existance. It runs ontop of crystal space. Supports dos, windows, beos, linux, solaris, next, macos, os/2. More than a year ago there was even an amiga port. It can use svgalib, OpenGL, directx, even aalib the ascii art renderer :) On windows you can use VC, and cygnus compilers, with borland, and Mingwin comming. Crystal space also comes with some nice other libraries, like a virtual file system for doing things like mounting a zip file as a directory. The plugin facility is also really nice. Only done a small app with it, but it is really neat. Oh it's c++, and LGPL meaning you can use it commercially without having to release code for your app. crystal.linuxgames.com Get the latest beta, or grab it straight out of the cvs. Rene.

Java isn't incompatable (none / 0) (#31)
by Anonymous Hero on Sat May 27, 2000 at 07:54:53 PM EST

Hey, this is delmoi, but I havn't gotten around to changing my password yet...

But anyway, while java isn't always source code compatible from version to version, the binaries should be. So, if you code in java 1.0, you're code should work everywhere, you just won't be able to compile it with the new JDKs (but, unlike M$, sun lets you download old JDKs)

Also, I think GTK works on windows, that's how they ported the GIMP to windows.

Re: Java isn't incompatable (5.00 / 1) (#39)
by Anonymous Hero on Mon May 29, 2000 at 03:48:40 PM EST

That's not true. With the latest Java compiler you can compile all past java code. Java is completely backwards compatible. If a function's name has been changed, it will give you a warning that it is deprecated, but nothing has been removed yet, so that's not so bad. Also, most of the changes were between java 1.0 and 1.1. Since then most of the changes have just been adding stuff. The reason for this was to make the java language consistant with the javabean spec. Short reason-This allowed visual java editors to be created. longer explanation-component models expose properties using function naming conventions, so they deprecated all the functions called 'enabled' and 'disabled' and made a new function called setEnabled. This shows that the object has a property called 'enabled' that can be set to true or false in a visual editor.

[ Parent ]
Some Qt experience (3.00 / 1) (#34)
by kris on Sun May 28, 2000 at 08:58:29 AM EST

A friend of mine and I have done a project on Linux and Windows using Qt. The resulting program is now some 4 MB binary on Windows, and has been about 9 man-months of work Development was done mostly on Linux, with some days of work done under Windows in VMware. The initial port from Linux to Windows was done after some 4-5 months of coding and required essentially the larger part of 2 days of work.

All in all we are extremely satisfied with Qt. The only thing that is sometimes lacking or slow is their response to commericial support, but then there are always the mailing lists and the source. We consider the money spent for the commercial Qt license well spent, specifically considering that the alternative would have been coding under Windows and using MFC.

Writing cross-platform applications in Mozilla (none / 0) (#35)
by Anonymous Hero on Sun May 28, 2000 at 01:13:55 PM EST

You can write cross-platform applications in Mozilla. This article describes it. Note that the application can be entirely self-contained -- i.e., a Web server is not required, depending of course on what you want to do.

Ever seen Forte ( TOOL) (none / 0) (#36)
by Anonymous Hero on Sun May 28, 2000 at 01:38:46 PM EST

Although Sun recently bought them, Forte Software is rather a remarkable cross-platform, high distributed environment. It uses a language called TOOL that is interperated but can be compliled natively on any of its certififed platforms (win32, mac, unix, vms, etc). Due to an application being installed at work, I have just taken some courses on it. If Forte would have marketed things better 4 or 5 years ago, we would be living in a different computer environment today.

Re: Ever seen Forte ( TOOL) (none / 0) (#37)
by j_anstice on Sun May 28, 2000 at 05:43:16 PM EST

The Forte/TOOL is a nice combination, especially for DB-based applications. However, it isn't terribly easy to version control, and is hard to debug distributed applications. Laying out GUI screens in a lasting way is a pain in the bum, there is not a good class library out of the box, so everyone has to roll their own (and then Forte provides support for whatever you just did in the next release). Also, watch out for repository corruption - code goblins occasionally go in & change things. Especially don't let the repository run out of space.

However, I agree with you about it being a nice system, and I used it for 2.5 years, and was probably about 10% of the Forte talent in NZ at the time, but 4 or 5 years ago it was just starting out.

[ Parent ]

Tcl/Tk (none / 0) (#38)
by Anonymous Hero on Mon May 29, 2000 at 09:18:10 AM EST

I'm surprised this wasn't mentioned much. It is a language with gui which is so cross-platform, it's not even funny. Plus there are many platform-specific extensions.

Shamless Support for Pmw (Python MegaWidgets) (none / 0) (#41)
by Anonymous Hero on Mon May 29, 2000 at 10:21:31 PM EST

My experience may be typical, namely wishing to use the Tkinter widget set for maturity and wide availability across Mac/Windows/Mac. The recent publication of "Python and Tkinter Programming" by John E. Grayson, which covers the extended widget set known as Python MegaWidgets, has caused me to select Pmw. Another not insignificant advantage is the web site actively maintained by the publisher, Manning, where you can ask the author questions. This is the future of technical books/technical authors.

When? (none / 0) (#44)
by Anonymous Hero on Tue May 30, 2000 at 06:56:44 PM EST

If you need to get started now, Gtk+ seems to be a good choice. If you can wait a few months, you should definitely take a look at the StarOffice libraries. I'm quite sure the StarOffice sources will be available this year.

Cross-platform FAQ (none / 0) (#45)
by Bozovision on Fri Jun 02, 2000 at 03:59:18 PM EST

There is a excellent cross-platform development FAQ available on the web. Start by looking in newsgroups - I think that's where I found it originally. It lists many many cross-platform development tools.

There are quite a few cross-platform windowing libraries/toolkits. Some - off the top of my head... Willow, Microsoft Visual C++ version 4 can do tricks like this on Windows and Mac, Bill Woody's YAAF (now GPLed I think), Trolltech Qt.

Jeff Veit

Good cross-platform windowing API? | 47 comments (47 topical, 0 editorial, 0 hidden)
Display: Sort:

kuro5hin.org

[XML]
All trademarks and copyrights on this page are owned by their respective companies. The Rest 2000 - Present Kuro5hin.org Inc.
See our legalese page for copyright policies. Please also read our Privacy Policy.
Kuro5hin.org is powered by Free Software, including Apache, Perl, and Linux, The Scoop Engine that runs this site is freely available, under the terms of the GPL.
Need some help? Email help@kuro5hin.org.
My heart's the long stairs.

Powered by Scoop create account | help/FAQ | mission | links | search | IRC | YOU choose the stories!