On May 29, 2007, at 11:26 AM, P T Withington wrote:

On 2007-05-29, at 13:21 EDT, Benjamin Shine wrote:


On May 29, 2007, at 4:47 AM, P T Withington wrote:

This code:
        // A style does not override an explicit attribute
        if (! (k in initialArgs)) {

should keep any constraint from being applied. initialArgs should be all the attributes of the instance, which should include bgcolor, so no constraint should be applied. (The stylemap arg in applyStyleMap is _all_ of the $style constraints of the instance and all of its superclasses.)

When I get to that line, initialArgs only has the id for sb2, not bgcolor. That seems to mean initialArgs only has instance arguments, not subclass arguments.

How did you determine that? You have to be careful, because I think this arg is an inhertedHash, and the Debugger may only print out the 'immediate' properties of the hash, not all of them. That's essentially a bug in the debugger -- stemming from an attempt to be concise, but perhaps that is too concise.

Fascinating, Captain! I determined it by doing if (this.id == "sb2") Debug.format("%w\n", initialArgs); but I didn't know about the conciseness bug. Data structures are fun!

(also it's great that the LFC builds in 25 seconds now.)


Or, maybe there really is a bug here. I can look at this more in a bit, but right now I have broken legal's and Henry is waiting on me...

No worries, there is plenty for me to do with CSS without this; this is just a corner case.



Benjamin Shine
Software Engineer, Open Laszlo / Laszlo Systems
[EMAIL PROTECTED]



Reply via email to