Re: [Java-gnome-developer] starting with java-gnome
Brought to you by:
afcowie
From: Andrew C. <an...@op...> - 2005-05-22 12:44:24
|
On Sun, 2005-22-05 at 10:28 +0200, Tomasz Mielnik wrote: > I'm thinking about starting a development with java-gnome. As a starter > I want to write some small tools just for myself as a proof-of-concept. Good plan - it'll give you a sense of confidence in trying to use the APIs. > 1. Is it possible to use java collections (like Vector, Hashtable, etc) > with java-gtk/java-gnome. I ask bcoz i saw that gtk/glib is using it's > own list/maps implementation? Yes. What you do with your data is your business. java-gnome's wrapping of Glib/GTK+ data structures only matters for us when we come to do ListViews and TreeViews (when you have to fill the GTK TreeModel of information that drives the view) - and that is just what the API is. > 2. What about other java specific features/APIs and GTK? Can I, for > example use java Thread inside Java-GTK app? Erum, careful with that. The answer is "yes", but there are some thread safety issues that come up with this (and every other) GUI Toolkit, as they do all their updates within a single event loop which runs in a "main" thread. There are various references to "CustomEvents.addEvent()" floating around - that's what you need to call from a worker thread if you want to make GUI updates from outside of the GUI event loop thread. > 3. How is GObject related to generic java Object? Don't worry about it. Seriously - it's all just internals. > 4. which version of javagtk is ok to start with? I use Ubuntu and it > ships with 2.8.3. Should i switch to the latest cvs to stay current? No. libgtk-java 2.4.9 [and optionally lib{gnome,glade,gconf}-java 2.8.3.1] are mostly fine (I've done development against them for over 6 months now). You will find a *slightly* greater feature set in libgtk-java 2.6.2+ [and lib{gnome,glade,gconf}-java 2.10.1+ for that series], so upgrading to that is fine when it (and the enormous stack of dependencies it stands on) are available to you - but no rush. Certainly, unless you're trying to hack on the bindings themselves, there is no reason to grab CVS. If you were to, then grabbing the stable branch (2.6/2.10) would be fine - HEAD stands on a *really* bleeding edge dependency stack at the moment). AfC Sydney -- Andrew Frederick Cowie Technology strategy, managing change, establishing procedures, and executing successful upgrades to mission critical business infrastructure. http://www.operationaldynamics.com/ Sydney New York Toronto London |