[Laszlo-user] Question about applyConstraintMethod()
André Bargull
andre.bargull at udo.edu
Tue Nov 4 14:13:26 PST 2008
I've already converted all "applyConstraint" to "applyConstraintMethod"
for the queens-charts (at least in trunk).
> So, I'm working on bringing all the charting stuff up to speed so that
> we can finally get that checked in appropriately, and I have a bunch of
> instances of applyConstraint() that need to be changed. So what I did
> was, I took the functions and made methods out of them, but I'm not sure
> exactly what to feed into applyConstraintMethod() to get it to work the
> same way. For instance, part of my code block looks like:
>
> if(this.charttype == "bar"){
> if(this.drawaxis == 'x'){
> var f = function(ignore=null){
> this.setAttribute("x", this.barlink.x + (this.barlink.width / 2) -
> (this.width / 2)); }
> var d = [this.barlink, "x"];
> this.applyConstraint("x", f, d);
> var ff = function(ignore=null){
> this.setAttribute("y", this.barlink.y -
> this.height - 4);
> }
> var dd = [this.barlink, "y"];
> this.applyConstraint("y", ff, dd);
> if(this.fadein == true){
> this.fader.doStart();
> }
> }
>
> So what I did was, I made methods for these:
>
> <method name="constrainBarDrawXX" args="ignore=null">
> this.setAttribute('x', this.barlink.x + (this.barlink.width /
> 2) - (this.width / 2));
> </method>
> <method name="constrainBarDrawXY" args="ignore=null">
> this.setAttribute('y', this.barlink.y - this.height - 4);
> </method>
>
> ...and changed the script to:
>
> if(this.charttype == "bar"){
> if(this.drawaxis == 'x'){
> this.applyConstraintMethod("constrainBarDrawXX",
> [this.barlink, x, this, x]);
> this.applyConstraintMethod("constrainBarDrawXY",
> [this.barlink, y, this, y]);
> if(this.fadein == true){
> this.fader.doStart();
> }
>
> However, the labels now don't exhibit the same behavior as when they
> were using applyConstraint(). What am I doing wrong?
>
> Thanks!
> Josh
>
More information about the Laszlo-user
mailing list