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

Joe Tennies rotund@fatnsoft.com
17 Jul 2002 00:18:09 -0500


By BSD tree I mean BSD classes.  I suppose it could remain seperate, but
I think Mono should support one main one that works across multiple
platforms and submit it to the ECMA
 
> > 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
> > > 
> > 
> 
> 
> 
> 
> _______________________________________________
> Mono-list maillist  -  Mono-list@ximian.com
> http://lists.ximian.com/mailman/listinfo/mono-list
>