[Fwd: Re: [Mono-list] Fwd: Possible replacement for Windows.Forms]

Joe Tennies rotund@fatnsoft.com
16 Jul 2002 23:13:56 -0500


Grrr... always send from the wrong account.
> 
> This is why I think reimplementing wxWindows would be better.  It would
> also not add additional requirements.  It would compile against
> something the user should have (GTK+, Xlib, Motif, Aqua, Carbon, etc.) 
> Of course, this runs into the problem of having to maintain the code
> changes wxWindows has.
> 
> I'm just waiting for someone to say adding LGPL classes would be okay in
> the BSD tree.
> 
> What do other people think about this approach?  I'd like to have a
> cross-platform GUI, but I want to know what people think first. 
> Especially if I'll have to go through all this stuff w/ making a C# dll
> that platform invokes an externally C dll and internally C++ dll that
> calls C++ dll (can anyone else say icky)
> 
> On Tue, 2002-07-16 at 22:05, murban wrote:
> > Have you looked at some of the other bindings that call C++ from C#? One 
> > example is Qt#. It's a work in progress, but the basic concepts of using a 
> > C++ based toolkit from C# are working. There are many other examples, such as 
> > WxPython and QtJava.
> > 
> > The bindings that I have looked at use a two-level approach. The first level 
> > is a set of C functions. There are one or more C functions that perform 'new 
> > WhateverObject' and then return the result, and there are other C functions 
> > that simply call the C++ function. Thiis lower level is compiled #extern "C" 
> > so that name mangling is not performed. The second level consists of a set of 
> > C# methods that call the C functions. In the case of Qt#, the C functions are 
> > provided by another library QtC.
> > 
> > I believe it is possible to minimize (probably not eliminate) the C layer, but 
> > the C functions that perform the 'new' for C++ objects are difficult to 
> > eliminate. The other two complications of calling C++ directly are that the 
> > compiler does name-mangling on the C++ methods, and the fact that virtual 
> > methods only appear as methods on the base class.
> > 
> > > I have been looking at wxWindows for quite some time.  I don't
> > > think I personally want to deal with importing C++ classes and looking
> > > at them as structs.  This seems very, very painful.  Unless someone can
> > > explain an easier way to platform invoke these, I don't think this will
> > > work.
> > 
> > _______________________________________________
> > Mono-list maillist  -  Mono-list@ximian.com
> > http://lists.ximian.com/mailman/listinfo/mono-list
> > 
>