views:

73

answers:

1

I have to write a plugin for Evolution and I'm studying the different possibilities. The documentation says that eplugin feature is independent from the language you choose but I've only seen Evolution plugins developed in plain C and a few in C#/Mono.

I suppose that It's not possible using Sun VM because of GTK. Am I wrong?

And, what about Java/Mono using IKVM? Is it possible?

Thanks in advance.

+1  A: 

I've dug myself part way through the Evolution Plugin documentation, and while they're a bit coy about it, I'm given to believe that their interface mechanisms are rather C-centric.

This means you could write plugins in Lua, Python, Perl, probably Ruby and many other languages that support C-style interfaces. There's a chance that you could do it from Java using the JNI (Java Native Interface) mechanism, though chances are you'd do a lot of type translating and data copying along the way.

Let's say it might be possible to do in Java if you really, really wanted to; but it would be painful. I wouldn't recommend it.

You might consider building a plugin in a more C compatible language and then let it do TCP/IP I/O over sockets with a Java app that presents the pretty GUI and does the heavy lifting.

Carl Smotricz
Thanks for the answer. I'm checking a evolution C# sample http://tirania.org/blog/archive/2007/Oct-04-1.html and I'll try to do the same using Java (IKVM). I think that It should work.
ktulur