Re: Bonobo and Mono C#
Michael Meeks <[email protected]> 04 Aug 2003 11:14:49 +0100
| Newsgroups | gmane.comp.gnome.components |
|---|---|
| Organization | Ximian. |
| Message-ID | <[email protected]> |
Hi Mikkel, On Sat, 2003-08-02 at 20:20, Mikkel Kruse Johnsen wrote: > I have been working on wrapping Bonobo in C# and have simple embedding > of Controls into my Mono program working. Sounds nice. > But a quick talk with Migual, made me realize that a wrapped Bonobo is > not a good solution because ORBit is working behind the scenes. So > making a Component with a self defined interface will be difficult > because C stubs has to be defined and then delegates have to be made > into the C# code. Adding a interface will also has to be done with > "bonobo_object_add_interface" instead of simple inherit from the > interface. Right; however with BonoboObjectForeign in the latest libbonobo - we get over this problem for the python binding. I think it's prolly best to look at the really nice python binding before going to far with this - to copy what they do; although python has the advantage of being very late-bound that C# doesn't. > So Im basically looking at rewriting Bonobo in C# using > Remoting.Corba, is there anyone who has been thinking about this, > started on it or has some good ideas or want to help ? I wouldn't re-write all of Bonobo - I would use BonoboObjectForeign; and I would focus on the CORBA binding first - particularly because this can be quite a sweet way to implement interfaces for code that can be used by any Java runtime as well as Mono. I would however focus on the in-proc CORBA bridge - best exemplified by Python; (code in Gnome CVS, module 'gnome-python/pyorbit': 5500 lines of a ~complete CORBA binding with very fast, nice in-proc C <-> Python <-> Mono ;-> bindings). Also, orbit c++ (Gnome CVS module 'orbitcpp') has an IDL compiler plugin that generated C++ stubs/skels for C++ - you'd want to write a backend for Mono that could do that too I think. > What about you Michael are you thinking about a Bonobo C# > implementation or is C# not your thing :-) I love C#, I'll love it more when there is a stable Gtk# and we can reliably write/deploy/maintain C# components for Gnome :-) I look forward to that being the case. I'm most happy to help hold your hand on this if you are willing to put the work in though - grab me on irc.gimp.org #michael, in GMT timezone if you need more help. Regards, Michael. -- [email protected] <><, Pseudo Engineer, itinerant idiot