Change ptw-20101104-S8x by [email protected] on 2010-11-04 14:04:07 EDT
    in /Users/ptw/OpenLaszlo/trunk-3
    for http://svn.openlaszlo.org/openlaszlo/trunk

Summary: Pass custom CSS property values as strings

Bugs Fixed: LPP-9490 CSS Parser should default to delivering unknown attributes 
as strings to be presentation-type parsed at runtime

Technical Reviewer: [email protected] (pending)
QA Reviewer: [email protected] (pending)

Release Notes:

    The CSS parser passes through most property values unchanged (but
    as strings, so they are valid Javascript). We only need a few
    special properties, e.g., the keyword `inherit` will be passed as
    a unique value, to distinguish from the string "inherit" (so if
    you wanted to specify the content of a node as the literal value
    "inherit", not have it inherit a value from it's parent). For
    backwards compatibility, color specifications are still
    canonicalized at compile-time and output them as hex numbers --
    this may go away in the future. If you want a color specification
    to come through unparsed, you can use `rgba(...,...,...,1)`,
    because that will _not_ be converted at runtime. Any values that
    appear as "arguments" to a function (e.g., url(), rect(),
    linear-gradient()) will be passed straight through.  The
    attribute's presentation type is invoked when the attribute is
    bound to a CSS property value; it's job is to convert that value
    to the appropriate internal representation.

Overview:
    Rewrote the compile-time CSS parser to do nearly no compile-time
    conversion of property values, and to pass any custom (unknown)
    values through as strings, so the runtime can use the presentation
    type system to parse arbitrary values.

Details:

    neighborhoodclasses, designerview:  Fixed up the specification of
    some attributes to be more modern for testing.

    LzNode: Use acceptAttribute to install style property values.

    CSSHandler:  Rewritten to do minimal compile-time processing.

Tests:

Files:
M       test/style/neighborhood/neighborhoodclasses.lzx
M       test/style/designerview.lzx
M       WEB-INF/lps/lfc/core/LzNode.lzs
M       WEB-INF/lps/server/src/org/openlaszlo/css/CSSHandler.java

Changeset: http://svn.openlaszlo.org/openlaszlo/patches/ptw-20101104-S8x.tar

Reply via email to