I suspect that getAttributeRelative is working fine, but it is too complex for the constraint system to figure out, cf.:
http://www.openlaszlo.org/lps-latest/docs/guide/ constraints.html#d0e13313 For performance reasons also, you might want to rewrite your code and simply have a handler in your blue view to update its position and dimensions when the canvas changes size. Something like: <handler name="onwidth" reference="canvas" method="updateDimensions" /> <handler name="onheight" reference="canvas" method="updateDimensions" /> <method name="updateDimensions"> width=whiteSquare.getAttributeRelative('width',canvas); height=whiteSquare.getAttributeRelative('height',canvas); x=whiteSquare.getAttributeRelative('x',canvas); y=whiteSquare.getAttributeRelative('y',canvas)}" </method> This will result in many fewer dependencies being generated and achieve the same effect much more efficiently. On 2006-06-18, at 20:23 EDT, Mark Engelberg wrote: > getAttributeRelative does not seem to work for attributes 'x' and 'y' > for views nested two deep inside of something stretchy. > > Consider this example: > > <canvas height="100%" width="100%"> > <view bgcolor="red" height="${parent.height}" width="${parent.width}" > stretches="both"> > <view bgcolor="yellow" width="25" height="25" x="25" y="25"> > <view id="whiteSquare" bgcolor="white" width="20" > height="20" > x="5" y="5"/> > </view> > </view> > <view bgcolor="blue" > width="${whiteSquare.getAttributeRelative('width',canvas)}" > height="${whiteSquare.getAttributeRelative('height',canvas)}" > x="${whiteSquare.getAttributeRelative('x',canvas)}" > y="${whiteSquare.getAttributeRelative('y',canvas)}"/> > </canvas> > > If my understanding of getAttributeRelative is correct, the blue > square should perfectly cover the white square as you resize the > canvas. But it does not. The width and height properly match, but > the x and y do not. > > When the white square is nested only one deep (i.e., remove the yellow > square that it is inside of in the above example), it works fine. > > Is this a Laszlo bug, or am I doing something wrong? > > Thanks, > > Mark > _______________________________________________ > Laszlo-user mailing list > [email protected] > http://www.openlaszlo.org/mailman/listinfo/laszlo-user _______________________________________________ Laszlo-user mailing list [email protected] http://www.openlaszlo.org/mailman/listinfo/laszlo-user
