Approved! Things to do (need additional Jira tasks):
We need to create a built-in way to accumulate style bindings during init, and then install them as a batch. I guess this is what you started on with the font spec. Perhaps the right optimization is to not call setFontAttrsFrom in the setters if the view is not inited yet, and then in the view's init method (after calling super.init) if there is a cssfontspect, call setFontAttrs... We might want to make some part of the Debug.explainStyleBindings mechanism permanent, so that you can introspect into your CSS style at run time (like you can ask for a div's style in DHTML). We might have to make __LZhasConstraint smarter about style constraints, to partially evaluate them (i.e., figure out if there _is_ a CSS style, but not apply it yet). I can take either or both of the last two. On 2009-10-23, at 10:24, Max Carlson wrote: > Change 20091023-maxcarlson-z by [email protected] on 2009-10-23 > 06:44:58 PDT > in /Users/maxcarlson/openlaszlo/trunk-clean > for http://svn.openlaszlo.org/openlaszlo/trunk > > Summary: First cut at adding style properties to view > > Bugs Fixed: LPP-8556 - Add default CSS style properties to <view> > (partial) > > Technical Reviewer: ptw > QA Reviewer: hminsky > > Details: LzNode - Ignore style constraints for test in > __LZhasConstraint() - this may prevent valid style constraints from > working :(. Add optional fifth argument to __LZstyleBindAttribute, > used to silence warnings where needed. Fix braino - send fallback > instead of styleValue in final clause. > > LzDefs - Add 'warn' argument which if set to false will prevent > debugger warnings for LzStyleConstraintExpr instances. > > LaszloView - Add default css configuration - commented out for now. > > Tests: > Uncomment these lines in LaszloView: > //attributes.width = new LzStyleConstraintExpr('width', 'width', > 'number', void(0), false) > //attributes.height = new LzStyleConstraintExpr('height', 'height', > 'number', void(0), false) > > And run this test: > <canvas height="400" debug="true"> > <simplelayout axis="x"/> > > <view bgcolor="red" x="100" y="200" name="baz"> > <view width="100" height="100" id="bar"/> > </view> > > <window x="400" name="winsize" resizable="true"> > <view bgcolor="green" x="100" y="200" name="bazwin"> > <setter name="width" args="w"> > //Debug.debug('width', w); > super.$lzc$set_width(w); > </setter> > <setter name="height" args="h"> > //Debug.debug('height', h); > super.$lzc$set_height(h); > </setter> > <view width="100" height="100" id="barwin"/> > </view> > </window> > </canvas> > > The window should size correctly, the debugger shows normally and > there are no debugger warnings. > > Files: > M WEB-INF/lps/lfc/core/LzNode.lzs > M WEB-INF/lps/lfc/core/LzDefs.lzs > M WEB-INF/lps/lfc/views/LaszloView.lzs > > Changeset: > http://svn.openlaszlo.org/openlaszlo/patches/20091023-maxcarlson-z.tar _______________________________________________ Laszlo-reviews mailing list [email protected] http://www.openlaszlo.org/mailman/listinfo/laszlo-reviews
