[REVISED to use the naming scheme suggested by André and expanded to ensure all components that participate in apply/updateData protocol use the accept/presentValue path that will correctly convert values from/to string representations according to the type.]

Change 20081115-ptw-x by [EMAIL PROTECTED] on 2008-11-15 18:26:45 EST
    in /Users/ptw/OpenLaszlo/trunk
    for http://svn.openlaszlo.org/openlaszlo/trunk

Summary: Respond to review comments on r11780 and r11781

Bugs Fixed:
LPP-7339  Can't use LzNode#presentAttribute in a constraint (previous
fix broke DHTML color conversion)
LPP-7340  basevaluecomponent should have a 'type' so you know how to
accept/present it (previous fix broke updateData protocol)

Technical Reviewer: [EMAIL PROTECTED] (pending)
QA Reviewer: [EMAIL PROTECTED] (pending)

Details:
    LzUtils, PresentationTypes: move (incorrect) conversion of color
    value to string name from LzColorUtils.inttohex to
    ColorPresentationType.present

    LzNode: rename accept/presentValue to accept/presentTypeValue

    radio, simpletext, edittext, labeledinputtext, basecombobox,
    baseformitem: replace applyData/updateData override with
    acceptValue/getValue.  The base applyData/updateData methods use
    the latter.  Ensure that getValue overrides have correct
    dependencies.

    basecomponent:  Define base methods for accept/presentValue that
    operate on the text attribute of a basecomponent.  Make the base
    apply/updateData methods use accept/presentValue (which is how
    subclasses will normally specialize their behavior).

    baselist: Remove useless override

    baseslider: Use presentValue, not updateData to get the thumb
    label.  Make the default keystep one step of the slider's range,
    instead of 2 pixels of thumb movement (which made no sense
    whatsoever).

    basevaluecomponent: Add new API's accept/presentValue which can be
    used to set/retrieve the value as a string according to type.  Fix
    getValue dependencies.  Remove incorrect applyData/updateData and
    updateData dependencies method.  presentValue uses getValue to
    retrieve the value to be presented.  Correct presentValue
    dependencies method.

Tests:
    Andre's test case from LPP-7340, Lou's color example (revised to
    use 'presentValue' in place of 'updateData').

Files:
M      WEB-INF/lps/lfc/services/LzUtils.lzs
M      WEB-INF/lps/lfc/core/LzNode.lzs
M      WEB-INF/lps/lfc/core/PresentationTypes.lzs
M      lps/components/lz/radio.lzx
M      lps/components/lz/simpletext.lzx
M      lps/components/lz/edittext.lzx
M      lps/components/incubator/labeledinputtext.lzx
M      lps/components/base/basecomponent.lzx
M      lps/components/base/basecombobox.lzx
M      lps/components/base/baselist.lzx
M      lps/components/base/baseslider.lzx
M      lps/components/base/baseformitem.lzx
M      lps/components/base/basevaluecomponent.lzx

Changeset: http://svn.openlaszlo.org/openlaszlo/patches/20081115-ptw-x.tar

Reply via email to