PDA

View Full Version : ESRI ArcEngine 9.2 with Qt support



helcaraxe
29th August 2006, 09:20
Hello folks,

First of all, I'm perfectly the same "helcaraxe" as in qtforum.org, so hello to all who know me from there.

Now the question.

I have to deal with ArcEngine 9.1 at work, and I develop my stuff in Java at present because it was required to be platform independent.
On ESRI web site it says that ArcEngine 9.2 will have Qt widgets.

Now a colleague wants to integrate my frontend (which is written in Java using javax.swing GUI) in a Qt GUI application he builds with Qt (3.3.4 afaik). And the "now" is meant literally here. I already told him to wait for the 9.2 version and everything is fine...

Is it possible to integrate Java GUI components in a Qt widget? Something using the JNI probably? Or, to put the question more detailed, has any one of you already done something similar (especially with ESRI stuff)?

It is not neccessary to interact much - the interaction is done via TCP. I don't need access to mouse clicks, just resize events should be passed to the Java code somehow.
By the way the Java thing is a JFrame subclass.


I know I can basically find a way to do this in a JNI book - I already got one here; it's more the experience I'm asking for. Like how much effort would be neccessary to build something like that, and how good the results can be.

Thanks in advance so far.

I got one more question especially for the Trolltech guys.
Is there any interaction going on between Trolltech and ESRI? At least anything we may know about outside these companies?

So long,
Jan

e8johan
29th August 2006, 11:45
Have you looked at Jambi? http://doc.trolltech.com/qtjambi-1.0/qtjambi-index.html

helcaraxe
29th August 2006, 15:29
Hej e8johan,

Thanks for the quick hint.

After a quick look it seems to me that it is more like an implementation of Qt classes in Java.
And it is not available before Java 5.0, and (I should have mentioned it) ESRI comes with an own Java runtime which unfortunately turns out to be 1.4.something which already annoyed me a lot because of the missing Formatter class and some more things.

I'll probably have a closer look this weekend, but what I originally intended was to embed an already existing Java GUI application into an - say - QGLWidget in a Win32 executable and draw some funny stuff on a map which is painted to a JFrame object in Java...

Meanwhile, ESRI will provide Qt widgets before I have this running ;)

so long,
Jan

Chicken Blood Machine
29th August 2006, 17:42
Doesn't ESRI provide that stuff in C++/MFC or Active-X?

helcaraxe
30th August 2006, 07:56
Doesn't ESRI provide that stuff in C++/MFC or Active-X?

Yes, you could use all these fine "I only work on Windows and Windows is my Holy One" GUI elements XOR Gtk on Linux. Gtk on Windows doesn't work.
Still, this doesn't take me anywhere, because this is exactly what we do not want: to choose a platform.

Only Java fulfils that criterion so far, that's why I'd like to have a Qt GUI...

So long,
Jan

Chicken Blood Machine
30th August 2006, 17:22
Yes, you could use all these fine "I only work on Windows and Windows is my Holy One" GUI elements XOR Gtk on Linux. Gtk on Windows doesn't work.
Not sure what you are trying to say here.


Still, this doesn't take me anywhere, because this is exactly what we do not want: to choose a platform.

Only Java fulfils that criterion so far, that's why I'd like to have a Qt GUI...

Fair enough. I think using Java from within Qt is going to be particularly difficult as you have described it. The frameworks are incompatible. Even using Jambi, I don't think you will be able to mix Qt widgets with Swing or SWT controls (Trolltech can clarify this). Waiting for 9.2 seems to be the wisest option.


I got one more question especially for the Trolltech guys.
Is there any interaction going on between Trolltech and ESRI? At least anything we may know about outside these companies?


You'll be lucky if any of the Trolltech guys are reading this. You would be better sending this question directly to Trolltech support.

helcaraxe
30th August 2006, 19:31
[QUOTE=Chicken Blood Machine]Not sure what you are trying to say here.

Hej,

I was just annoyed why ESRI allows Gtk widgets - but only for Linux. There is a Gtk windows implementation. And Windows stuff is never ever compatible to anything.

It looks to me as if the normal developer just develops extensions to existing ArcView or whatever, mostly using VisualBasic embedded editor.

I don't know what they think about their customers, but already release 9.x and still no real independence shows that they are probably right ;)

Waiting for 9.2 and do it in Qt was what I suggested, so thanks for confirming me...

So long (and thanks for all the fish ;))
Jan

Chicken Blood Machine
30th August 2006, 19:55
When I used ESRI components (about 5-6 years ago), everything was Windows-only and you had to use either Win32, Active-X or VB.

I find it very encouraging that a premiere GIS solutions company is supporting Linux at all. The fact that they are using Qt (as well as Java) to do this is great! The tide is turning...

helcaraxe
30th August 2006, 20:58
Hej,

I didn't know it was that bad ... ;)

But if you look at the older Java implementations ...
I think that platform independent support from them is probably motivated by projects that want GIS functionality in web based applications, and the majority of the web servers are Linux, as far as I know.

But they are definitely one year too late for me.

So long,
Jan