> >>>>> 2/ in test 4, if you remove the initialize function from B and >>>>> overload >>>>> A, >>>>> the B constructor is still the previous A's constructor. >>>> >>>> Yes. To address this one I see no other solution than patching >>>> OpenLayers.Class. See the patch attached to this email, and my >>>> test_overload_5 test function. The Class.html tests continue to pass >>>> with my patch. >>>> >>> >>> this works in OL 2.11, not in OL 2.10 for me !-( >>> I guess there is something similar to do in OL 2.10 ? >> >> Your initial mail was about OpenLayers trunk/2.11 introducing >> regressions. Now the failing test that remains is OL 2.10-only, so OL >> trunk/2.11 works better than OL 2.10 for you. Yippee! :-) >> > > My initial mail was really about regression between 2.10 and 2.11 !-) > >> (Not sure it is worth "fixing" OL 2.10 for that.) >> > > Well, one of my test is versus the current release (2.10) and I am sure > there are users that will migrate slower than us (I mean OL and IGNF) ... > > I do think it is worth fixing it ... at least to prove there is no > regression !-D >
I've got somethinf working, hence ugly :-) OpenLayers.overload= function(P,F) { var pProtoInitialize= typeof(F.initialize)=="function"? P.prototype.initialize : null; OpenLayers.Util.extend(P.prototype, F); if (pProtoInitialize!==null) { // override sub-class having same constructor: for (var pn in P) { if (typeof(P[pn])=='function' && P[pn].prototype.initialize===pProtoInitialize) { var f= {}; eval('f= {"initialize":'+F.initialize.toString()+'}'); P[pn]= OpenLayers.overload(P[pn],f); } } } return P; }; I had to use the eval() function to make it working, but don't know why ? Regards, didier >> -- >> Eric Lemoine >> >> Camptocamp France SAS >> Savoie Technolac, BP 352 >> 73377 Le Bourget du Lac, Cedex >> >> Tel : 00 33 4 79 44 44 96 >> Mail : eric.lemo...@camptocamp.com >> http://www.camptocamp.com >> > > > -- > RICHARD Didier - Chef du pôle technique du Géoportail > 2/4, avenue Pasteur - 94165 Saint Mandé Cedex > Tél : +33 (0) 1 43 98 83 23 > _______________________________________________ > Dev mailing list > d...@lists.osgeo.org > http://lists.osgeo.org/mailman/listinfo/openlayers-dev > -- RICHARD Didier - Chef du pôle technique du Géoportail 2/4, avenue Pasteur - 94165 Saint Mandé Cedex Tél : +33 (0) 1 43 98 83 23 _______________________________________________ Dev mailing list d...@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/openlayers-dev