GtkSharp/generator
Andres G. Aragoneses 9ff7ec8b2c glib: install interfaces earlier, override properties in class_init
GObject upstream has started disabling support for installing interfaces
in GTypes after they have already been initialized (class_init) [1], so
we need to add GInterfaces a bit earlier (*before* class_init starts).

As GLib.Object.OverrideProperty() cannot to be called before class_init
(because it receives a GObjectClass, not a GType) or after (because
otherwise class_init would complain about properties of an interface not
being defined), then we need to call it during class_init.

[1] http://bugzilla.gnome.org/687659

A good side-effect of this fix is that we no longer use the hacky uint
field 'idx' to track the properties count for each class; now it gets
moved to the ClassInitializer class, and thus can be non-static, which
makes a bit more sense (we leave the old OverrideProperty overload for
backwards compatibility).

Simplest way to test this is launching the sample/treemodeldemo.exe and
sample/custom-scrollable.exe in Ubuntu 13.04 beta (which has GLib 2.36).
Fixes https://bugzilla.xamarin.com/show_bug.cgi?id=11510
2013-04-07 07:51:30 +01:00
..
.gitignore Hush versioned scripts generally 2011-04-06 10:53:53 -05:00
AliasGen.cs generator: Convert all .cs files to Unix line endings 2012-11-03 15:20:06 +01:00
ArrayParameter.cs generator: Switch a lot of collections to their generic counterpart 2012-11-04 16:58:49 +01:00
BoxedGen.cs generator: Refactor the member hashes in ClassBase 2012-11-04 17:26:26 +01:00
ByRefGen.cs generator: Convert all .cs files to Unix line endings 2012-11-03 15:20:06 +01:00
CallbackGen.cs Fix TextBufferSerializeFunc signature 2011-04-28 18:38:07 -05:00
ChildProperty.cs generator: Convert all .cs files to Unix line endings 2012-11-03 15:20:06 +01:00
ClassBase.cs generator: Refactor the member hashes in ClassBase 2012-11-04 17:26:26 +01:00
ClassField.cs Restructure log warnings in validation. 2011-02-20 12:11:08 -06:00
ClassGen.cs generator: Convert all .cs files to Unix line endings 2012-11-03 15:20:06 +01:00
CodeGenerator.cs generator: Add option to validate GAPI XML against an XSD schema 2013-02-23 13:41:50 +01:00
ConstFilenameGen.cs generator: Convert all .cs files to Unix line endings 2012-11-03 15:20:06 +01:00
ConstStringGen.cs generator: Convert all .cs files to Unix line endings 2012-11-03 15:20:06 +01:00
Ctor.cs generator: Use List<T> in generated constructors 2012-11-04 16:58:49 +01:00
DefaultSignalHandler.cs 2009-04-13 Christian Hoff <christian_hoff@gmx.net> 2009-04-13 17:44:48 +00:00
DESIGN generator: Update the documentation in generator/DESIGN 2012-11-15 19:31:28 +01:00
EnumGen.cs generator: Switch a lot of collections to their generic counterpart 2012-11-04 16:58:49 +01:00
FieldBase.cs generator: Properly handle boolean attributes when parsing the XML 2012-10-21 18:22:13 +02:00
gapi3-codegen.in 2009-07-24 Christian Hoff <christian_hoff@gmx.net> 2009-07-24 05:19:17 +00:00
GenBase.cs generator: Convert all .cs files to Unix line endings 2012-11-03 15:20:06 +01:00
GenerationInfo.cs generator: Convert all .cs files to Unix line endings 2012-11-03 15:20:06 +01:00
generator.csproj generator: Improve handling of command-line parameters 2012-11-25 15:05:17 +01:00
GObjectVM.cs generator: Fix misleading warning for callbacks in virtual methods 2012-11-15 15:06:07 +01:00
HandleBase.cs Implement Ownable Generatable type. 2011-04-21 18:04:47 -05:00
IAccessor.cs 2005-07-02 Mike Kestner <mkestner@novell.com> 2005-07-02 15:23:27 +00:00
IGeneratable.cs generator: Convert all .cs files to Unix line endings 2012-11-03 15:20:06 +01:00
IManualMarshaler.cs generator: Convert all .cs files to Unix line endings 2012-11-03 15:20:06 +01:00
InterfaceGen.cs glib: install interfaces earlier, override properties in class_init 2013-04-07 07:51:30 +01:00
InterfaceVM.cs Restructure log warnings in validation. 2011-02-20 12:11:08 -06:00
IOwnable.cs Implement Ownable Generatable type. 2011-04-21 18:04:47 -05:00
LogWriter.cs Add missing file. 2011-02-21 11:19:10 -06:00
LPGen.cs generator: Convert all .cs files to Unix line endings 2012-11-03 15:20:06 +01:00
LPUGen.cs generator: Convert all .cs files to Unix line endings 2012-11-03 15:20:06 +01:00
Makefile.am generator: Improve handling of command-line parameters 2012-11-25 15:05:17 +01:00
ManagedCallString.cs generator: Rework data structures used by ManagedCallString 2012-11-04 16:58:49 +01:00
ManualGen.cs generator: Convert all .cs files to Unix line endings 2012-11-03 15:20:06 +01:00
MarshalGen.cs 2009-04-13 Christian Hoff <christian_hoff@gmx.net> 2009-04-13 17:44:48 +00:00
Method.cs generator: Convert all .cs files to Unix line endings 2012-11-03 15:20:06 +01:00
MethodBase.cs generator: Convert all .cs files to Unix line endings 2012-11-03 15:20:06 +01:00
MethodBody.cs generator: Convert all .cs files to Unix line endings 2012-11-03 15:20:06 +01:00
ObjectBase.cs generator: Refactor the member hashes in ClassBase 2012-11-04 17:26:26 +01:00
ObjectField.cs generator: Properly handle boolean attributes when parsing the XML 2012-10-21 18:22:13 +02:00
ObjectGen.cs generator: Use a Dictionary to hold the class structs cache 2012-11-04 16:58:49 +01:00
OpaqueGen.cs generator: Refactor the member hashes in ClassBase 2012-11-04 17:26:26 +01:00
Options.cs generator: Improve handling of command-line parameters 2012-11-25 15:05:17 +01:00
OwnableGen.cs generator: Convert all .cs files to Unix line endings 2012-11-03 15:20:06 +01:00
Parameter.cs generator: Move some classes from Parameters.cs into their own file 2012-11-03 15:46:06 +01:00
Parameters.cs generator: Switch a lot of collections to their generic counterpart 2012-11-04 16:58:49 +01:00
Parser.cs generator: Add option to validate GAPI XML against an XSD schema 2013-02-23 13:41:50 +01:00
Property.cs generator: Convert all .cs files to Unix line endings 2012-11-03 15:20:06 +01:00
PropertyBase.cs generator: Properly handle boolean attributes when parsing the XML 2012-10-21 18:22:13 +02:00
ReturnValue.cs generator: Convert all .cs files to Unix line endings 2012-11-03 15:20:06 +01:00
Signal.cs generator: Convert all .cs files to Unix line endings 2012-11-03 15:20:06 +01:00
Signature.cs generator: Switch a lot of collections to their generic counterpart 2012-11-04 16:58:49 +01:00
SimpleBase.cs generator: Convert all .cs files to Unix line endings 2012-11-03 15:20:06 +01:00
SimpleGen.cs generator: Convert all .cs files to Unix line endings 2012-11-03 15:20:06 +01:00
Statistics.cs generator: Convert all .cs files to Unix line endings 2012-11-03 15:20:06 +01:00
StructBase.cs generator: Refactor the member hashes in ClassBase 2012-11-04 17:26:26 +01:00
StructField.cs generator: Fix compilation warnings 2012-10-21 18:22:13 +02:00
StructGen.cs generator: Convert all .cs files to Unix line endings 2012-11-03 15:20:06 +01:00
SymbolTable.cs generator: Switch a lot of collections to their generic counterpart 2012-11-04 16:58:49 +01:00
VirtualMethod.cs Restructure log warnings in validation. 2011-02-20 12:11:08 -06:00
VMSignature.cs generator: Switch a lot of collections to their generic counterpart 2012-11-04 16:58:49 +01:00
XmlElementExtensions.cs generator: Add a XmlElement.GetAttributeAsBoolean extension method 2012-10-21 18:21:54 +02:00