[Kde-bindings] Qyoto ARGB windows using C++ QApplication hack: crashes

Richard Dale rdale at foton.es
Sun Mar 2 10:03:41 UTC 2008


On Saturday 01 March 2008 23:49:56 Arno Rehn wrote:
> > That's good news. I read in one of your commits about generating a lot of
> > partial classes for kde/kimono, and I remembered adding support for
> > generating nested classes in the same c# source file, and I wondered if
> > we were moving in different directions.
>
> Oh, I forgot to mention that: I changed kalyptus to make every class
> partial, not only those that are explicitly listed. This makes it easier to
> have even the nested classes in a seperate file. The partial classes don't
> create problems so it should be ok.
Well if it was a good idea for every class to be open there wouldn't be a need 
for the 'partial' keyword in C#. All classes in Ruby, Objective-C and other 
languages are open and so this isn't unreasonable, but it seems to be going 
against the 'spirit of C# design' to me and I would prefer we only had 
partial classes when we needed them.

> Originally I wanted C++ namespaces to be converted to C# partial classes,
> too, so that the C# API would more resemble the C++ one (e.g. that you
> could write Kimono.KIO.SomeMethod() ), but that lead to the gmcs crash we
> talked about a few weeks ago. Now there is an extra class for the namespace
> methods if there are any. So you have to write
> Kimono.KIO.KIONamespace.SomeMethod() if you want to access a method that's
> in the original C++ KIO namespace. This 'new' naming scheme is not applied
> to the Qt classes to keep the old API and old code working.
I was going to have a KIO class with the other classes nested within it. Then 
the C++ standalone methods in the KIO namespace would become C# methods in 
the KIO class. Are you saying that scheme didn't work, or were you trying KIO 
as a C# namespace?

If we had to have the above scheme I would prefer 
Kimono.KIO.Namespace.SomeMethod() to Kimono.KIO.KIONamespace.SomeMethod().

-- Richard




More information about the Kde-bindings mailing list