Without knowing anything about the history of the issue, and being a data binding/replicating idiot, here's what I would expect:
1) Nodes have a `visibility` attribute, which can be set to 'collapse' to cause data-bound nodes to disappear when the datapath for the node does not match any dataset elements. 2) A $path constraint is a datapath and a selector that calculates a value from the datanode that matches the path. So, I think my expectation is that for node's whose visibility is 'collapse', if a node's datapath matches no data nodes, then the node will not be visible. If the node's datapath does match a datanode, then the node will be visible. The actual data that is bound to the node is a result of the selector component of the $path, so it might still be null, even if there is a matching data node. [datacontrolsvisibility is an internal flag, which may be useful, or may just be muddying the waters.] On 2009-10-09, at 16:47, André Bargull wrote: > But this approach won't work well with constrained datapaths, because > always-constraints are installed after path-constraints (an > once-constrained datapath may be installed before or after the > path-constraint, because both are stored as '$inits' in LzNode). So if > the path-constraint set datacontrolsvisibility to false, a constrained > datapath won't hide a view even if there is no data. > > We're somehow in a bad situation because more users hit this issue > [1]. > So some users expect that things work like before r10279, while others > expect the opposite! I'm not quite sure how to tackle this problem.. > > > [1] http://forum.openlaszlo.org/showthread.php?t=13912 > > > On 10/8/2009 2:10 PM, Max Carlson wrote: >> Change 20091007-maxcarlson-O by [email protected] on 2009-10-07 >> 01:22:48 PDT >> in /Users/maxcarlson/openlaszlo/trunk-clean >> for http://svn.openlaszlo.org/openlaszlo/trunk >> >> Summary: UPDATED: Prevent $path expressions from setting views' >> visibility >> >> Bugs Fixed: LPP-290 - $path attributes can hide the instance/view >> they >> belong to, LPP-8229 - No text displayed for check box >> >> Technical Reviewer: [email protected] >> QA Reviewer: hminsky >> >> Details: LzNode - Ensure datapaths created by $path bindings have >> datacontrolsvisibility set to false. >> >> LzDatapath - Correct typo in comment >> >> Tests: Testcases from LPP-290, LPP-8229 and LPP-8529 all pass. >> >> Files: >> M WEB-INF/lps/lfc/core/LzNode.lzs >> M WEB-INF/lps/lfc/data/LzDatapath.lzs >> >> Changeset: >> http://svn.openlaszlo.org/openlaszlo/patches/20091007-maxcarlson- >> O.tar >> > _______________________________________________ > Laszlo-reviews mailing list > [email protected] > http://www.openlaszlo.org/mailman/listinfo/laszlo-reviews _______________________________________________ Laszlo-reviews mailing list [email protected] http://www.openlaszlo.org/mailman/listinfo/laszlo-reviews
