On 9/14/16, 2:31 PM, "Harbs" <harbs.li...@gmail.com> wrote:
>Will this effect the CSS file generated? The JS-side outputs both a .css file and some data packed onto the application that is converted into data structures for calls to ValuesManager (via SimpleCSSValuesImpl). The .css file won't change, it needs to be standard CSS. I am proposing to change the data that is packed onto the application. >What do you mean by “hacking at runtime”? A goal is for MXML output to be data instead of code since you can alter data at runtime for testing purposes and in case you need to hack in a fix for something. Right now, the data is just a flat array of properties followed by values (a rough approximation is): [ "global", 3, "fontWeight", "normal", "fontSize", 10, "fontFamily", "Arial"]; This array says create the global CSS selector, and assign it 3 properties: fontWeight: normal, fontSize: 10, fontFamily: "Arial". Because it is an array, you can alter it before the ValuesImpl interprets it, swapping in mock objects or different values. The proposal is to change the data to (roughly): [ "global", function() { this.fontWeight = normal; this.fontSize = 10; this.fontFamily = "Arial"]; This is because I couldn't find a good way to generate the function at runtime and it is theoretically faster to just call the function and get the object back instead of iterating through the array. However, you can't hack the function at runtime, but you could replace it. Thanks, -Alex