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

Reply via email to