Approved. Henry Minsky wrote: > Change 20091123-hqm-G by [email protected] on 2009-11-23 00:24:18 EST > in /Users/hqm/openlaszlo/trunk6 > for http://svn.openlaszlo.org/openlaszlo/trunk > > Summary: support mixins on instances > > New Features: > > Bugs Fixed: LPP-8602 Allow with="" on instances declarations > > Technical Reviewer: ptw > QA Reviewer: max > Doc Reviewer: (pending) > > Documentation: > > Release Notes: > > mixins are supported now on instances as well as classes, e.g., > > <mixin name="textmixin"> > <attribute name="foo" value="bar" type="text"/> > </mixin> > > <text name="mixinstance" with="textmixin"> > <attribute name="text" value="${this.foo}"/> > </text> > > Overview: > > > Details: > > > schema/lfc-undeclared.lzx: Moved the "with" atribute down from <class> to > <node> > beause instances can now have mixins > > ViewCompiler.java: add updateSchema method, so that instances with mixins will > call the ClassModel machinery to add the needed interstitial classes to the > app. > This is done by rewriting the instance as a <anonymous extends="tagclass"> > instance, > and then ClassModel and NodeModel have been modified to know how to deal with > these > 'class-like instances' > > Also removed call to the class inlining code that is no longer used in > the compiler. > > ViewSchema.java: add an explicit arg to say if we're defining a public class > or a > private (anonymous instance) one > > NodeModel.java: Make getParentClassModel know about 'anonymous' instance > calls > > Compiler.java: remove some of the class inlining code that has not worked in > forever > > DebugCompiler.java: remove class inlining code > > ClassModel.java: make the ClassModel constructor accept a <anonymous> tag > that has mixins, and build the > interstitial classes just like for a <class> that has mixins. > > Tests: > > test/lztest/lztest-mixins.lzx added to the "ant lztest" suite > > test/smoke/mixin-simple.lzx > > test/smoke/smokecheck.lzx > > testcase from bug (uncomment the commented out region) > > Files: > M test/lztest/rhino.txt > A test/lztest/lztest-mixins.lzx > A test/smoke/mixin-simple.lzx > M WEB-INF/lps/schema/lfc-undeclared.lzx > M WEB-INF/lps/server/src/org/openlaszlo/compiler/ViewCompiler.java > M WEB-INF/lps/server/src/org/openlaszlo/compiler/ToplevelCompiler.java > M WEB-INF/lps/server/src/org/openlaszlo/compiler/ViewSchema.java > M WEB-INF/lps/server/src/org/openlaszlo/compiler/NodeModel.java > M WEB-INF/lps/server/src/org/openlaszlo/compiler/Compiler.java > M WEB-INF/lps/server/src/org/openlaszlo/compiler/DebugCompiler.java > M WEB-INF/lps/server/src/org/openlaszlo/compiler/ClassModel.java > > Changeset: http://svn.openlaszlo.org/openlaszlo/patches/20091123-hqm-G.tar
-- Regards, Max Carlson OpenLaszlo.org _______________________________________________ Laszlo-reviews mailing list [email protected] http://www.openlaszlo.org/mailman/listinfo/laszlo-reviews
