With the latest JSIL update, we have to update our custom implementations.
This is how it looks like right now:
JSIL.MakeClass($jsilcore.TypeRef("System.Object"), "Fusee.Engine.Font", true, [], function($interfaceBuilder) {
$ = $interfaceBuilder;
$.Field({ Static: false, Public: true }, "CharInfo", $jsilcore.TypeRef("System.Array", [$fuseeCommon.TypeRef("Fusee.Engine.CharInfoStruct")]), null);
// ...
$.Method({ Static: false, Public: true }, ".ctor",
new JSIL.MethodSignature(null, []),
function _ctor() {
// not implemented
}
);
$.Method({ Static: false, Public: true }, "get_Width",
new JSIL.MethodSignature($.Int32, []),
function get_Width() {
return this.Width;
}
);
// ...
$.ImplementInterfaces(
$fuseeCommon.TypeRef("Fusee.Engine.IFont")
);
return function(newThisType) { $thisType = newThisType; };
});
This is how it should look like:
(function Font$Members () {
var $, $thisType;
var $T00 = function () {
return ($T00 = JSIL.Memoize(System.Array.Of($asm01.Fusee.Engine.CharInfoStruct))) ();
};
// ...
function Font__ctor () {
};
function Font_get_Width () {
return this.Font$Width$value;
};
// ...
JSIL.MakeType({
BaseType: $asm05.TypeRef("System.Object"),
Name: "Fusee.Engine.Font",
IsPublic: true,
IsReferenceType: true,
MaximumConstructorArguments: 0,
}, function ($ib) {
$ = $ib;
$.Method({Static:false, Public:true }, ".ctor",
JSIL.MethodSignature.Void,
Font__ctor
);
$.Method({Static:false, Public:true , Virtual:true }, "get_Width",
JSIL.MethodSignature.Return($.Int32),
Font_get_Width
);
// ...
$.Property({Static:false, Public:true , Virtual:true }, "CharInfo", $jsilcore.TypeRef("System.Array", [$asm01.TypeRef("Fusee.Engine.CharInfoStruct")]));
// ...
$.ImplementInterfaces(
/* 0 */ $asm01.TypeRef("Fusee.Engine.IFont")
);
return function (newThisType) { $thisType = newThisType; };
});
})();
We have to fix this asap!